用Python把github上非常实用的数据全部抓取下来! 留给自己备用

本文介绍了如何使用Python编写爬虫抓取GitHub上的数据,包括按照查看数和粉丝数排序的项目和用户列表。在遇到单机递归内存溢出、请求延时长、数据下载速度慢以及访问失败的链接重试问题时,通过引入队列和RabbitMQ实现了广度优先遍历和多并发优化,支持中断后继续运行。详细展示了程序流程图和消息队列的配置方法。
摘要由CSDN通过智能技术生成

image

image

image

这是我根据这个流程实现的代码,网址:LiuRoy/github_spider

image

运行结果

因为每个请求延时很高,爬虫运行效率很慢,访问了几千个请求之后拿到了部分数据,这是按照查看数降序排列的python项目:

image

这是按粉丝数降序排列的用户列表

image

运行缺陷

作为一个有追求的程序员,当然不能因为一点小成就满足,总结一下递归实现的几个缺陷:

因为是深度优先,当整个用户图很大的时候,单机递归可能造成内存溢出从而使程序崩溃&#x

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值