- 项目URL:https://images.so.com/
- 项目简介:爬取360摄影图片及信息存储到数据库mongodb中
- 项目所需库/框架:
- scrapy框架
- pymongo库
- sys库
- urllib库
- json库
- 项目实操:
-
使用cmd创建项目和爬虫:
scrapy startproject images360 scrapy genspider images images.so.com
-
- 创建start_requests函数,拼接url,设置为初始url
- 修改parse函数,用于解析数据,提取信息并存储到mongodb中
-
-
定义一个变量,用来设置最大爬取页
MAX_PAGE = 50
-
修改ROBOTSTXT_OBEY函数,将其设置为False,关闭robots协议
-
添加一个变量,用来定义路径:
IMAGES_STORE = './images'
-
启用变量ITEM_PIPELINE,并修改:
ITEM_PIPELINES = { 'images360.pipelines.ImagePipeline': 300, 'images360.pipelines.MongoPipeline': 301, }
-
4. 修改items.py:
- 我们这里定义一个Item,叫做ImageItem,并且定义4个字段:id,url,title,thumb,分别表示ID,链接,标题和缩略图
-
- 创建一个ImagePipeline类
- 创建一个MongoPipeline类,用来将信息保存的mongodb中
代码已经上传到github上,下面是链接:
https://github.com/huquan1996/myPython/tree/master/爬虫练习/images360