大数据 爬虫Python AI Sqlpython自学python填坑记

【selenium】webdriver的安装配置(附:可能最全的

2018-10-03  本文已影响1人  alisen

我们在写爬虫的时候,偶尔会遇到一些内容是通过js获取,或者加密等一些情况,那么这种情况就必须要祭出大杀器了——selenium。

严格来讲,selenium是一个自动化测试的工具,不过用来做爬虫也是极好的。它可以获取到js加载后的页面,从而拿到直接请求拿不到的东西,实现“所见即所得”。

所谓“工欲善其事,必先利其器”。使用selenium最重要的是要先安装好浏览器的驱动,这样selenium才可以控制得到我们的浏览器。

selenium支持几乎市面上所有的主流浏览器,在这里就主要介绍常用的三款浏览器,chrome、firefox、PhantomJS的安装使用

1. 下载webdriver

注意:webdriver支持的版本必须与浏览器的版本一致,否则会报错

1. 谷歌浏览器 chromedriver

2. 火狐浏览器 geckodriver

这篇文档里可以查到火狐浏览器版本所对应的驱动版本
https://firefox-source-docs.mozilla.org/testing/geckodriver/geckodriver/Support.html

3. PhantomJS

2. 配置环境

chromedriver.exe

D:\webdriver

我的电脑 —— 右键属性 —— 高级系统设置 —— 环境变量 —— 系统变量
找到path值,将D:\webdriver路径添加进去

├─webdriver
│  ├─chromedriver.exe
│  ├─geckodriver.exe
│  ├─phantomjs.exe

这里根据实际情况选择一个驱动使用即可

3. selenium里使用webdriver

    from selenium import webdriver
    import time
    open_driver = webdriver.Chrome()
    # open_driver = webdriver.Firefox()
    # open_driver = webdriver.PhantomJS()
    open_driver.get('https://www.baidu.com')
    time.sleep(5)
    open_driver.close()

运行这段代码,浏览器会打开百度首页,在等待5秒之后,将会自动关闭,程序结束。

注意: phantomjs是一个无界面浏览器,因此在运行的时候是不会有浏览器窗口显示的。

4. 结束语

使用selenium来编写爬虫的优点很多,例如可以省略我们分析js和一些加密算法的时间,减小爬虫开发难度。不过缺点也十分明显,就是速度太慢,占用的资源多,效率不高。
因此在非必要的时候,尽量使用直接请求api的方式来编写爬虫。

上一篇下一篇

猜你喜欢

热点阅读