最近看书的时候才知道有Headless driver这个东西,想想上回爬取数据的时候还通宵开头电脑屏幕(亮度调到最低),不能对电脑有其他任何操作。有了这个Headless driver就方便多了。
书中推荐的上PhantomJS浏览器,但是去官网上下载的时候就发现这个项目已经停止维护了。下载了以后运行的时候也提示,建议用Chrome或者Firefox的headless模式。因为我本来就装着Chrome,然后就不去折腾Firefox了。
在用Selenium的webdriver加载的时候发现错误,根据这篇文章的指导,去下载了chromedriver,结果确发现不能移动到/usr/bin文件夹里面(用sudo也不行),查到了一个比较繁琐的把文件夹的只读属性解开的操作,但是想想也比较麻烦。后来找到一个非常简单的实现方法。就是把文件复制到/usr/local/bin里面。
然后一下就搞定了。
from selenium import webdriver
from selenium.webdriver.chrome.options import Options
chrome_options = Options()
#chrome_options.add_argument("--disable-extensions")
#chrome_options.add_argument("--disable-gpu")
chrome_options.add_argument("--headless")
driver = webdriver.Chrome(options=chrome_options)
driver.get('http://www.baidu.com')
print(driver.page_source)
就可以看到百度首页的html源码了。
网友评论