#css定位
from selenium import webdriver#導包
from time import *
from selenium.webdriver.support.wait import WebDriverWait
driver = webdriver.Chrome()
driver.get("http://www.baidu.com")
1.常規屬性
#css用 # 號表示id屬性,如:#kw
driver.find_element_by_css_selector("#kw").send_keys("selenium")
#css用.表示class屬性,如:.s_ipt
driver.find_element_by_css_selector(".s_ipt").send_keys("selenium")
2.其他屬性
#用css通過autocomplete屬性定位
driver.find_element_by_css_selector("[autocomplete='off']").send_keys("selenium")
#用css通過name屬性定位
driver.find_element_by_css_selector("[name='wd']").send_keys("selenium")
#用css通過type屬性定位
driver.find_element_by_css_selector("[type='text']").send_keys("selenium")
3.標簽定位
#css也可以通過標簽與屬性的組合來定位元素
#用css通過標簽與name屬性定位
driver.find_element_by_css_selector("input.wd").send_keys("selenium")
#用css通過標簽與id屬性定位
driver.find_element_by_css_selector("inout#kw").send_keys("selenium")
4.層級定位(這里有問題,沒寫完,網上的都是些瞎寫的,不完整,等我研究研究在更新)
//*[@id="1"]/h3/a[1] 不用星號表示就是//div[@id="1"]/h3/a[1]
driver.find_element_by_xpath('//div[@id="1"]/h3/a[1]').click()
# driver.find_element_by_css_selector('')
5.索引定位
#選擇第一個option
driver.find_element_by_css_selector("select#nr>option:nth-child(1)").click()
#選擇第二個option
driver.find_element_by_css_selector("select#nr>option:nth-child(2)").click()
6.css:邏輯運算
#我只找到網上說2個屬性一起查找的,使用第三個時失敗了,最多只能2個
driver.find_element_by_css_selector("input[id='kw'][name='wd']").send_keys("selenium")