python解密微信聊天记录

这篇具有很好参考价值的文章主要介绍了python解密微信聊天记录。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

视频教程地址

https://www.bilibili.com/video/BV1uu4y1m78m/?vd_source=4d76e1f0894dd654b34fd69919cef992

第一步 备份微信聊天记录

以小米手机(MIUI14)为例,在设置中找到我的设备,
备份与恢复,选择备份微信

第二步 将备份同步至电脑

可以使用数据线或者其他方式将微信聊天的备份文件拷贝至电脑上

第三步 解压备份文件

将备份的.bak文件后缀改为 .zip,并且使用7-zip解压(WinRAR解压的结果不全)

第四步 获取当前手机的IME号

不同品牌手机获取IME号方式不同,例如小米手机可以在设置中搜索IME来获取,
每个手机默认有两个IME号码,获取到后记录下来

第五步 获取数据库存储位置以及密码

仅可获取备份微信时登录账户的数据库密码,其他账户无法获取
运行代码后会列举出所有可能的密码,请在下一步中解密过程中使用
import re
import os
import hashlib

# 获取当前路径下的所有文件以及文件夹名称
def GetFileName(path):
    dirs = os.listdir(path)
    return dirs

# 计算微信数据库的密码
def calculate_md5(string):
    md5_hash = hashlib.md5()
    md5_hash.update(string.encode('utf-8'))
    return md5_hash.hexdigest()

# 获取文件中uin,解密数据库密码的关键
def GetUin(path):
    uin=""
    with  open(path, 'r', encoding='UTF-8') as file_obj:
        lines = file_obj.readlines()
        for line in lines:
            if "auth_uin" in line:
                uin=re.compile('(?<=value=").*?(?=")').findall(str(line))[0]
    return uin

# 获取IME号,解密数据库的另一个核心参数
def GetKey(path):
    if not os.path.exists("IMELists.txt"):
        IMELists=["1234567890ABCDEF"]
        order=1
        while order==1:
            order=int(input("请输入要执行的指令:\n1.手动输入IME\t2.使用默认IME并停止输入\n:"))
            if order==1:
                IME=str(input("请输入IME号:\n"))
                IMELists.append(IME)
        with open("IMELists.txt", 'a', encoding='UTF-8') as file_obj:
            for IME in IMELists:
                file_obj.write(IME+"\n")
    lines=[]
    result=[]
    with  open("IMELists.txt", 'r', encoding='UTF-8') as file_obj:
        lines = file_obj.readlines()
    for line in lines:
        uin=GetUin(path)
        IME=str(line).strip()
        key=calculate_md5(IME+uin)
        result.append(key[0:7])
    return result

# 递归遍历当前目录下的所有文件和文件夹
def Visit(path):
    if os.path.isdir(path):
        path=path+'/'
        try:
            dirs=GetFileName(path)
            for dir in dirs:
                new_path=path+dir
                Visit(new_path)
        except Exception as e:
            print(e)
    else:
        if "auth_info_key_prefs.xml" in path:
            sqlkeys=GetKey(path)
            for key in sqlkeys:
                print("微信数据库密码可能为:", key)
        if "EnMicroMsg.db"==path[-13:]:
            path=str(path).replace("./","")
            print("微信聊天记录存储位置为:",path)

if __name__ == '__main__':
    Visit(".")
    input("键入任意内容回车后结束运行!")

第六步 使用sqlcipher.exe打开数据库

数据库文件的名称为EnMicroMsg.db,在上一步运行结果中有其对应的一个或者多个相对路径,请逐个尝试
输入上一步得到的多个密码,总有一个是正确的

微信聊天记录解密,python,微信,数据库,sqlite,密码学

	输入正确的密码后,会打开如下界面

微信聊天记录解密,python,微信,数据库,sqlite,密码学

聊天记录就存放在message表里面,如果你能熟练使用数据库的话,关联查询导出每个人的聊天记录就好了,更多的功能我会在下一篇文章中实现

下载链接

sqlcipher.exe在下面的链接中,请自行获取
如果没有python运行环境,或者某些库无法安装,我这里有编译好的文件
下载链接:https://www.aliyundrive.com/s/n8Sw7yd2ks4

参考链接

链接: 傻瓜教程:使用小米系列手机提取微信聊天记录并制作词云图

链接: 手机端微信聊天记录数据库解密过程文章来源地址https://www.toymoban.com/news/detail-723145.html

到了这里,关于python解密微信聊天记录的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包赞助服务器费用

