码迷,mamicode.com
首页 > 其他好文 > 详细

xpath定位.py

时间:2020-01-19 00:21:45      阅读:71      评论:0      收藏:0      [点我收藏+]

标签:webdriver   window   element   多个   art   hao123   http   drive   元素属性   

from selenium import webdriver
driver = webdriver.Chrome()
driver.maximize_window()
ele = driver.get("http://www.baidu.com")
#id定位输入框和百度一下:
driver.find_element_by_id("kw")
driver.find_element_by_id("su")

#name定位输入框:
driver.find_element_by_name("wd")

#class定位输入框和百度一下:
driver.find_element_by_class_name("s_ipt")
driver.find_element_by_class_name("bg s_btn")

#tag定位输入框和百度一下:
driver.find_element_by_tag_name("input")
driver.find_element_by_tag_name("input")

#link定位文本链接新闻、hao123、地图、视频:
driver.find_element_by_link_text("新闻")
driver.find_element_by_link_text("hao123")
driver.find_element_by_link_text("地图")
driver.find_element_by_link_text("视频")

#partial link模糊定位文本链接新闻、hao123、地图、视频:
driver.find_element_by_partial_link_text("新")
driver.find_element_by_partial_link_text("hao")
driver.find_element_by_partial_link_text("地")
driver.find_element_by_partial_link_text("视")

#xpath绝对路径定位输入框和百度一下:
driver.find_element_by_xpath("/html/body/div[1]/div[1]/div/div[1]/div/form/span[1]/input")
driver.find_element_by_xpath("/html/body/div[1]/div[1]/div/div[1]/div/form/span[2]/input")

#利用元素属性定位输入框和百度一下、//表示当前页面某个目录下、input表示定位元素的标签名、[@id=‘kw‘]表示这个元素的id属性值等于kw:
driver.find_element_by_xpath("//input[@id=‘kw‘]")
driver.find_element_by_xpath("//input[@id=‘su‘]")

#如果不想指定标签名、也可以用*星号代替、
driver.find_element_by_xpath("//*[@id=‘kw‘]")
driver.find_element_by_xpath("//*[@id=‘su‘]")

#层级与属性结合、如果一个元素本身没有可以唯一标识这个元素的属性值、那么就可以找其上一级元素、如果上一级有可以唯一标识属性的值也可以拿来使用:

#使用逻辑运算符、如果一个属性不能区分一个元素、可以使用逻辑运算符连接多个属性查找元素
driver.find_element_by_xpath("//input[@id=‘kw‘ and @class=‘su‘]/span/input")

xpath定位.py

标签:webdriver   window   element   多个   art   hao123   http   drive   元素属性   

原文地址:https://www.cnblogs.com/zhang-da/p/12210729.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!