90后的你,Q龄几年了?

分享一个最近看到的Github项目。

项目介绍

近几年,由于微信的流行,大部分人不再频繁使用QQ,所以我们对于自己的QQ数据并不是特别了解。我相信,如果能够生成一份属于自己的QQ历史报告,那将是无比开心的一件事。

目前网上关于QQ的数据分析工具较少,原因是QQ相关接口比较复杂。而本程序的运行十分简单,具有良好的用户交互界面,只需要扫码登录一步操作即可。

由于相关的数据接口有访问限制,所以本程序并没有对QQ好友进行分析。

效果展示

上下滑动查看更多

实现思路

本程序分为多个模块,模块如下:

1.main.py,主程序,用于获取并处理相关数据,并导出数据报告。

首先,初始化相关文件夹,并调用qq_bot.py模块,定义一个qq bot对象,该对象为本程序的核心对象,所有数据获取均从该对象获取。

登录成功后,开始获取该登录账户的详细资料,接着,获取所有qq好友的备注名和qq号,并获取所有群数据等等···

2.qq_bot.py, 核心模块,实现了qq相关的接口,较为复杂。

此模块实现了获取qq数据的接口,主要通过抓包获得数据、分析数据,对参数进行加密解密等。

首先,是模拟扫码登录id.qq.com,qun.qq.com,qzone.qq.com。三者登录方式大同小异,唯一有区别的就是提交数据中的参数加密方式不同。

3.tkinter_gui.py,绘制gui模块,使用tkinter绘制基本的交互界面。

这个模块是绘制基本的gui模块,采用python内置的tkinter模块完成,用法相当简单,这里就不详细讲了。

4.static_data.py,数据存储模块,所有数据采用base64编码存储。

这个模块主要是用来存储相关的数据的,在程序每次运行时,将该静态资源文件输出。这么做的原因是可以防止用户将某些静态数据给删除了,导致程序运行错误。

使用说明

1.登陆客户端

注意:需要扫3次图中的“二维码”

分别对应登陆id.qq.com,qun.qq.com,qzone.qq.com

2.等待一会,会在同目录下生成 .md文件。

3.查看生成报告(md文件)

可用notepad++或者sublime等工具

最终效果

源码地址

https://github.com/shengqiangzhang/examples-of-web-crawlers/tree/master/9.一键生成QQ个人历史报告

点击左下角,“阅读原文”直达。

本文分享自微信公众号 - 小詹学Python(xiaoxiaozhantongxue)

原文出处及转载信息见文内详细说明,如有侵权,请联系 yunjia_community@tencent.com 删除。

原始发表时间:2019-09-04

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏华章科技

糟了,我的上网记录被Python扒下来了!

长时间使用浏览器会积累大量浏览器历史记录,这些是很隐私的数据,里面甚至可能有一些不可描述的网站或者搜索记录不想让别人知道。不过,我们自己可能会感兴趣,天天都在上...

14250
来自专栏程序员成长充电站

比编程语言更重要的是什么?

在您真正了解语言之前,您必须学习许多不同的编程语言。出于本文的目的,我将把它们分成两个不同的类别:

8510
来自专栏互联网技术杂谈

谈谈Python多线程

简而言之,因为CPython的内存管理不是线程安全的,所以需要加一个全局解释锁来保障Python内部对象是线程安全的。

44810
来自专栏萌海无涯

Python之pygame学习绘制图片(8)

11620
来自专栏浊酒清味

Python分析红楼梦,宝玉和十二钗的人物关系

进行这十三个人物在整本书的出场率统计还是比较简单的,我们只需要在分词结束和统计相关人物出现的频率。值得注意的是,有两个因素可以影响最后的统计准确性:

25130
来自专栏爱写Bug

​LeetCode 394:字符串解码 Decode String

给定一个经过编码的字符串,返回它解码后的字符串。 Given an encoded string, return its decoded string.

13910
来自专栏华章科技

向Excel说再见,神级编辑器统一表格与Python

近日,开发者构建了名为 Grid studio 的开源项目,它是一个基于网页的表格应用,完全结合了 Python 和 Excel 的优势。

17710
来自专栏萌海无涯

Python之pygame学习绘制文字制作滚动文字(6)

blit(source,dest,area = None,special_flags = 0) - > Rect

31020
来自专栏华章科技

这把神器,让你用 Python 一口气掌握 53 种自然语言处理

今天的教程里,我就手把手带你在 Python 上使用 StanfordNLP,进行自然语言处理实战。

16540
来自专栏程序员成长充电站

从汇编语言到高级编程语言的演变

葛丽丝·霍普博士(作为美国海军军官,她是哈佛1号计算机的首批程序员之一)也遇到了这个问题,这台机器我们在前面提过。这台巨大机电野兽在 1944 年战时建造完成,...

14720

扫码关注云+社区

领取腾讯云代金券

年度创作总结 领取年终奖励