selenium(2)

一、clear清空

import time
from selenium import webdriver
import time as t
from selenium.webdriver.common.by import By
先导入如上

driver=webdriver.Chrome()
driver.get('http://www.baidu.com')
# 把输入框定义一个变量,进行输入和清空
so=driver.find_element(By.ID,"kw")
so.send_keys("异常")
t.sleep(3)
so.clear()
t.sleep(3)
driver.quit()

 

 

 二、get_attribute():获取元素属性的值

driver=webdriver.Chrome()
driver.get('http://www.baidu.com')
so=driver.find_element(By.ID,"kw")
so.send_keys("admin")
time.sleep(3)
print(so.get_property("张学友"))
t.sleep(3)
driver.quit()

 

 

 

 

 三、is_enabled:是否可以编辑

可以编辑返回True 不可以返回false

driver=webdriver.Chrome()
driver.get('http://www.baidu.com')
so=driver.find_element(By.ID,"kw")
print(so.is_enabled())
driver.quit()

 

 

 四、is_selected:判断是否勾选

先定位到元素,定义为一个变量,再判断

driver=webdriver.Chrome()
driver.get('https://mail.sina.com.cn/')
# 新浪邮箱自动登录
a=driver.find_element(By.ID,"store1")
print("验证是否勾选:",a.is_selected())
t.sleep(2)
a.click()
t.sleep(3)
print("验证是否勾选:",a.is_selected())
driver.quit()

 

 

 五、is_displayed 判断是否可见

driver=webdriver.Chrome()
driver.get("http://www.baidu.com")
aboutbaidu=driver.find_element(By.XPATH,'//*[@id="bottom_layer"]/div/p[1]/a')
print("百度是否可见:",aboutbaidu.is_displayed())
t.sleep(3)
driver.quit()

 

 

 六、select 类

1.1 下拉框

1.先导入Select类          

from selenium.webdriver.support.select import Select

 

2.定位到下拉框的元素属性        下拉框元素=

3.然后对Select类进行实例化     

4.使用Select类进行实例化后的对象调用该类里面的方法 

from selenium.webdriver.support.select import Selectdriver=webdriver.Chrome() 先导入Select
driver.maximize_window()
driver.get("file:///D:/code/testdev/ui%E8%87%AA%E5%8A%A8%E5%8C%96/select.html")

selectID=driver.find_element(By.ID,"name")
select=Select(selectID)
t.sleep(3)
# 按照索引
select.select_by_index(1)

# 按照value
select.select_by_value("python")

# 按照文本
select.select_by_visible_text("python语言")
t.sleep(2)
driver.quit()

 

 

 

 

 

Alert

弹出框的操作一般是:先对弹出框点击 ,然后使用方法来点击接受或者拒绝

Alter方法:

text:获取弹出框的文本信息

accept:是接受Confirm弹出框

dismiss:是拒绝接受Confirm弹出框

send_keys:是在Prompt消息对话框里面输入想要输入的内容

1.1 警告框

.switch_to.alert.text

 

from selenium import webdriver
from selenium.webdriver.common.alert import Alert    (Alert可导入可不导入)

driver=webdriver.Chrome()
driver.get("file:///D:/code/testdev/ui%E8%87%AA%E5%8A%A8%E5%8C%96/%E8%AD%A6%E5%91%8A%E6%A1%86.html")
print(driver.switch_to.alert.text)
driver.quit()

 

 

 

1.2 弹出框

driver.switch_to.alert.accept() 确定

driver.switch_to.alert.dismiss() 取消

driver=webdriver.Chrome()
driver.maximize_window()
driver.get("file:///D:/code/testdev/ui%E8%87%AA%E5%8A%A8%E5%8C%96/%E7%A1%AE%E5%AE%9A%E6%B6%88%E6%81%AF-%E5%BC%B9%E5%87%BA%E6%A1%86.html")
driver.find_element(By.XPATH,"/html/body/center/input").click()
t.sleep(3)
# 点击确定操作
driver.switch_to.alert.accept()
t.sleep(3)
# 页面进行刷新
driver.refresh()
driver.find_element(By.XPATH,"/html/body/center/input").click()
t.sleep(3)
# 点击取消操作
driver.switch_to.alert.dismiss()
t.sleep(2)
driver.quit()

 

 

 1.3 对话框

driver=webdriver.Chrome()
driver.maximize_window()
driver.get("file:///D:/code/testdev/ui%E8%87%AA%E5%8A%A8%E5%8C%96/%E6%B6%88%E6%81%AF%E5%AF%B9%E8%AF%9D%E6%A1%86.html")
t.sleep(2)
# 点击按钮
driver.find_element(By.XPATH,"/html/body/center/input").click()
t.sleep(2)
# 输入内容
driver.switch_to.alert.send_keys("该回家看了")
t.sleep(2)
# 点击确定
driver.switch_to.alert.accept()
t.sleep(2)
# 刷新
driver.refresh()
t.sleep(2)
driver.find_element(By.XPATH,"/html/body/center/input").click()
t.sleep(2)
driver.switch_to.alert.send_keys("该回家看了")
t.sleep(2)
# 取消
driver.switch_to.alert.dismiss()
t.sleep(2)
driver.quit()

 

 

 

七、鼠标事件

1.1 悬浮操作(百度设置)

类实例化对象.move_to_element(元素).perform()  

from selenium.webdriver.common.action_chains import ActionChains (导入ActionChains)
driver=webdriver.Chrome()
driver.maximize_window()
driver.get("http://www.baidu.com")
# 鼠标事件的类进行实例化
action=ActionChains(driver=driver)
t.sleep(3)
# 要定位的元素属性的对象
setting=driver.find_element(By.XPATH,'//*[@id="s-usersetting-top"]')
# 把鼠标移动到”设置“
action.move_to_element(setting).perform()
t.sleep(3)
driver.quit()

 

 

 1.2 悬浮设置(百度设置搜索)

driver=webdriver.Chrome()
driver.maximize_window()
driver.get("http://www.baidu.com")
# 鼠标事件的类进行实例化
action=ActionChains(driver=driver)
t.sleep(3)
# 要定位的元素属性的对象
'''//*[@id="s-user-setting-menu"]/div/a[1]'''
setting=driver.find_element(By.XPATH,'//*[@id="s-usersetting-top"]')
# 把鼠标移动到”设置“
action.move_to_element(setting).perform()
t.sleep(3)
# 点击搜索设置
driver.find_element(By.XPATH,'//*[@id="s-user-setting-menu"]/div/a[1]').click()
t.sleep(2)
# 点击关闭
driver.find_element(By.XPATH,'//*[@id="general"]/form/div/ul/li[4]/span[2]/span[2]').click()
t.sleep(2)
# 点击保存设置
driver.find_element(By.XPATH,'//*[@id="se-setting-7"]/a[2]').click()
t.sleep(2)
text=driver.switch_to.text
assert text=="已经记录下您的使用偏好"
driver.quit()

 

 

 

 

posted @ 2022-06-28 19:13  Yvonne_26J  阅读(29)  评论(0)    收藏  举报