python爬取加密qq空间_python3爬虫爬取QQ好友空间说说

本文介绍了使用Python3爬虫爬取加密QQ空间好友说说的详细步骤,包括登录QQ空间、获取好友QQ号、解析请求参数、模拟请求以及数据清洗和存储到数据库的过程。
摘要由CSDN通过智能技术生成

开发环境Win10

python 3.6.3

pycharm 2018.1

第三方库csv

requests

pymysql

selenium

无头浏览器 PhantomJS

主要思路通过QQ邮箱导出好友文件,使用csv获取所有好友QQ号。

2. 使用selenium和PhantomJS模拟登录QQ空间。

3. 使用requests库重发请求。

进入QQ邮箱,点击左侧通讯录,然后点击导出联系人文件

使用csv模块读取csv文件,并获取所有QQ号。

import csv

def get_qq():

with open('qq.csv') as f:

qq_num = []

for row in csv.reader(f):

qq_num.append(row[3].split('@')[0])

进入QQ空间,打开浏览器开发者工具,点击“说说”时,会看到浏览器发送了这样一个请求

返回内容为类似json格式的字符串,total为说说总数,可以通过total算出总页数

msglist是所有说说的内容列表,点开后是以下格式,属性看字面意思就可以

接下来分析http请求参数

其中uin和host_uin是访问空间的qq账号,pos为(页码-1)*20

g_tk和qzonetoken是签名

g_tk根据cookies['p_skey']获取,算法如下

def get_gtk(cookies):

hashes = 5381

for letter in cookies['p_skey']:

hashes += (hashes << 5) + ord(letter)

qzonetoken可以在html页面查看

使用selenium和PhantomJS登录QQ空间,获取cookie gtk qzonetoken

import re

def

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值