Css定位
Selenium極力推薦使用CSS 定位,而不是XPath來定位元素,原因是CSS 定位比XPath 定速度快,語法也更加簡潔。
CSS常用定位方法
- find_element_by_css_selector()
- #id id選擇器根據id屬性來定位元素
- .class class選擇器,根據class屬性值來定位元素
- [attribute='value'] 根據屬性來定位元素
- element>element 根據元素層級來定位 父元素>子元素
具體代碼如下:
# #!/usr/bin/python3 # -*- coding: utf-8 -*- # @Time : 2020/7/24 15:32 # @Author : Gengwu # @FileName: By_css_seleclor.py # @Software: PyCharm from selenium import webdriver from time import sleep driver=webdriver.Chrome() #driver.get('https://www.baidu.com/') #1:通過id來定位 #driver.find_element_by_css_selector("#kw").send_keys("seleniumw我要自學網") #dlement后面不需要s,通過id來定位前面需要加#號+id #2:通過class來定位 #driver.find_element_by_css_selector('.s_ipt').send_keys('seleniumw我要自學網') #class來定位,class前面+. #3:通過屬性來定位 #driver.find_element_by_css_selector("[autocomplete='off']").send_keys('seleniumw我要自學網') #屬性要在[]里面 sleep(2) driver.find_element_by_id('su').click() sleep(2) driver.quit()