网络爬虫(又被称为网页蜘蛛,网络机器人),是一种按照一定的规则,自动地抓取万维网信息的程序或者脚本。常见的爬虫工具有:正则表达式、Selenuim、Beautifulsoup等。本例将利用selenium库做一个很简单的例子-爬区百度首页、输出标题、截屏保存、输出百度新闻栏。本实验在LUbuntu16.10上运行。
1.安装selenium库:
# pip install selenium
如果没有pip工具,可先安装apt install pip。另外安装selenium,pip需要的版本为9.0.1,所以对pip进行升级。
2.安装相应浏览器:
selenium库支持谷歌、Firefox、IE等。
3.例子代码如下:
from selenium import webdriver
driver = webdriver.Firefox()
driver.get("http://www.baidu.com")
data = driver.title
print (data)
driver.save_screenshot('baidu.png')
word = driver.find_element_by_id("u1")
print word.text
4.运行程序:
# Python *.py
如果系统没有安装geckodriver,会报错:Geckodriver executable needs to be in PATH。这是因为geckodriver是一原生态的第三方浏览器,对于selenium3.x版本都会使用geckodriver来驱动firefox。Geckodirver的下载地址:https://github.com/mozilla/geckodriver/releases,根据系统选择相应的版本。解压完毕之后,可将geckodriver拷贝至/usr/bin下,或者在PATH环境变量中加入geckodriver的路径:
export PATH=/your geckodriver’s path:$PATH
重新执行即可。