一、qqsdk python库
QQ社工库中的qqsdk python库可以帮助开发者调用API获取QQ用户信息,登录态和原始信息并进行相应的处理。
import qqsdk
qqsdk.tservice.qqLogin('qq号', '密码')
qqsdk.tservice.tcaptcha('key', 'session_id')
qqsdk.tservice.getQzoneFriends()
通过这些函数可以方便地获取QQ好友、QQ空间好友、QQ群好友等信息,再根据需要进行进一步的数据处理。
二、qqwry IP库
qqwry IP库是一个可以快速定位IP地址的开源工具,QQ社工库中也集成了该库,方便用户进行IP地址相关的操作。
from qqwry import QQwry
q = QQwry()
q.load_file('path to qqwry.dat')
print(q['118.28.8.8'])
代码中加载了qqwry.dat文件,然后调用对象的__getitem__函数即可得到该IP地址对应的地理位置信息。
三、基本使用方法
首先需要准备一些基本参数:
import requests
url = 'https://ssl.ptlogin2.qq.com/check'
headers = {
'Referer': 'https://xui.ptlogin2.qq.com/cgi-bin/xlogin',
'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko)
Chrome/58.0.3029.110 Safari/537.36'
}
然后发送请求:
def check(uin, appid, verifycode, pt_verifysession_v1):
params = {
'regmaster': '',
'pt_tea': '1',
'pt_vcode': '1',
'uin': uin,
'appid': appid,
'js_ver': '10141',
'js_type': '1',
'login_sig': '',
'u1': 'https://qzs.qq.com/qzone/v5/loginsucc.html?para=izone',
'r': '0.27604282715541316',
'pt_verifysession_v1': pt_verifysession_v1,
'pt_randsalt': '2',
'pt_jstoken': '1718087344',
'pt_uistyle': '40'
}
resp = requests.get(url, headers=headers, params=params)
return resp.text.split("'")
uin = '123456'
appid = '123456'
verifycode = '1234'
pt_verifysession_v1 = 'abcdefgh'
check_result = check(uin, appid, verifycode, pt_verifysession_v1)
print(check_result)
通过以上步骤可以得到一串加密串,根据加密串再去请求相应的验证地址并最终得到登录态。
四、自定义开发
QQ社工库提供了API,需要先进行申请并获得相应的Token。
然后把获得的Token加入请求的headers中,如下所示:
headers = {
'Content-Type': 'application/json',
'Authorization': 'Bearer ' + token,
}
可以使用requests等Python HTTP库进行API调用。
最终可以得到如下结果:
import requests
url = 'https://api.qqsocang.com/user?qq=10086'
headers = {
'Content-Type': 'application/json',
'Authorization': 'Bearer your_token_here',
}
response = requests.get(url, headers=headers)
print(response.json())
以上即是自定义开发的基本操作,可以根据需求扩展API的使用。

