采用基于 Scrapy 框架的爬虫技术,开发了检索电影信息的搜索引擎。对豆瓣网站的影视信息进行爬取,以方便用户准确获取最新的电影信息。
以“豆瓣电影”为爬取目 标,爬取网站中的影视信息。主要包括网站排名 “ Top250 ”和喜剧、动作类电影的电影名称、电影评分、电影导演, 电影上映时间以及电影评语。
Scrapy 框架运行流程
1.创建工程
scrapy startproject DouBan
2.创建爬虫程序
cd DouBan/
genspider douban 'douban.com'
会自动创建目录以及文件
然后就可以开始我们的爬虫了,分析需求可知,我们要爬取网站排名 “ Top250 ”和喜剧、动作类电影的电影名称、电影评分、电影导演, 电影评论数以及电影评语。
编辑items.py文件:
在DoubanItem类里面加入要爬取的item
class DoubanItem(scrapy.Item):
# define the fields for your item here like:
# name = scrapy.Field()
title = scrapy.Field() #电影名称
rating_num = scrapy.Field() #电影评分
inq = scrapy.Field() #电影短评
actor = scrapy.Field() #电影导演
comment = scrapy.Field() #电影评论数
接下来进入spiders下的douban.py文件,编辑爬虫代码:
这里要注意的是:
start_urls就是我们一开始要爬取的url地址,spider会自动执行爬虫,返回一个response对象,传入parse函数中,所以在parse函数中,我们可以直接对resonse对象用xpath解析,返回的仍是一个对象,所以需要extract方法提取对象的内容。
在parse中,我们首先实例化DoubanItem的类(从items文件中导入),爬取的数据将以item对象的方