selenium环境安装
- pip install selenium
- 一般问题:
- 升级pip指令
- 超时错误 :pip install selenium --default-timeout=1000
- 搭建webdriver
- selenium 基本原理
- webdriver是代理
元素定位
一、元素定位方法
- d
- name
- classname
- tagname
- linktext
- partial_lintext
- xpath
- css
二、css定位元素
-
绝对路径
- 从根标签一级一级找到目标标签
- 用>或空格连接上下级
-
id定位 :用#表示id
-
class定位: 例如:
button = b.find_element_by_css_selector('.bg s_btn') button.click()4.
-
其他属性:input_ = b.find_element_by_css_selector('[autocomplete="off"]')
-
通过多个属性:b.find_element_by_css_selector('[autocomplete="off"][name="wd"]')
-
通过部分属性值:*包含, ^开头 ,$结尾
-
通过层级定位
-
兄弟节点
b.find_element_by_css_selector("div#s-top-left>a:first-child").click() b.find_element_by_css_selector("div#s-top-left>a:nth-child(2)").click() b.find_element_by_css_selector("div#s-top-left>a:last-child(2)").click()
三、xpath定位
-
// 表示根路径开始查找
-
*表示任意元素
-
[] 表示筛选条件
-
@ 表示基于属性筛选
例如://*[@id="s-top-left"]
5. 确认xpath是否正确:
1. 在浏览器console可以输入 $x('//*[@id="s-top-left"]') 查找元素
2. 在f12elements ctr+F查找输入: 例如://*[@id="s-top-left"]
- 超链接文本: //a[text()='新闻']
- contains模糊搜索