安装 selenium 对于python而言属于一个第三方的模块
针对第三方的模块,如何安装 在dos界面输入python -m pip install 模块名称
安装相关的浏览器以及浏览器的驱动
下载谷歌浏览器的驱动,淘宝镜像
下载后,解压,然后将得到的exe文件移动到python安装目录
测试是否安装成功
定位
提供了八种定位方式
定位方式 |
表达式 |
id |
find_element_by_id |
name |
find_element_by_name |
class_name |
find_element_by_class_name |
link_text |
find_element_by_link_text |
partial_link_text |
find_element_by_partial_link_text |
tag_name |
find_element_by_tag_name |
xpath |
find_element_by_xpath |
css_selector |
find_element_by_css_selector |
- 打开网页get()
- 输入 send_keys()
- 清空clear()
- 点击click()
id,name,class_name使用demo
# 使用selenium之前,需要先从selenium 里面导入 webdriverfrom selenium import webdriver from time import sleep # 打开谷歌浏览器,并且赋值给变量dd = webdriver.Chrome()# 通过 get(url) 方法打开网址d.get('http://localhost/wordpress/wp-login.php')# 通过id定位# 通过send_keys()方法输入内容d.find_element_by_id('user_login').send_keys('随便写写') sleep(2)# 通过name定位# 通过clear()方法,清空输入框的内容d.find_element_by_name('log').clear() sleep(2)# 通过class_name定位d.find_element_by_class_name('input').send_keys('admin')# 通过click()方法模拟鼠标单击d.find_element_by_class_name('button-primary').click()
tag_name,link_text,partial_link_text使用demo
# 使用selenium之前,需要先从selenium 里面导入 webdriverfrom selenium import webdriver from time import sleep # 打开谷歌浏览器,并且赋值给变量dd = webdriver.Chrome()# 通过 get(url) 方法打开网址d.get('http://localhost/wordpress/wp-login.php')# 通过tag_name定位d.find_element_by_tag_name('input').send_keys('tagname定位') sleep(2)# 通过link_text定位,需要全部的文本链接d.find_element_by_link_text('忘记密码?').click() sleep(2)# 通过partial_link_text 定位,只需要某一部分文本即可d.find_element_by_partial_link_text('回到自').click() sleep(2)
xpath定位
# 绝对路径定位 /html/body/div/form/p/label # 通过序号选择,获取到form标签下的第二个p标签 /html/body/div/form/p[2]/label # 直接查找某个标签下 //标签名 //form/p[2]/label # 属性与路径结合起来 //form/p/label[@for="user_pass"] //input[@class="input" and @type="password"] //p/label[@for="user_pass"]/input //label[@for="user_login"]/input
css定位
用空格表示下级标签 [属性名="属性值"][属性名="属性值"] //input[@class="input" and @type="password"] input[class="input"][type="password"] input.input[type="password"] 用 # 表示 id [id="user_login"] 等于 #user_login 用 . 表示 class [class="input"] 等于 .input
代码demo
# 使用selenium之前,需要先从selenium 里面导入 webdriverfrom selenium import webdriver from time import sleep # 打开谷歌浏览器,并且赋值给变量dd = webdriver.Chrome()# 通过 get(url) 方法打开网址d.get('http://localhost/wordpress/wp-login.php')# xpath定位d.find_element_by_xpath('//label[@for="user_login"]/input').send_keys('admin')# css定位d.find_element_by_css_selector('#user_pass').send_keys('admin123') d.find_element_by_css_selector('.button-primary').click()