简介:
Selenium也是一个用于Web应用程序测试的工具。Selenium测试直接运行在浏览器中,就像真正的用户在操作一样。支持的浏览器包括IE、Mozilla Firefox、Mozilla Suite等。这个工具的主要功能包括:测试与浏览器的兼容性——测试你的应用程序看是否能够很好得工作在不同浏览器和操作系统之上。测试系统功能——创建衰退测试检验软件功能和用户需求。支持自动录制动作和自动生成。Net、Java、Perl等不同语言的测试脚本。Selenium 是ThoughtWorks专门为Web应用程序编写的一个验收测试工具。
本来,这个是做自动化测试的,不是做爬虫的,也被很多做爬虫的所诟病,效率低,系统资源占用高…………,但是它也有它的优势,它可以借助浏览器来解析Javascript,也就是所谓的动态页面。还可以模拟鼠标键盘操作。这使得编写爬虫时,我们省去了很多对目标页面的分析工作。
我常它来控制firefox,偶尔控制chrome,前段时间还控制了phantomjs(无界面浏览器),但是停止支持了。因为firefox chrome 也开始支持无界面模式了。我可不想教你们老版本。
一:安装
安装python pycharm selenium
这些以前都写过了。自己查吧。
安装firefox chrome 二选一,这个也不用讲
重点:安装驱动,默认安装的firefox chrome是不带自动化测试的驱动的,要手动安装
Mozilla GeckoDriver 这个是配套firefox的
Google Chrome Driver 这个是配套chrome的
自己下载对应的版本吧。
现在的版本是:
geckodriver 0.19.1
chromedriver 2.35
下载解压
把这两个文件放进system中也可以。
我一般放进项目文件夹。免得以后生成exe文件后,别人用不成。
暂时就一个文件。也不考虑项目结构。
另外,电脑上的浏览器版本是
firefox 58.0.1 64位
chrome 64.0.3282.119(正式版本) (64 位)
整体环境:
python 3.6.3 64位
pycharm 2017.2.4 64位
selenium 3.8.1 (pycharm下载,不知道是64还是32)
geckodriver 0.19.1 64位
chromedriver 2.35 32位(没有64位)
firefox 58.0.1 64位
chrome 64.0.3282.119(正式版本) (64 位)
二:试用
刚才02.TEST.py
from time import sleep
from selenium import webdriverdriver=webdriver.Firefox()
driver.get('http://www.baidu.com')
sleep(3)
driver.quit()
driver=webdriver.Chrome()
driver.get('http://www.baidu.com')
sleep(3)
driver.quit()
运行一下试试吧。
会先打开firefox,并打开百度,等3秒,关闭。
再打开chrome,也打开百度,等待3秒,关闭。
如果你的不对,就自己检查一下吧。我也不知道你错在什么地方。