页面自动化——知识小点

1.驱动放在C:\Users\<当前用户名>\AppData\Local\Programs\Python\Python38 python安装路径下

#chromedriver驱动获取地址http://chromedriver.storage.googleapis.com/index.html

2.切换窗口、切换frame、切换alert

#切换窗口,获取窗口名字
new_window=driver.window_handles[-1]
#switch_to_window方法过时
driver.switch_to.window(new_window)

#切换frame
driver.switch_to.frame("mainFrame")

#切换alert
textasert=driver.switch_to.alert.text
driver.switch_to.alert.accept()

3.运行javascript

#运行javascript,删除元素readonly属性
script='document.getElementById("date").removeAttribute("readonly")'
driver.execute_script(script)

4.submit()提交表单

driver.find_element_by_id("username").send_keys("admin")
driver.find_element_by_id("password").send_keys("123456")
#只能用于form表单,当submit按钮定位困难时可以submit方法提交
#提交一个元素即是提交整个表单
driver.find_element_by_id("password").submit()

5.高级元素操作

from selenium.webdriver import ActionChains
#高级元素操作
#双击
ActionChains(driver).double_click(driver.find_element_by_id("7")).perform()

6.下拉框选择

from selenium.webdriver.support.select import Select
brand=driver.find_element_by_name("brand_id")
Select(brand).select_by_value("1")

7.上传文件

#元素invisible,任然可以点击send_keys
driver.find_element_by_name("file").send_keys("d:/1.png")

8.css_selector方法

#css_selector
#标签直接使用,class前面加.使用,id前面加#使用,元素属性唯一加[]使用
#>表示父子关系,空格表示祖先元素和子孙元素关系
driver.find_element_by_css_selector("#filePicker label").click()
driver.find_element_by_css_selector(".uploadBtn.state-finish.state-ready").click()
driver.find_element_by_css_selector('[value="1"]').click()
#父元素class_name,子元素取链接的第一个
driver.find_element_by_css_selector('.site-nav-right.fr > a:nth-child(1)')

9.显示等待

from selenium.webdriver.support import expected_conditions
from selenium.webdriver.support.wait import WebDriverWait
WebDriverWait(driver,3).until(expected_conditions.alert_is_present())

10.获取页面信息

#获取当前页面标题
self.driver.title
#获取当前url
self.driver.current_url
#获取元素text
result=self.driver.find_element_by_css_selector('.site-nav-right.fr > a:nth-child(1)').text
print(result)
#获取元素value属性值
search=self.driver.find_element_by_class_name('btn1').get_attribute('value')
print(search)

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值