元素定位
查找条件对象有id,name,classname,tagname等等,下面依次介绍经常使用的查找条件。Webdriver提供了对单个对象定位的方法,汇总如下:
| 方法 | 描述 | 实例 |
| find_element_by_id(id) | id | find_element_by_id("kw") |
| find_element_by_name(name) | name | find_element_by_name("wd") |
| find_element_by_class_name(name) | class name | find_element_by_class_name("s_ipt") |
| find_element_by_tag_name(name) | tag name | find_element_by_tag_name("input") |
| find_element_by_xpath(xpath) | xpath | find_element_by_xpath(".//*[@id='kw']") |
| find_element_by_css_selector(css) | css_selector | find_element_by_css_selector("#kw") |
| find_element_by_link_text(linktext) | link_text | find_element_by_link_text(u'新闻') |
| find_element_by_partial_link_text(linktext) | partial_link_text | find_element_by_partial_link_text(u'新') |
1.id
1 #coding:utf-8 2 from selenium import webdriver 3 from selenium.webdriver.common.by import By 4 driver=webdriver.Firefox() 5 driver.get('http://www.baidu.com') 6 driver.find_element_by_id('kw').send_keys('webdriver') 7 driver.quit()
2.name
1 #coding:utf-8 2 from selenium import webdriver 3 from selenium.webdriver.common.by import By 4 driver=webdriver.Firefox() 5 driver.get('http://www.baidu.com') 6 driver.find_element_by_name('wd').send_keys('webdriver') 7 driver.quit()
3.class name
1 #coding:utf-8 2 from selenium import webdriver 3 from selenium.webdriver.common.by import By 4 driver=webdriver.Firefox() 5 driver.get('http://www.baidu.com') 6 driver.find_element_by_class_name('s_ipt').send_keys('webdriver') 7 driver.quit()
4.tag name
搜索输入框”input”标记为第七个,可以使用”input”来作为条件在输入框输入字符
1 #coding:utf-8 2 from selenium import webdriver 3 from selenium.webdriver.common.by import By 4 driver=webdriver.Firefox() 5 driver.get('http://www.baidu.com') 6 tag=driver.find_elements_by_tag_name('input') 7 tag[7].send_keys('webdriver') 8 driver.quit()
5.xpath
1 #coding:utf-8 2 from selenium import webdriver 3 from selenium.webdriver.common.by import By 4 driver=webdriver.Firefox() 5 driver.get('http://www.baidu.com') 6 driver.find_element_by_xpath(".//*[@id='kw']").send_keys('webdriver') 7 driver.quit()
6.css selector
1 #coding:utf-8 2 from selenium import webdriver 3 from selenium.webdriver.common.by import By 4 driver=webdriver.Firefox() 5 driver.get('http://www.baidu.com') 6 driver.find_element_by_css_selector("#su").click() 7 driver.quit()
7.linktext
1 #coding:utf-8 2 from selenium import webdriver 3 from selenium.webdriver.common.by import By 4 driver=webdriver.Firefox() 5 driver.get('http://www.baidu.com') 6 driver.find_element_by_link_text(u'新闻').click() 7 driver.quit()
8.partial linktext
1 #coding:utf-8 2 from selenium import webdriver 3 from selenium.webdriver.common.by import By 4 driver=webdriver.Firefox() 5 driver.get('http://www.baidu.com') 6 driver.find_element_by_partial_link_text(u'闻').click() 7 driver.quit()

浙公网安备 33010602011771号