程序思路
构造请求链接
先获取所有的好友
获取说说
获取留言
获取个人信息
把数据存到数据库
以上就是整个过程中的大思路,然后再逐步把大思路化解成小的具体的问题去解决。
基本环境配置
环境:Ubuntu 16.04
IDE: PyCharm
python 3.5
selenium : 用于模拟登录获取cookies
requests : 用于保存会话
json : 用于把数据进行清理,整合
urllib : 用于对链接的构造
pymongo : 用于对mongodb数据库的调用
模拟登录
首先QQ空间是需要登录的,我们利用selenium进行模拟登录
我们使用账号密码登录,通过如下代码可以进行模拟登录:
构造链接
有过爬虫经验的朋友肯定知道,构造链接在爬虫过程中是经常会遇到的,特别是数据需要动态加载的时候。
我们仔细来分析一下它的请求链接:
在chrome的Network下的js中找到qzfl_v8_2.1.65.js
这里就是获取g_tk的算法部分,转换成python版本就是:
这个就是整个程序的核心部分,只要拿到了这个g_tk,其他的就不是什么困难的地方了。
获取所有好友的账号
请求链接构造如下:
获取好友信息如下:
获取所有的好友的说说
先上代码:
总结
这次对QQ空间的爬取总体来说收获还是很大的,文章中只是大体介绍了一下过程,具体细节我希望各位能够亲自动手去做一下,授人以鱼不如授人以渔,要想学好程序,不动手是肯定不行的。
最后,小编想说:我是一名python开发工程师,
整理了一套最新的python系统学习教程,
想要这些资料的可以关注私信小编“01”即可(免费分享哦)希望能对你有所帮助
閱讀更多 Python智禪 的文章