Python : 爬取所有 ip 数据并存入 mongodb,支持中断恢复执行

2017-05-27 17:47:10 +08:00
 xiaojieluoff

数据采集自 ip-api.com

在 celery 队列中获取数据并存入 mongodb 数据库

支持程序中断后从上次停下的地方继续采集

支持 python3+

Github 地址: https://github.com/xiaojieluo/ip-database

下面截图是我在本地电脑爬的,开了 4 个 worker,celery 很容易横向拓展,如果多加几台服务器,做成分布式爬虫,速度应该还是可以的

截图

安装

$ pip install -r requirements.txt

使用

1. 配置 mongodb 连接信息

ip-database 会将采集的数据存储到 mongodb 中,所以需要在 db.py 中配置 mongodb 的连接信息

2. 启动 redis-server 和 celery

celery 使用 redis 存储任务队列,需要启动 redis-server


$ redis-server

$ celery -A task worker --loglevel=info

3. 启动主程序


$ python ip.py

1668 次点击
所在节点    Python
0 条回复

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/364292

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX