GitHub 上有哪些优秀的 Python 爬虫项目(13)
其中获取并解决验证码的函数如下:def get_captcha():\u0026#39;\u0026#39;\u0026#39; 获取验证码及其ID \u0026#39;\u0026#39;\u0026#39; r = requests.post(url, data=https://www.zhihu.com/api/v4/questions/58151047/datas, headers=headers) page = r.text soup = BeautifulSoup(page,"html.parser") # 利用bs4获得验证码图片地址 img_src = https://www.zhihu.com/api/v4/questions/58151047/soup.find(/u0026#39;img/u0026#39;, {/u0026#39;id/u0026#39;: /u0026#39;captcha_image/u0026#39;}).get(/u0026#39;src/u0026#39;) urlretrieve(img_src, /u0026#39;captcha.jpg/u0026#39;)try: im = Image.open(/u0026#39;captcha.jpg/u0026#39;) im.show() im.close() except: print(/u0026#39;到本地目录打开captcha.jpg获取验证码/u0026#39;)finally: captcha = input(/u0026#39;please input the captcha:/u0026#39;) remove(/u0026#39;captcha.jpg/u0026#39;) captcha_id = soup.find(/u0026#39;input/u0026#39;, {/u0026#39;type/u0026#39;: /u0026#39;hidden/u0026#39;, /u0026#39;name/u0026#39;: /u0026#39;captcha-id/u0026#39;}).get(/u0026#39;value/u0026#39;)return captcha, captcha_id
当然这些都是简单的演示,在 GitHub 项目中可以找到更多的示例。此外,作者表明由于网站策略或者样式改变而导致代码失效,我们也可以提 Issue 或 Pull Requests。最后,该项目未来还会一直维护,很多东西哦也会慢慢改进,项目作者表明:
项目写了一段时间后,发现代码风格、程序易用性、可扩展性、代码的可读性,都存在一定的问题,所以接下来最重要的是重构代码,让大家可以更容易的做出一些自己的小功能;如果读者觉得某个网站的登录很有代表性,可以在项目 issue 中提出;网站的登录机制有可能经常的变动,所以当现在的模拟的登录的规则不能使用的时候,请项目在 issue 中提出。
■网友
1、豆瓣读书爬虫
可以爬下豆瓣读书标签下的所有图书,按评分排名依次存储,存储到 Excel 中,可方便大家筛选搜罗,比如筛选评价人数\u0026gt;1000的高分书籍;可依据不同的主题存储到 Excel 不同的 Sheet ,采用 User Agent 伪装为浏览器进行爬取,并加入随机延时来更好的模仿浏览器行为,避免爬虫被封。
https://github.com/lanbing510/DouBanSpider
2、爬虫
此项目的功能是爬取用户信息以及人际拓扑关系,爬虫框架使用 scrapy,数据存储使用 mongo。
https://github.com/LiuRoy/zhihu_spider
3、Bilibili 用户爬虫
总数据数:20119918,抓取字段:用户 id,昵称,性别,头像,等级,经验值,粉丝数,生日,地址,注册时间,签名,等级与经验值等。抓取之后生成B站用户数据报告。
https://github.com/airingursb/bilibili-user
4、新浪微博爬虫
主要爬取新浪微博用户的个人信息、微博信息、粉丝和关注。代码获取新浪微博 Cookie 进行登录,可通过多账号登录来防止新浪的反扒。主要使用 scrapy 爬虫框架。
https://github.com/LiuXingMing/SinaSpider
5、小说下载分布式爬虫
使用 scrapy,Redis,MongoDB,graphite 实现的一个分布式网络爬虫,底层存储MongoDB集群,分布式使用Redis实现,爬虫状态显示使用 graphite 实现,主要针对一个小说站点。
https://github.com/gnemoug/distribute_crawler
6、中国知网爬虫
设置检索条件后,执行 src/CnkiSpider.py 抓取数据,抓取数据存储在 /data 目录下,每个数据文件的第一行为字段名称。
https://github.com/yanzhou/CnkiSpider
推荐阅读
- 医院|感染艾滋病毒初期有哪些征兆?可以自行检查吗?共用马桶会传染吗
- 玩游戏花钱最多的有哪些游戏,哪些人
- 旅行|需要准备哪些物品?全面冬季出游清单,建议收藏带宝宝出门旅行
- 红米手机通过QQ空间的成功营销,给涉足社会化营销的企业有哪些启示
- 互联网在线音乐行业有哪些可能的盈利模式
- 直播会成为品牌传播的另一个途径么有哪些可行的方法感觉有戏又没头绪好捉急。
- 侧重业务逻辑的产品需求规格说明书,需要有哪些要点
- 大学|上海大学第8,前10名有哪些高校?上海市30所大学排名
- 小米手机的指纹信息保管安全吗
- 学图像处理有哪些不错的书推荐