教你用Python获取qq好友备注名称

本文介绍了如何使用Python结合requests和json模块获取QQ邮箱中的QQ好友备注信息。首先,通过Chrome浏览器抓包获取接口参数,然后发送HTTP请求获取数据,接着处理HTML格式的数据,删除无关部分,最后解析出QQ号码、昵称和备注信息。这个过程适合Python初学者,有助于提升网络爬虫技能。
摘要由CSDN通过智能技术生成

Python作为一种编程语言,超级多的库能够帮助我们完成很多繁琐的工作,今天小千就来教大家如何去利用Python获取qq好友的备注信息。

      首先这个问题并不是很难,我们需要准备好一些工具,使用到requests模块通过接口获取到你的qq好友列表,然后使用json模块对获取到的数据进行处理或得到我们需要的好友备注信息。

      一、通过对qq邮箱的抓包获取好友接口参数

      1、chrome浏览器打开并登录qq邮箱

      2、右键选择检查->network,勾选preserve log和XHR

      3、点击发件,刷新页面

      4、network中查找下图标注的请求,获取右侧红圈中的参数

1

      二、使用python+requests+json实现接口数据的获取

      1、使用vscode创建一个getData.py文件,输入如下

      import selenium

      import json

      import requests

      #先执行这两句,获取qq好友接口的基础数据

      url = "https://mail.qq.com/cgi-bin/laddr_lastlist?sid=_N9h8WEQverG-WQE&encode_type=js&t=addr_datanew&s=AutoComplete&category=hot&resp_charset=UTF8&ef=js&r=0.7813506303520998"

      headers = {"Cookie":"pgv_pvid=1219452623; RK=hW4Q1eRa/h;ptcz=6814329ad9d42214c6e617d3db2fcb23ab98f1ac447d0a7c414c7f3c44c0187e; luin=o2572652583; lskey=00010000394c8f52351da20a1102ee9ccb7715ed35a2542daf45ae70eba3aaeb105c3a4ec78e61dbf54317a6;o_cookie=2572652583; pac_uid=1_2572652583;iip=0; tvfe_boss_uuid=3f54e47106c5d02f; uin=o2572652583; skey=@SztvC8mI4; p_uin=o2572652583;pt4_token=iVOlGPh6m0C-WTNCPC5wRWA0V-yTfuXVhSXeRrQ0qA0_; p_skey=W*PrX2*MIQwVgsO-iKniPDmG7Go9NipopyF3Hjsp-1Y_; wimrefreshrun=0&; qm_logintype=qq; qm_antisky=-1722314713&70029e2befa715a33cc0e5cc2b0f51c045abaf8365d1ce447dbf1d61994fbcfe; qm_flag=0; qqmail_alias=2572652583@qq.com;sid=-1722314713&fafea65f80cffe68b62217baea7b3ecd,qVypQclgyKk1JUXdWZ3NPLWlLbmlQRG1HN0dvOU5pcG9weUYzSGpzcC0xWV8.; qm_username=2572652583; new_mail_num=-1722314713&0; qm_domain=https://mail.qq.com; qm_ptsk=-1722314713&@SztvC8mI4; qm_ptlsk=-1722314713&00010000394c8f52351da20a1102ee9ccb7715ed35a2542daf45ae70eba3aaeb105c3a4ec78e61dbf54317a6; foxacc=-1722314713&1; ssl_edition=sail.qq.com; edition=mail.qq.com; qm_loginfrom=-1722314713&clientread; username=-1722314713&2572652583;xm_uin=13102663597527079; xm_sid=zSdER4yQVWouV3puAJlfMQAA; xm_skey=13102663597527079&91d9aa3df6b4935435da118a49f4dba0; webp=1; CCSHOW=000000",

      "Referer":"https://mail.qq.com/zh_CN/htmledition/ajax_proxy.html?mail.qq.com&v=140521",

      "Host":"mail.qq.com"

      }

      res = requests.get(url,headers=headers)

      with open(r"./qqList.json","a+",encoding="utf-8") as f:

      f.write(res.text)

      2、将获取的数据文件进行处理

      因为该接口返回的数据类型是HTML,我们需要对保存的json文件进行处理 。

      将qqList.json文件中的:({timeuse:["286"],sortbyupdatetime : 部分内容删除掉,对应后面也要删除对应的符号 , 只保留这种结构的数据:[[],[],.............................[]]

      在执行json转格式的时候,会又decodeError问题,需要删除文件中的一些字符如:??、\x等,可以根据提示信息进行调试

2

      3、对上一步的数据进行分析

      通过分析,上图列表中:

      第三列是qq邮箱(可以处理出对应的qq号码)

      第四列是该qq号昵称

      第九列是该qq的备注信息

3

      4、控制台查看获取的qq好友列表,也可以直接写入文件

4

      最后同学们学习Python,可以参考千锋成都Python培训班推出的Python学习路线,结合千锋成都名师精心录制的全套Python视频教程,可以让你对学习Python需要掌握的知识有个清晰的了解,并快速入门Python开发。

  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值