Skip to content

liuyijian/Management-of-cloud-data

Repository files navigation

以图搜书--检索系统

  • 软件61 刘译键 2016013239

  • 软件61 卢北辰 2016013242

前端

  • 使用 vue + element

后端

爬虫

#####爬虫参考资料

#####爬虫小范围测试debug

# settings.py 中 请更换为本机mongodb配置信息
MONGO_HOST = 'localhost'
MONGO_PORT = 27017
MONGO_USER = 'root'
MONGO_PASS = 'lyj271271'
MONGODB_DB_NAME = 'scrapy_data'
MONGODB_OVERWRITE_SIGN = True
# pipelines.py 中 请注释掉以下代码,则不会写入mongodb
ITEM_PIPELINES = {
   'webspider.pipelines.MongoDBPipeline': 300,
}
# 命令行执行命令
cd webspider
scrapy crawl <spider-name> -o <spider-name>.csv
爬虫代理
  • 使用docker安装代理池(运行后需要等待一段时间)

  • docker run -d -p 8899:8899 -p 8081:8081 -v /var/www/scylla:/var/www/scylla --name scylla wildcat/scylla:latest
  • 使用scylla的正向代理,爬虫程序中使用http://127.0.0.1:8081,则scylla会从代理池中选择一个代理进行爬取,在settings.py配置如下,豆瓣网因为有IP限速限量,所以要配置好DOWNLOAD_DELAY,想全量爬取还需要充足的代理IP,本次爬取使用的有效代理IP为90个,平均延时300ms。

    DOWNLOADER_MIDDLEWARES = {
    	'webspider.middlewares.RandomHttpProxyMiddleware' : 300,
    }
    
    IP_PROXY = 'http://127.0.0.1:8081'
  • 爬取的文件如下,可以使用mongoimport 命令导入到数据库

    • jingdong.csv:300000条
    • douban.csv:40000条
    • dangdang.csv:200000条
爬虫整合到restful api

About

云数据管理(2)大作业

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published