xinlianghu / Douban-Spider

用urllib2和BeautifulSoup来爬取豆瓣上的电影信息,并将其存储到数据库中

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

spider

用urllib2和BeautifulSoup来爬取豆瓣上的电影信息,并将其存储到数据库中

依赖库和软件

bs4

主要依赖该库中的BeautifulSoup,利用其来解析HTML,进而从中提取信息。 安装命令:

sudo pip install bs4

urllib2

主要利用该库来连接url获取html页面,另外还使用了其中的代理功能。一般python默认自带urllib2库。

lxml

BeautifulSoup中使用lxml作为HTML解析引擎。 安装命令:

sudo pip install lxml

mysql

本工程采用mysql作为存储数据库,当从页面抓取相关信息时,程序自动将其存入数据库。 安装命令:

sudo apt-get install mysql-server 
sudo apt-get isntall mysql-client
sudo apt-get install libmysqlclient-dev  

安装完后设置密码和创建数据库即可

MySQL-python

用于python连接并操作mysql数据库。 安装命令:

sudo pip install MySQL-python

数据库相关配置

host = 'localhost'
user = 'root'
password = 'admin'
database = 'test'

使用说明

runSpider(tag = ['电影'],startPage = 0,Pagenum = 1000,size = 100)
tag为内容标签
startPage为起始页
PageNum为页面数量
size为抓取size个链接后才开始抓取相关详细信息
例子runSpider()

代理

为了防止豆瓣的反爬虫机制,本程序采用代理服务器进行爬虫。从西刺网上获取免费的HTTPS高匿代理服务器地址和端口, 获取的方式也是采取爬虫,获取并解析页面上的信息。在获得代理信息时,还需要对其进行验证,测试其是否可用。最后 只保留可用代理。
程序首先获取一个代理池,此过程由于要验证代理服务器,需要时间可能较长。获取代理池后,每过一段时间就从代理池 中获取一个代理,然后用该代理去访问豆瓣网,这样就可以隐藏自己的IP,避免自己的IP被封。

效果截图

无法显示图片

About

用urllib2和BeautifulSoup来爬取豆瓣上的电影信息,并将其存储到数据库中


Languages

Language:Python 100.0%