安装 Chrome Headless
Chrome 在最近推出了headless模式。原生的Chrome,更好的通用性,更快的速度……这些优点都足以表名目前来说 PhantomJS 已经要被取代了,果不其然,在最新版中的 Selenium 中已经不支持 PhantomJS了。
因此,为了学习 web2.0 的爬虫,必须得将 Chrome Headless 安装到服务器版的linux中运行。
在服务器的 Ubuntu 版本中必须得通过命令行安装:
1 | sudo apt-get install libxss1 libappindicator1 libindicator7 |
测试安装
启动 Chrome
1 | google-chrome --headless --remote-debugging-port=9222 https://chromium.org --disable-gpu |
这里是使用headless模式进行远程调试,ubuntu 上大多没有 gpu,所以–disable-gpu以免报错。
之后另开一个连接端口来访问本地的9222端口:
1 | curl http://localhost:9222 |
看到如下信息就表明安装成功了
1 | <html> |
下载 chromedriver
chromedriver 提供了操作 Chrome 的api,是 Selenium 控制Chrome 的桥梁。查看最新的Chrome版本
下载并解压:
1 | wget https://chromedriver.storage.googleapis.com/2.41/chromedriver_linux64.zip |
安装完之后将解压出来的文件配置到环境变量中去
1 | sudo vi ~/.profile |
将 下载到的 chromedriver 的路径添加进去
1 | export PATH="$PATH:/home/wx/application/chromedriver" |
更新环境变量
1 | source ~/.profile |
使用 Selenium 和 Chrome Headless 来访问网页
1 | from selenium import webdriver |