查看网页页面代码可以使用以下途径:
Chrome:按F12或者网页页面右键的“检查” Firefox:网页页面右键的“审查元素”
1.通过id属性来定位元素(id属性在html文档中必须具有唯一性)
find_element_by_id()方法
文本输入框定位:find_element_by_id('kw')
2.通过name属性来定位元素(name属性在当前页面中)
find_element_by_name()方法
文本输入框定位:find_element_by_name('wd')
3.通过class属性来定位元素
find_element_by_class_name()方法
文本输入框定位:find_element_by_class_name('s_ipt')
4.通过tag来定位元素
find_element_by_tag_name()方法 没成功!!!!略过....................
5.通过link元素标签对之间的文本信息来定位元素
find_element_by_link_text()方法
6.通过partial link定位元素,和link类似,只不过是部分文本信息来进行定位
find_element_by_partial_link_text()方法
7.find_element_by_xpath()方法
7.1绝对路径来定位:find_element_by_xpath('/html/body/.........')
文本框:find_element_by_xpath("/html/body/div[2]/div[1]/div/div[1]/div/form/span[1]/input")
7.2通过属性定位元素
find_element_by_xpath("//标签名[@属性=‘属性值’]")
id属性:find_element_by_xpath("//input[@id = 'kw']")
name属性:find_element_by_xpath("//input[@name = 'wd']")
如果不想指定标签名,可以将标签名用 * 代替,xpath不局限于id、name、class这三个属值, 元素的任意属性都可以使用,只要它能唯一标识一个元素
7.3通过标签定位元素
当元素没有唯一标识的属性可以利用时,可以往上层级进行搜索,假如标签中有唯一标识,那 么可以利用标签名来进行定位
find_element_by_xpath("//span[@class = 'bg s_ipt_wr']/input")
7.4通过多个属性组合定位元素
当一个属性不能唯一区分一个元素,可以用逻辑运算符and来连接多个属性查找元素
find_element_by_xpath("//input[@id = 'kw' and @name = 'wd']")
8.通过CSS定位元素
8.1通过id属性定位元素
文本框:find_element_by_css_selector("#kw")
按钮:find_element_by_css_selector("#su")
8.2通过class属性定位元素
文本框:find_element_by_css_selector(".s_ipt")
按钮:find_element_by_css_selector(".bg s_btn")
8.3通过其他属性值来定位元素
文本框:find_element_by_css_selector("[name = 'wd']")
find_element_by_css_selector("[maxlength = 255]")
find_element_by_css_selector("[autocomplete = 'off']")
8.4通过层级父子关系来定位元素
文本框:find_element_by_css_selector("span > input ")
拓展:find_element_by_css_selector("span > input.s_ipt")
网友评论