侧边栏壁纸
  • 累计撰写 84 篇文章
  • 累计创建 35 个标签
  • 累计收到 1 条评论

目 录CONTENT

Selenium+Python元素定位方法

天明
2023-10-25 / 0 评论 / 0 点赞 / 31 阅读 / 2491 字 / 正在检测是否收录...

元素定位

一、id定位

driver.find_element_by_id("txtUaserName").send_keys("容音@lily")

二、name定位

driver.find_element_by_name("username").send_keys("容音@lily")

三、class定位

driver.find_element_by_class_name("")

四、tag定位

driver.find_element_by_tag_name("input")

五、link定位

driver.find_element_by_link_text("忘记密码").click()

六、partial link定位

driver.find_element_by_partial_link_text("忘记").click()

七、XPath定位

1、绝对路径定位
···
driver.find_element_by_xpath("/html/body/div/div[2]/div[1]/div[3]/div/button").click()
···

2、利用元素属性定位

driver.find_element_by_xpath("//input[@id='txtUaserName']").send_keys("容音@lily")

3、Xpath元素属性定位

driver.find_element_by_xpath("//input[@type='button']").click()

//表示当前页面某个目录下,input表示定位元素的标签名, [@id='txtUaserName']表示当前元素的ID值等于txtUaserName'

3、层级与属性结合

如果元素属性没有可利用的属性值,则可以查找上一级属性

#xpath层级与属性结合

driver.find_element_by_xpath("//p[@class='ng-scope']/input").send_keys("容音@lily")

4、使用逻辑运算符

使用逻辑运算符连接多个属性来查找元素

driver.find_element_by_xpath("//input[@id='txtUaserName'and @name='username']").send_keys("容音@lily")

八、CSS定位

1、class属性定位

2、id属性定位

模拟键盘事件(回车、删除、刷新等

键值解释
send_keys(Keys.BACK_SPACE)删除键BackSpace
send_keys(Keys.SPACE)空格键Space
send_keys(Keys.TAB)制表键Tab
send_keys(Keys.ESPACE)回退键Esc
send_keys(Keys.ENTER)回车键Enter
send_keys(Keys.CONTROL,‘a’)全选Ctrl+A
send_keys(Keys.CONTROL,‘c’)复制CTRL+C
send_keys(Keys.CONTROL,‘x’)剪切CTRL+X
send_keys(Keys.CONTROL,‘v’)粘贴Ctrl+V
send_keys(Keys.F1)键盘F1
send_keys(Keys.F12)键盘F12

问题:如果遇到以下错误,是没有导入Keys导致的
from selenium.webdriver.common.keys import Keys

0

评论区