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()