爬过这些网站才算会爬虫

浏览: 2943

摘要:微信、知乎、新浪等主流网站的模拟登陆爬取方法。

网络上有形形色色的网站,不同类型的网站爬虫策略不同,难易程度也不一样。从是否需要登陆这方面来说,一些简单网站不需要登陆就可以爬,比如之前爬过的猫眼电影、东方财富网等。有一些网站需要先登陆才能爬,比如知乎、微信等。这类网站在模拟登陆时需要处理验证码、js 加密参数这些问题,爬取难度会大很多。费很大力气登陆进去后才能爬取想要的内容,很花时间。

是不是一定要自己动手去实现每一个网站的模拟登陆方法呢,从效率上来讲,其实大可不必,已经有前人替我们造好轮子了。

最近发现一个神库,汇总了数十个主流网站的模拟登陆方法:

  • 知乎

  • 微信网页版登录并获取好友列表

  • Bilibili

  • Facebook

  • 无需身份验证即可抓取Twitter前端API

  • 微博网页版

  • QQZone

  • CSDN

  • 淘宝

  • Baidu

  • 果壳

  • JingDong 模拟登录

  • 163mail

  • 拉钩

  • 豆瓣

  • Baidu2

  • 猎聘网

  • Github

  • 爬取图虫相应的图片

  • 网易云音乐

  • 糗事百科

这些网站基本采用的是直接登录或者 selenium+webdriver 方式。每一个网站都有完整的模拟登陆代码,拿来就可以用到自己的爬虫中。

下面我们来测试一下。

先说说很难爬的「知乎」,假如我们想爬取知乎主页的 HTML 内容,就必须要先登陆才能爬,不然看不到这个界面。下面来简单梳理一下流程。

知乎需要手机号才能注册登陆。为了方便测试,可以随便找个手机号,手机号到哪儿去找呢,我上周写的那篇文章就发挥作用了。文章里介绍了一个免费电话号码网站,用上面的手机号可以成功注册。

文章传送门:两个神网站保护你的隐私

顺利登录后就可以进入主页了。

下面,我们用这个库提供的代码来模拟登陆,输出主页 HTML 内容作测试。操作很简单,只需要输入手机号、密码和验证码就可以了。

成功登陆后,接下来就可以做一些有意思的事了。比如曾有人爬取所有知乎账号的信息,分析了知乎用户群体画像。

是不是有点意思。

再来看看微信。用上面的微信代码可以把全部微信好友信息爬取下来,比如:昵称、性别、地域、个性签名。接着可以分析一下你的朋友圈是什么样的,应该会很有趣。

还可以爬 B 站:

还可以爬链家租房信息:

还有很多实用有趣的内容,就不一一罗列了,感兴趣的话可以试试,最后放上大神的 GitHub 库地址:

https://github.com/CriseLYJ/awesome-python-login-model

不要闷头造轮子,多抬抬头会发现你在做/想做的东西,别人早已经弄好了,拿来用或者参考学习都是件好事。

本文完。


Python的爱好者社区历史文章大合集

2018年Python爱好者社区历史文章合集(作者篇)

2018年Python爱好者社区历史文章合集(类型篇)

福利:文末扫码关注公众号,“Python爱好者社区”,开始学习Python课程:

关注后在公众号内回复“ 课程 ”即可获取:

小编的转行入职数据科学(数据分析挖掘/机器学习方向)【最新免费】

小编的Python的入门免费视频课程

小编的Python的快速上手matplotlib可视化库!

崔老师爬虫实战案例免费学习视频。

陈老师数据分析报告扩展制作免费学习视频。

玩转大数据分析!Spark2.X + Python精华实战课程免费学习视频。

推荐 1
本文由 Python爱好者社区 创作,采用 知识共享署名-相同方式共享 3.0 中国大陆许可协议 进行许可。
转载、引用前需联系作者,并署名作者且注明文章出处。
本站文章版权归原作者及原出处所有 。内容为作者个人观点, 并不代表本站赞同其观点和对其真实性负责。本站是一个个人学习交流的平台,并不用于任何商业目的,如果有任何问题,请及时联系我们,我们将根据著作权人的要求,立即更正或者删除有关内容。本站拥有对此声明的最终解释权。

0 个评论

要回复文章请先登录注册