相关文章

  • Unity 好友列表、聊天记录使用本地数据库储存 --SimpleSQL SQLite

    Unity 好友列表、聊天记录使用本地数据库储存 --SimpleSQL SQLite

            Unity官方提供提供了插件 SimpleSQL,使用的是SQLite本地数据库的功能,插件这里就不做过多介绍了,移步Unity AssetStore 自行查看吧 SimpleSQL | 整合 | Unity Asset Store         这里主要讲一下插件的用法和我们在实际开发功能中需要用到的东西         聊天系统,一台设备

    2024年04月11日
    浏览(260)
  • chatgpt赋能python:Python如何获取微信聊天记录

    作为世界上最受欢迎的即时通讯工具之一,微信被大量用户使用。然而,微信聊天记录的备份和管理是一个重要的问题,特别是对于那些需要在工作和个人生活中快速查找重要信息的人来说。 幸运的是,Python编程语言提供了一个可靠且快速的方法来抓取微信聊天记录。在本文

    2024年02月13日
    浏览(36)
  • python微信PC端自动化-获取聊天记录

    目前已有许多微信客户端的自动化工具,可供我们自动获取聊天记录、发送消息等等。不过微信网页版现在已无法登录,因此一些python库如itchat、wxpy等已经无法使用了(基于网页)。 现在有大佬开发出了一个好玩的微信自动化python库——wxauto。wxauto基于uiautomation、win32gui等自

    2024年02月03日
    浏览(34)
  • chatgpt赋能python:Python如何获取微信聊天记录:详细教程

    在当前的数字时代,如何快速、便捷地获取信息是困扰每个人的问题。随着移动互联网的发展,微信成为了人们交流沟通的主要工具之一。在这样的背景下,如何获取微信聊天记录成为了一项非常重要的技能,在某些场合中甚至会被视为一种优势。 Python在数据分析、爬虫、网

    2024年02月07日
    浏览(36)
  • QT聊天室阶段性记录(完善中:注册功能,数据库存储)
  • 基于Python的微信聊天记录分析——可视化方法与主题模型构建

    基于Python的微信聊天记录分析——可视化方法与主题模型构建

    本篇为《基于Python的微信聊天记录分析》系列的第三篇,主要讲解在Python环境下对聊天记录进行进一步的可视化,并对聊天内容进行初步挖掘,涉及聊天记录可视化方法、主题模型构建等内容。希望和大家多多交流,共同进步!  在上一篇中,我们将聊天记录统计分析的结果

    2024年04月12日
    浏览(38)
  • 删掉微信聊天记录怎么恢复 ?怎么恢复微信聊天记录?

    删掉微信聊天记录怎么恢复 ?怎么恢复微信聊天记录?

    这个问题没有确定的答案,因为恢复取决于许多因素,包括删除聊天记录的时间以及使用的设备类型。但是,有几种方法可以成功恢复已删除的微信历史记录,例如使用数据恢复软件或联系客户支持。 如果你想将微信历史转移到另一台设备上,第二种方法非常有用。如果您需

    2024年02月01日
    浏览(37)
  • 怎么恢复微信聊天记录

    微信是一款非常受欢迎的社交软件,它可以让我们轻松跟朋友聊天,分享照片和视频,也可以让我们随时随地了解最新的新闻和信息。然而,如果您丢失了微信聊天记录,你会发现无法恢复。在本文中,我们将介绍 怎么恢复微信聊天记录 。 第一种方法:通过微信自带的 聊天

    2024年02月08日
    浏览(35)
  • 信息搜集-读取微信聊天记录

    信息搜集-读取微信聊天记录

    在攻防演练的钓鱼上线后,如果被钓的人使用微信,这时候可以通过读取微信里的聊天记录进行进一步搜集。 使用公开Github项目 https://github.com/AdminTest0/SharpWxDump 编译命令:C:WindowsMicrosoft.NETFrameworkv4.0.30319csc.exe .Program.cs /platform:x86 首先获取微信的Wechatkey ==》找到对应聊天

    2023年04月10日
    浏览(42)
  • 微信聊天记录导出(华为手机版)

    关于微信记录导出的有比较多的方法, 在这里进行汇总下, 以下都是经过我亲测可行的, 不要去买一些付费的软件, 自己手动操作下就好啦 主要参考这两篇文章: 微信聊天记录导出为电脑txt文件教程 微信聊天记录导出(2020新版) 具体步骤: 1.先登录电脑版微信 2.备份与迁移, 选择备

    2024年02月09日
    浏览(34)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包