Python: 知乎大规模(34,000)用户爬虫 (Python 版本)
发布时间
阅读量:
阅读量
近期在学习Python编程语言的过程中,完成了练习册中大部分的习题:https://github.com/Show-Me-the-Code/python(我的github上有习题代码,欢迎自取)。之后看到@salamer的一个python爬虫项目,觉得很不错。于是自己花了4天的时间完成了一个大规模爬取知乎用户信息的爬虫,由于个人网络原因,爬取12小时,获得了34k用户的信息(理论上可以爬全站的信息,可能时间要长一些,最好放在服务器上跑)并整理成直观的图表(文章末尾显示)。
接下来将简要介绍其中涉及的主要技术要点:
(1)通过Python的request模块实现对HTML页面的获取,需要注意的是需调整自身的cookie信息,以模拟浏览器访问的行为
(2)借助xpath模块从HTML内容中提取所需的关键数据,包括姓名、职业、居住地以及关注对象等信息
(3)采用redis作为队列系统,有效应对高并发与大规模数据处理的需求,并具备分布式处理的能力
(4)引入BFS宽度优先搜索算法,使程序能够持续扩展并不断追踪用户信息
(5)将所获取的数据存储于No-SQL数据库MongoDB中,因其具备高效性、轻量级以及良好的并发支持特性
(6)利用Python进程池模块来提升数据抓取的整体效率
**(7)使用csv、pand
全部评论 (0)
还没有任何评论哟~
