python的selenium的用法整理

selenium3定位元素(包括父子,兄弟)及常见操作

PHPer 2024-03-19 213 0 0

selenium定位元素(包括父子,兄弟)及常见操作_selenium定位父元素-CSDN博客


文章目录

selenium 定位元素

  • id定位:find_element_by_id()
  • name定位:find_element_by_name()
  • class定位:find_element_by_class_name()
  • link定位:find_element_by_link_text()
  • partial link定位:find_element_by_partial_link_text()
  • tag定位:find_element_by_tag_name()
  • xpath定位:find_element_by_xpath()
  • css定位:find_element_by_css_selector()
#-----------------------------------------------------------------------
# 通过元素id定位
#-----------------------------------------------------------------------
driver.find_element_by_id("userid")

#-----------------------------------------------------------------------
# 通过class_name定位
#-----------------------------------------------------------------------
# 通过class_name定位一个元素
driver.find_element_by_class_name("userclass")

# 通过class_name定位一批元素,返回结果为数组,下标从0开始
driver.find_elements_by_class_name("userclass")
driver.find_elements_by_class_name("userclass")[1].click()

#-----------------------------------------------------------------------
# 通过xpath定位元素
#-----------------------------------------------------------------------
# 根据元素属性和值定位
# 定位id="userid"的元素
driver.find_element_by_xpath("//*[@id=\"userid\"]")

# 定位placeholder属性为"请输入名字"的input元素,即<input placeholder="请输入名字">
driver.find_element_by_xpath("//input[@placeholder=\"请输入名字\"]")

# 定位id="userid"元素-下层元素span-下层元素第二个input
driver.find_element_by_xpath("//*[@id=\"userid\"]/span/input[1]")

# 多条件定位
driver.find_element_by_xpath("//input[@name=\"username\" and @value=\"lxm\"]")
//input[@name=continue][@type=button]  # 待验证
driver.find_element_by_id("id").find_element_by_class_name("name")  # 待验证

# 根据文本定位元素
# 定位文本为“世界真美好”的li元素
driver.find_element_by_xpath("//li[text()=\"世界真美好\"]")
# 定位文本为“我爱这个世界”的span元素
driver.find_element_by_xpath("//span[text()=\"我爱这个世界\"]")

# 定位文本为“世界真美好”的li元素-可传入变量
str = "世界真美好"
driver.find_element_by_xpath("//li[text()=\"%s\"]" % str)


# 根据关键字
driver.find_element_by_xpath("//a[contains(@href,\"#id1\")]")

#在a标签下有个文本(text)包含(contains)网页 的元素
driver.find_element_by_xpath("//a[contains(text(),网页)]").click()

#有个叫a的标签,他有个链接href=http://www.baidu.com/ 的元素
driver.find_element_by_xpath("//a[@href=http://www.baidu.com/]").click()



#-----------------------------------------------------------------------
# 通过tag定位元素
#-----------------------------------------------------------------------
# 查找input标签的元素
driver.find_element_by_tag_name("input")

父子、兄弟节点定位

.表示当前节点,…表示父节点,/表示绝对路径,//表示相对路径...

立即注册
分享的网址网站均收集自搜索引擎以及互联网,非查问网运营,查问网并没有提供其服务,请勿利用其做侵权以及违规行为。
更新于:2024-03-19 09:24:05
    您需要登录后才可以评论。 立即注册
    相关内容

    python的selenium的用法整理

    selenium3定位元素(包括父子,兄弟)及常见操作

    使用Selenium自动验证滑块登录

    推荐内容

    怎样使用V2Ray代理和SSTap玩如魔兽世界/绝地求生/LOL台服/战地3/黑色沙漠/彩...

    sstap游戏代理教程 从此玩如魔兽世界/绝地求生/LOL台服/战地3/黑色沙漠/彩虹六...

    BT磁力搜索网站汇总和找不到的资源

    什么是磁力链接,您如何使用?

    Z-Library:全球最大的数字图书馆/含打不开的解决方案/镜像

    使用V2Ray的mKCP协议加速游戏

    v2rayN已停止工作

    【车险课堂】什么是无赔款优待系数ncd,你“造”吗?