手把手教你PC端 Selenium (Python)
1.安装selenium
安装python
这个简要说一下,python安装网上资料特别多,大家随便搜一下,按照相应的方法进行安装就可以了
python有两个版本python2.x和python3.x,大家直接使用python3.x的最新版本就好了
注意:在安装的过程中需要勾选:"Add Python 3.x to PATH",如果没有勾选,需要在安装完成后,将Python的安装目录添加到环境变量PATH下面,是环境变量的系统变量,网上很多资料
使用win+R快捷键打开windows运行窗口,然后使用cmd进入命令行窗口,敲入python,会弹出我们所使用python的版本,
如果python2.x和python3.x,一定要查看一下我们所用的python版本是哪个。
Microsoft Windows [版本 6.1.7601]
版权所有 (c) 2009 Microsoft Corporation。保留所有权利。
C:\Users\LIZHENHUA224>python
Python 3.6.3 (v3.6.3:2c5fed8, Oct 3 2017, 18:11:49) [MSC v.1900 64 bit (AMD64)]
on win32
Type "help", "copyright", "credits" or "license" for more information.
>>>
安装selenium
使用pip来安装
2.selenium3浏览器驱动
当selenium升级到3.0之后,对不同的浏览器驱动进行了规范。如果想使用selenium驱动不同的浏览器,必须单独下载并设置不同的浏览器驱动。
我使用的是chrome,所以需要chrome浏览器驱动:chromedriver.exe,直接网上下载相应的内容就可以了
两种方式来启动chromedriver.exe,可以将chrome浏览器驱动放到环境变量中,也可以直接将chrome.exe的驱动的绝对地址写到程序中
详见以下代码,我使用的是将绝对的地址写到程序中,因为有时候某些公司的环境变量是不能随意设置的。
python脚本中为什么要在目录前加一个r?
r是保持字符串原始值的意思,就是说不对其中的符号进行转义。因为windows下的目录字符串中通常有斜杠"\",而斜杠在Python的字符串中有转义的作用。例如:\n表示换行如果路径中有\new就会被转义。加上r就是为了避免这种情况。
以下代码就可以轻松打开百度页面,并且在调试界面打出百度的title,百度一下
from selenium import webdriver import os abspath = os.path.abspath(r"D:\testscript\python_project\chromedriver.exe") driver = webdriver.Chrome(abspath) driver.get('https://www.baidu.com') print(driver.title) # driver.quit()
3.selenium元素定位
selenium提供8中元素定位方法
find_element_by_id()
find_element_by_name()
find_element_by_class_name()
find_element_by_tag_name()
find_element_by_link_text()
find_element_by_partial_link_text()
find_element_by_xpah()
find_element_by_css_selector()
常用额就是id或者xpath,还有就是link_text
例如下面这段代码,通过id和xpath定位,因为id和xpath可以唯一定位
<input id="kw" class="s_ipt" name="wd" value="" maxlength="255" autocomplete="off">
find_element_by_id("kw")
4.控制浏览器操作
5.WebDriver常用方法
6.鼠标事件
7.键盘事件
8.获取断言信息
9.设置元素等待
10.定位一组元素
11.多表单切换
12.多窗口切换
13.警告框处理
14.下拉框选择
15.文件上传
16.cookie操作
17.调用JavaScript代码
18.窗口截图
19.关闭浏览器