Giter Club home page Giter Club logo

pywxdump's Introduction

中文 English

PyWxDump

Python GitHub code size in bytes GitHub all releases GitHub stars GitHub forks GitHub issues

PyPI Wheel PyPI-Downloads GitHub license

V3.0.* 有很多bug,如果你有问题,请使用V2.4.71版本,或者等待后续版本(发现bug请提交issue)

  • Welcome to provide more ideas or code to improve this project together.

If you are a novice, please pay attention to the Official Accounts: 逍遥之芯 (the QR code is below), and reply: PyWxDump to get a picture text tutorial.

If you have any questions, please check first: FAQ Whether there is an answer, or follow the Official Accounts to reply: FAQ.

QQ GROUP:276392799 or 276392799(PASSWORD,please read:UserGuide.md).

the Official Accounts

I. Project Introduction

1. Brief Introduction

PyWxDump is a tool for obtaining wx account information (nicknames/accounts/phones/emails/database keys), decrypting databases, viewing wx chat, and exporting chat as html backups.

  • Super eager for stars, if you've come across this project, please give me a Star! Thank you so much~

2. Feature

2.1 Core

  • (1) Get the **base address offset ** of WeChat nickname, WeChat account, WeChat phone number, WeChat email, and WeChat KEY
  • (2) Get the WeChat nickname, WeChat account, WeChat phone number, WeChat email, WeChat KEY, WeChat original ID (wxid_******), and WeChat folder path of the currently logged-in WeChat
  • (3) Decrypt WeChat database based on key
  • (4) Combine multiple types of databases for unified viewing

2.2 Extend Function

  • (1) View chat history through the web
  • (2) Support exporting chat logs as html, csv, and backing up WeChat chat logs
  • (3) Remote viewing of WeChat chat history (must be network accessible, such as a local area network)

2.3 Document Class

  • (1) Provide descriptions of some fields in the database
  • (2) Provide CE to obtain the base address offset method
  • (3) Provide a decryption method for MAC database

2.4 Other functions

  • (1) Added a minimalist version of pywxdumpmini, which provides only the ability to obtain database keys and database locations
  • (2) Support multiple WeChat opening scenarios, obtain multiple user information, etc.

Utilize the scene

  1. Network security...
  2. Daily backup archiving
  3. View chat history remotely (view chat history through the web)
  4. Wait...............

3. Update plan

  • 1.Analyze chat logs of each person and generate word clouds.
  • 2.Analyze the number of chats per person per day and generate a line chart (day-number of chats)
  • 3.Analyze the monthly and annual chat volume of different people and generate a line chart
  • 4.Generate annual visualization reports
  • 8.Increase support for enterprise WeChat
  • 12.Viewing and backing up of the circle of friends
  • 13.Clean up WeChat storage space and reduce the space occupied by WeChat (hopefully by selecting a person or group and finding out the media files involved in the chat logs of this group, such as pictures, videos, files, voice recordings, etc., and selectively (such as time periods) or batch-wise clearing them from the computer's cache by group conversation.)
  • 14.Automatically send messages to specified people through UI control

4. Other

PyWxDump is a refactored python language version of SharpWxDump, with many new features added.

  • Project address: https://github.com/xaoyaoo/PyWxDump
  • Currently tested only under Windows, there may be issues under mac and Linux.
  • If you find any missing or incorrect information, bugs, or suggestions for improvement in the version_list.json, please submit an issue on GitHub.
  • For common issues, please refer to FAQ, and for the update log, please refer to CHANGELOG
  • Web UI repository location wxdump_web
  • If you are interested in the implementation principle of wxdump, please pay attention to the Official Accounts: 逍遥之芯, reply: 原理 to get the principle analysis.
  • 💖 Support Me

5. Star History

click to expand

Star History Chart

Ⅱ. Instructions For Use

  • Detailed instructions, see: UserGuide.md

  • the minimalist version, see: pywxdumpmini

  • If you want to modify the UI, clone the wx_dump_web and modify it as needed (the UI is developed using VUE+ElementUI)

【注】:

  • For obtaining the base address using cheat engine, refer to CE obtaining base address.md (This method can be replaced by the wxdump bias command, and is only used for learning principles.)
  • For database parsing, refer to wx database brief.md

Ⅲ. Disclaimer (VERY VERY VERY IMPORTANT ! ! ! ! ! !)

1. Purpose of use

  • This project is only for learning and communication purposes, please do not use it for illegal purposes, please do not use it for illegal purposes, **please do not use it for illegal purposes **, otherwise the consequences will be borne by yourself.
  • Users understand and agree that any violation of laws and regulations, infringement of the legitimate rights and interests of others, is unrelated to this project and its developers, and the consequences are borne by the user themselves.

2. Usage Period

  • You should delete the source code and (compiled) program of this project within 24 hours of downloading, saving, compiling, and using it; any use beyond this period is not related to this project or its developer.

3. Operation specifications

  • This project only allows backup and viewing of the database under authorization. It is strictly prohibited for illegal purposes, otherwise all related responsibilities will be borne by the user. Any legal liability incurred by the user due to violation of this regulation will be borne by the user, and is unrelated to this project and its developer.
  • It is strictly prohibited to use it to steal others' privacy. Otherwise, all relevant responsibilities shall be borne by yourself.
  • It is strictly prohibited to conduct secondary development, otherwise all related responsibilities shall be borne by yourself.

4. Acceptance of Disclaimer

  • Downloading, saving, further browsing the source code, or downloading, installing, compiling, and using this program indicates that you agree with this warning and promise to abide by it;

5. Forbidden for illegal testing or penetration

  • It is prohibited to use the relevant technologies of this project to engage in illegal testing or penetration, and it is prohibited to use the relevant codes or related technologies of this project to engage in any illegal work. Any adverse consequences arising therefrom are not related to this project and its developers.
  • Any resulting adverse consequences, including but not limited to data leakage, system failure, and privacy infringement, are not related to this project or its developers and are the responsibility of the user.

6. Modification of disclaimer

  • This disclaimer may be modified and adjusted based on the project's operating conditions and changes in laws and regulations. Users should regularly check this page for the latest version of the disclaimer, and should comply with the latest version of the disclaimer when using this project.

7. Others

  • In addition to the provisions of this disclaimer, users should comply with relevant laws, regulations, and ethical norms during the use of this project. The project and its developers will not be held responsible for any disputes or losses caused by users' violation of relevant regulations.

  • Users are requested to carefully read and understand all contents of this disclaimer, and ensure that they strictly comply with relevant regulations when using this project.

Ⅳ. 免责声明(非常重要!!!!!!!)

1. 使用目的

  • 本项目仅供学习交流使用,请勿用于非法用途请勿用于非法用途请勿用于非法用途,否则后果自负。
  • 用户理解并同意,任何违反法律法规、侵犯他人合法权益的行为,均与本项目及其开发者无关,后果由用户自行承担。

2. 使用期限

  • 您应该在下载保存,编译使用本项目的24小时内,删除本项目的源代码和(编译出的)程序;超出此期限的任何使用行为,一概与本项目及其开发者无关。

3. 操作规范

  • 本项目仅允许在授权情况下对数据库进行备份与查看,严禁用于非法目的,否则自行承担所有相关责任;用户如因违反此规定而引发的任何法律责任,将由用户自行承担,与本项目及其开发者无关。
  • 严禁用于窃取他人隐私,严禁用于窃取他人隐私,严禁用于窃取他人隐私,否则自行承担所有相关责任。
  • 严禁进行二次开发,严禁进行二次开发,严禁进行二次开发,否则自行承担所有相关责任。

4. 免责声明接受

  • 下载、保存、进一步浏览源代码或者下载安装、编译使用本程序,表示你同意本警告,并承诺遵守它;

5. 禁止用于非法测试或渗透

  • 禁止利用本项目的相关技术从事非法测试或渗透,禁止利用本项目的相关代码或相关技术从事任何非法工作,如因此产生的一切不良后果与本项目及其开发者无关。
  • 任何因此产生的不良后果,包括但不限于数据泄露、系统瘫痪、侵犯隐私等,均与本项目及其开发者无关,责任由用户自行承担。

6. 免责声明修改

  • 本免责声明可能根据项目运行情况和法律法规的变化进行修改和调整。用户应定期查阅本页面以获取最新版本的免责声明,使用本项目时应遵守最新版本的免责声明。

7. 其他

  • 除本免责声明规定外,用户在使用本项目过程中应遵守相关的法律法规和道德规范。对于因用户违反相关规定而引发的任何纠纷或损失,本项目及其开发者不承担任何责任。

  • 请用户慎重阅读并理解本免责声明的所有内容,确保在使用本项目时严格遵守相关规定。

Ⅴ. Acknowledgments

PyWxDump CONTRIBUTORSUI CONTRIBUTORS

pywxdump's People

Contributors

admintest0 avatar guduwenjiu avatar hz1624917200 avatar lvtomatoj avatar smlight avatar sunhanaix avatar xaoyaoo avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

pywxdump's Issues

提示不支持的版本

问题描述
提示不支持的版本

微信截图_20231221141957

环境信息

  • pywxdump版本:最新版
  • 操作系统版本:windowns11
  • python版本:3.12.1
  • 微信版本:3.9.8.25

获取用户名失败

请问通过CE要如何获取3.9.6和3.9.7版本的用户名呢?获取昵称和手机号都很顺利,但没办法获取到用户名。(也尝试过了文档种提供的方式,通过历史key来获取,但是脚本一直在运行中,无法获取到任何信息——此时脚已运行半小时)

手机号获取成功,key获取失败

================================
[+] pid: 8xxxx
[+] version: 3.9.0.28
[+] account: �
[+] mobile: 13xxxxxxxx
[+] name: null
Traceback (most recent call last):
File "get_wx_info.py", line 100, in
print(f"[+] {k:>7}: {v}")
UnicodeEncodeError: 'gbk' codec can't encode character '\u030d' in position 24: illegal multibyte sequence

请问有什么原因会导致此问题出现。 获取到部分信息 key获取的为空

部分聊天记录无法查看

问题描述
能查看一部分好友的俩天记录,大部分在界面点击联系人后右侧为Internal Server Error
1701746205075

复现步骤
.\pywxdump dbshow -msg 'D:\Program Files (x86)\app\DataBase\Msg\MSG.db' -micro 'D:\Program Files (x86)\app\DataBase\Msg\MicroMsg.db' -media 'D:\Program Files (x86)\app\DataBase\Msg\MediaMSG0.db' -fs 'D:\Program Files (x86)\app\DataBase\Msg'
成功解密
生成多个MSG.db文件,但是一次运行只能选择一个,不确定是不是问题所在
界面如图所示,终端报错:
127.0.0.1 - - [05/Dec/2023 11:12:59] "GET /get_chat_data?username=wxid_xxxxx&page=541&limit=100 HTTP/1.1" 500 - 127.0.0.1 - - [05/Dec/2023 11:16:13] "GET /get_chat_data?username=wxid_xxxxx&page=47&limit=100 HTTP/1.1" 200 - [2023-12-05 11:16:22,383] ERROR in app: Exception on /get_chat_data [GET] Traceback (most recent call last): File "flask\app.py", line 1455, in wsgi_app File "flask\app.py", line 869, in full_dispatch_request File "flask\app.py", line 867, in full_dispatch_request File "flask\app.py", line 852, in dispatch_request File "pywxdump\show_chat\main_window.py", line 242, in get_chat_data File "pywxdump\show_chat\main_window.py", line 145, in load_chat_records AttributeError: 'NoneType' object has no attribute 'rsplit' 127.0.0.1 - - [05/Dec/2023 11:16:22] "GET /get_chat_data?username=wxid_xxxxx&page=10&limit=100 HTTP/1.1" 500 -

如何获取微信联系人总数

问题描述
请在此处提供对问题的详细描述。
image

复现步骤
请提供重现问题所需的步骤。(执行的命令)

  1. 步骤 1
  2. 步骤 2
  3. 步骤 3

预期行为
请清楚地描述您预期的行为。

实际行为
请描述实际的行为和问题出现的地方。

环境信息

  • pywxdump版本:
  • 操作系统版本:
  • python版本:
  • 微信版本:

其他信息
请提供任何与问题相关的其他信息(文字,截图等)。

解密成功,但是网页访问错误

问题描述
解密成功,但是网页访问错误

复现步骤
预期行为
实际行为
image
image

环境信息

  • pywxdump版本: v2.3.10

  • 操作系统版本:
    image

  • python版本:使用的打包版本,电脑中有多个python实体和虚拟环境
    image

  • 微信版本:3.6.0.0

运行报错

`[*] 解密中...(用时较久,耐心等待)
Traceback (most recent call last):
File "C:\Users\Administrator\AppData\Local\JetBrains\Toolbox\apps\PyCharm-P\ch-1\231.9225.15\plugins\python\helpers\pydev\pydevd.py", line 1496, in _exec
pydev_imports.execfile(file, globals, locals) # execute the script
File "C:\Users\Administrator\AppData\Local\JetBrains\Toolbox\apps\PyCharm-P\ch-1\231.9225.15\plugins\python\helpers\pydev_pydev_imps_pydev_execfile.py", line 18, in execfile
exec(compile(contents+"\n", file, 'exec'), glob, loc)
File "C:\Users\Administrator\PycharmProjects\PyWxDump\pywxdump\command.py", line 265, in
console_run()
File "C:\Users\Administrator\PycharmProjects\PyWxDump\pywxdump\command.py", line 261, in console_run
main_all.run(args)
File "C:\Users\Administrator\PycharmProjects\PyWxDump\pywxdump\command.py", line 192, in run
if isinstance(v[i], list):
IndexError: string index out of range

Process finished with exit code 1
`

pycryptodome 安装好了以后,还是报错,大佬应该怎么解决。

python -m pip install --proxy http://127.0.0.1:7890 pycryptodome --user
Collecting pycryptodome
Using cached pycryptodome-3.19.0-cp35-abi3-win_amd64.whl (1.7 MB)
Installing collected packages: pycryptodome
Successfully installed pycryptodome-3.19.0

[notice] A new release of pip is available: 23.0.1 -> 23.2.1
[notice] To update, run: python.exe -m pip install --upgrade pip

python.exe get_wx_decrypted_db.py --key
Traceback (most recent call last):
File "get_wx_decrypted_db.py", line 17, in
from decrypt import decrypt
File "decrypted\decrypt.py", line 6, in
from Cryptodome.Cipher import AES
ModuleNotFoundError: No module named 'Cryptodome'
环境是win10 python 版本3.7.3

多开情况下获取不到wxid和account

单开情况下能获取到完整字段信息;
多开两个微信时:
1. wxid都获取不到
2. account有时都获取不到,有时其中一个微信号的能获取到
3. 其他字段都正常

请教可能是什么原因导致的
微信图片_20231128121134

关于wx数据库,如何查看群聊中具体群成员的ID?

根据MSG数据库的解析,似乎我们只能获得群聊的ID也就是StrTalker, 那么如果要定位某一位群成员的聊天记录,似乎没有记录?
群成员的固定ID和聊天记录能定位到吗?请问如何定位和查找?
现在要分析聊天记录,只能分析整个群的,每个群成员的发言没法区分开来?
MSG
localId:字面意思消息在本地的 ID,暂未发现其功用
TalkerId:消息所在房间的 ID(该信息为猜测,猜测原因见 StrTalker 字段),与Name2ID对应。
MsgSvrID:猜测 Srv 可能是 Server 的缩写,代指服务器端存储的消息 ID
Type:消息类型,具体对照见表1
SubType:消息类型子分类,暂时未见其实际用途
IsSender:是否是自己发出的消息,也就是标记消息展示在对话页左边还是右边,取值0或1
CreateTime:消息创建时间的秒级时间戳。此处需要进一步实验来确认该时间具体标记的是哪个时间节点,个人猜测的规则如下:
从这台电脑上发出的消息:标记代表的是每个消息点下发送按钮的那一刻
从其它设备上发出的/收到的来自其它用户的消息:标记的是本地从服务器接收到这一消息的时间
Sequence:次序,虽然看起来像一个毫秒级时间戳但其实不是。这是CreateTime 字段末尾接上三位数字组成的,通常情况下为000,如果在出现两条CreateTime 相同的消息则最后三位依次递增。需要进一步确认不重复范围是在一个会话内还是所有会话。CreateTime 相同的消息则最后三位依次递增。需要进一步确认不重复范围是在一个会话内还是所有会话。
StatusEx、FlagEx、Status、MsgServerSeq、MsgSequence:这五个字段个人暂时没有分析出有效信息
StrTalker:消息发送者的微信号。特别说明,从这里来看的话,上面的TalkerId 字段大概率是指的消息所在的房间ID,而非发送者ID,当然也可能和TalkerId属于重复内容,这一点待确认。
StrContent:字符串格式的数据。特别说明的是,除了文本类型的消息外,别的大多类型这一字段都会是一段 XML 数据标记一些相关信息。通过解析xml可以得到更多的信息,例如图片的宽高、语音的时长等等。
DisplayContent:对于拍一拍,保存拍者和被拍者账号信息
Reserved0~6:这些字段也还没有分析出有效信息,也有的字段恒为空
CompressContent:字面意思是压缩的数据,实际上也就是微信任性不想存在 StrContent 里的数据在这里(例如带有引用的文本消息等;采用lz4压缩算法压缩)
BytesExtra:额外的二进制格式数据
BytesTrans:目前看这是一个恒为空的字段

打包注册成windows service后,获取wx_db目录失败

问题描述
打包注册成windows service后,获取wx_db目录失败

复现步骤
利用win32serviceutil.ServiceFramework注册成服务后,get_wechat_db方法中msg_dir获取失败,这行:

key = winreg.OpenKey(winreg.HKEY_CURRENT_USER, r"Software\Tencent\WeChat", 0, winreg.KEY_READ)

报" [WinError 2] 系统找不到指定的文件",直接执行是没问题的,一番查找资料没有收获,本人对python和windows的这个机制不是很清楚,想请教大家是不是有何解决办法,感谢~

环境信息

  • 操作系统版本:win10
  • python版本:3.11
  • 微信版本:3.9.7

[WinError 2] 系统找不到指定的文件

get_base_addr.py 抛出IndexError: list index out of range

PS C:\Users\Administrator\PyWxDump\Program> python .\get_base_addr.py --mobile 18***** --name ch******* --account *** --key **************
Traceback (most recent call last):
File "C:\Users\Administrator\PyWxDump\Program\get_base_addr.py", line 272, in
rdata = run(mobile, name, account, key)
File "C:\Users\Administrator\PyWxDump\Program\get_base_addr.py", line 245, in run
name_offset, account_offset, mobile_offset, _, key_offset = ba.get_offset()
File "C:\Users\Administrator\PyWxDump\Program\get_base_addr.py", line 225, in get_offset
account_offset = self.calculate_offset(self.account_addr[1])
IndexError: list index out of range

3.9.7.29 解密报错

问题描述
请在此处提供对问题的详细描述。

复现步骤
请提供重现问题所需的步骤。(执行的命令)

  1. 步骤 1
  2. 步骤 2
  3. 步骤 3

预期行为
请清楚地描述您预期的行为。

实际行为
请描述实际的行为和问题出现的地方。

环境信息

  • pywxdump版本: 2.1.11
  • 操作系统版本: win11
  • python版本:3.10
  • 微信版本:3.9.7.29

其他信息
File "D:\env\python310\lib\runpy.py", line 196, in _run_module_as_main
return _run_code(code, main_globals, None,
File "D:\env\python310\lib\runpy.py", line 86, in run_code
exec(code, run_globals)
File "D:\env\python310\Scripts\wxdump.exe_main
.py", line 7, in
File "D:\env\python310\lib\site-packages\pywxdump\command.py", line 260, in console_run
main_decrypt.run(args)
File "D:\env\python310\lib\site-packages\pywxdump\command.py", line 136, in run
result = batch_decrypt(key, db_path, out_path)
File "D:\env\python310\lib\site-packages\pywxdump\decrypted\decrypt.py", line 105, in batch_decrypt
result.append(decrypt(*i)) # 解密
File "D:\env\python310\lib\site-packages\pywxdump\decrypted\decrypt.py", line 33, in decrypt
mac_salt = bytes([(salt[i] ^ 58) for i in range(16)])
File "D:\env\python310\lib\site-packages\pywxdump\decrypted\decrypt.py", line 33, in
mac_salt = bytes([(salt[i] ^ 58) for i in range(16)])
IndexError: index out of range

请提供任何与问题相关的其他信息(文字,截图等)。
image

程序不能打包成一个exe格式的文件,免去安装,环境的限制?

问题描述
请在此处提供对问题的详细描述。

复现步骤
请提供重现问题所需的步骤。(执行的命令)

  1. 步骤 1
  2. 步骤 2
  3. 步骤 3

预期行为
请清楚地描述您预期的行为。

实际行为
请描述实际的行为和问题出现的地方。

环境信息

  • pywxdump版本:
  • 操作系统版本:
  • python版本:
  • 微信版本:

其他信息
请提供任何与问题相关的其他信息(文字,截图等)。

版本偏移添加

"3.9.7.15": [
63482696,
63484032,
63482504,
0,
63483968
],

顺便问一下,我有db文件,也有db文件对应的电脑的key,但是换了电脑以后就没办法使用当前代码进行解析了,知道解密key的规则是怎么计算的吗?

是否新的消息,必须重启微信才能获得?

1 运行了命令,解密了db
2 然后在微信端发送新的消息
3 再次运行命令,解密db覆盖
4 发现新发送的消息没有
5 重新登录微信,再次运行命令,解密db
6 刚才新发送的消息,出现在了db

是否新的消息,必须重启微信才能获得

wxdump 无法运行

G:\pywxdump>wxdump all
Traceback (most recent call last):
File "d:\bioinfor\anaconda3\lib\runpy.py", line 193, in _run_module_as_main
"main", mod_spec)
File "d:\bioinfor\anaconda3\lib\runpy.py", line 85, in run_code
exec(code, run_globals)
File "D:\bioinfor\Anaconda3\Scripts\wxdump.exe_main
.py", line 7, in
File "d:\bioinfor\anaconda3\lib\site-packages\pywxdump\command.py", line 261, in console_run
subparsers = parser.add_subparsers(dest="mode", help="""运行模式:""", required=True, metavar="mode")
File "d:\bioinfor\anaconda3\lib\argparse.py", line 1703, in add_subparsers
action = parsers_class(option_strings=[], **kwargs)
TypeError: init() got an unexpected keyword argument 'required'

sqlite3.OperationalError: unable to open database file

环境信息

  • pywxdump版本:PyWxDump 2.2.7
  • 操作系统版本:win11
  • python版本:Python310
  • 微信版本:version: 3.9.8.15

wxdump.exe dbshow -msg D:\1\123\123 -micro D:\1\123\123 -media D:\1\123\123 -fs D:\1\123\123
[+] 请使用浏览器访问 http://127.0.0.1:5000/ 查看聊天记录

  • Serving Flask app 'pywxdump.command'
  • Debug mode: off
    WARNING: This is a development server. Do not use it in a production deployment. Use a production WSGI server instead.
  • Running on http://127.0.0.1:5000
    Press CTRL+C to quit
    [2023-11-20 14:33:56,992] ERROR in app: Exception on / [GET]
    Traceback (most recent call last):
    File "C:\Users\16207\AppData\Local\Programs\Python\Python310\lib\site-packages\flask\app.py", line 1455, in wsgi_app
    response = self.full_dispatch_request()
    File "C:\Users\16207\AppData\Local\Programs\Python\Python310\lib\site-packages\flask\app.py", line 869, in full_dispatch_request
    rv = self.handle_user_exception(e)
    File "C:\Users\16207\AppData\Local\Programs\Python\Python310\lib\site-packages\flask\app.py", line 865, in full_dispatch_request
    rv = self.preprocess_request()
    File "C:\Users\16207\AppData\Local\Programs\Python\Python310\lib\site-packages\flask\app.py", line 1239, in preprocess_request
    rv = self.ensure_sync(before_func)()
    File "C:\Users\16207\AppData\Local\Programs\Python\Python310\lib\site-packages\pywxdump\command.py", line 164, in before_request
    g.USER_LIST = get_user_list(args.msg_path, args.micro_path)
    File "C:\Users\16207\AppData\Local\Programs\Python\Python310\lib\site-packages\pywxdump\show_chat\main_window.py", line 28, in get_user_list
    db1 = sqlite3.connect(MSG_ALL_db_path)
    sqlite3.OperationalError: unable to open database file
    127.0.0.1 - - [20/Nov/2023 14:33:57] "GET / HTTP/1.1" 500 -

AttributeError: 'Namespace' object has no attribute 'wf'

问题描述
请在此处提供对问题的详细描述。
D:\py>wxdump wx_db
Traceback (most recent call last):
File "D:\python38\lib\runpy.py", line 192, in _run_module_as_main
return _run_code(code, main_globals, None,
File "D:\python38\lib\runpy.py", line 85, in run_code
exec(code, run_globals)
File "D:\python38\Scripts\wxdump.exe_main
.py", line 7, in
File "D:\python38\lib\site-packages\pywxdump\command.py", line 258, in console_run
main_wx_db_path.run(args)
File "D:\python38\lib\site-packages\pywxdump\command.py", line 97, in run
msg_dir = args.wf
AttributeError: 'Namespace' object has no attribute 'wf'
复现步骤
请提供重现问题所需的步骤。(执行的命令)

  1. 步骤 1
  2. 步骤 2
  3. 步骤 3

预期行为
请清楚地描述您预期的行为。

实际行为
请描述实际的行为和问题出现的地方。

环境信息

  • pywxdump版本:
  • 操作系统版本:
  • python版本:3.8
  • 微信版本:

其他信息
请提供任何与问题相关的其他信息(文字,截图等)。

获取key后解密失败

兄弟你好,我获取了key后使用脚本解密,出来一串九位数密码,并提示password error,这该怎么搞,

parse.py 如何解析数据库内容

问题描述
parse.py 如何解析数据库内容

复现步骤

  • 运行如下命令后无任何反应
    image

环境信息

  • pywxdump版本:pywxdump 2.1.13
  • 操作系统版本:win10
  • python版本: -V:3.11 * Python 3.11 (64-bit)
  • 微信版本:3.9.8.15

微信聊天记录不全,好多好友的聊天纪录都没有在网页上显示是怎么回事

问题描述
请在此处提供对问题的详细描述。

复现步骤
请提供重现问题所需的步骤。(执行的命令)

  1. 步骤 1
  2. 步骤 2
  3. 步骤 3

预期行为
请清楚地描述您预期的行为。

实际行为
请描述实际的行为和问题出现的地方。

环境信息

  • pywxdump版本:
  • 操作系统版本:
  • python版本:
  • 微信版本:

其他信息
请提供任何与问题相关的其他信息(文字,截图等)。

拿不到MSG解密数据库

问题描述
拿不到MSG解密数据库

复现步骤
按照

git clone https://github.com/xaoyaoo/PyWxDump.git
cd PyWxDump
python -m pip install -U .

进行安装,运行wxdump all后,拿不到d_MSG.db数据库

预期行为
应该在文件夹下显示de_MSG.db文件

实际行为
实际并不现实

环境信息

  • pywxdump版本:pywxdump 2.1.13
  • 操作系统版本:win10
  • python版本: -V:3.11 * Python 3.11 (64-bit)
  • 微信版本:3.9.8.15

其他信息
请提供任何与问题相关的其他信息(文字,截图等)。
拿到其他的数据库了,好像唯独没有MSG.db
image

Decrypted.py 生成的文件是空文件

问题描述
在获取key后,手动下载Decrypted.py来破解db文件,得到的文件大小相等,但是里面是空的。

复现一下:

  1. 在电脑A(windows)上获取key。用的是hali.life的一个exe文件。(他的破解代码破解成功后文件依然加密,所以用了这里的破解代码。)
  2. 将微信的Msg文件夹传到B电脑(mac)
  3. 在B电脑上执行python Decrypted.py,破解并生成de_MSG0.db。期间未报错。
  4. 打开de_MSG0.db发现是空的

3.9.7.29 key获取存在问题

问题描述
3.9.7.29 key获取存在问题

复现步骤
通过bias_addr获取的地址获取的key,解密数据库时显示密码错误。

  1. 步骤 1
  2. 步骤 2
  3. 步骤 3

预期行为
请清楚地描述您预期的行为。

实际行为
请描述实际的行为和问题出现的地方。

环境信息

  • 操作系统版本:
  • python版本:
  • 微信版本:3.9.7.29

其他信息
请提供任何与问题相关的其他信息(文字,截图等)。

微信对于撤回消息的处理

问题描述
请问现在,微信对于撤回消息的处理,是已经不会保存了吗,还是说仅第一次接收数据的设备才存在?

预期行为
能够在 </revokemsg> 后面看到对应的撤回信息内容

实际行为
请描述实际的行为和问题出现的地方。

环境信息

  • pywxdump版本:2.3.21
  • 操作系统版本:win11
  • python版本:3.7
  • 微信版本:3.9.8.15

其他信息
请提供任何与问题相关的其他信息(文字,截图等)。

解密失败

解密数据库MicroMsg.db、MSG0.db均报错,只有一个微信

使用python单独运行模块:
get_wx_info获取微信基本信息:正常
get_bias_addr获取偏移地址 :正常

decrypt.py#数据库解密 报错:key*****Or out_path:'\decrypted.db') Error!

使用sqlcipher、Navicat等其他数据库工具填入64位key或8位偏移地址微信key均报错:密码或数据库错误

使用 pip install pywxdump 后

1. 获取基址偏移

from pywxdump.bias_addr import BiasAddr
bias_addr = BiasAddr(VERSION_LIST_PATH, VERSION_LIST).run()
报错:
Traceback (most recent call last):
File "", line 1, in
TypeError: BiasAddr.init() missing 3 required positional arguments: 'name', 'key', and 'db_path'

环境信息

  • pywxdump版本:最新
  • 操作系统版本:win10
  • python版本:3.12
  • 微信版本:3.9.7.29

麻烦大佬看下,key也算出来了,就是解密不了数据库,是不是新版本不适配了啊

关于python3.7打包exe问题

pyinstaller打包后,运行打包完成的exe会出现“ModuleNotFoundError: No module named 'importlib.metadata'”问题。

原因:
作者用的应该是高版本的python3。importlib.metadata这个库应该是改名了。高版本的库名叫做importlib.metadata,低版本的库名叫做importlib_metadata。

解决
python37打包exe需要把pywxdump库的cli.py文件中的importlib.metadata全部替换成importlib_metadata

pymem.exception.WinAPIError: Windows api error, error_code: 87

C:\Users\zittziai>wxdump info
Traceback (most recent call last):
File "c:\users\zittziai\appdata\local\programs\python\python38\lib\runpy.py", li
ne 194, in _run_module_as_main
return run_code(code, main_globals, None,
File "c:\users\zittziai\appdata\local\programs\python\python38\lib\runpy.py", li
ne 87, in run_code
exec(code, run_globals)
File "C:\Users\zittziai\AppData\Local\Programs\Python\Python38\Scripts\wxdump.ex
e_main
.py", line 7, in
File "c:\users\zittziai\appdata\local\programs\python\python38\lib\site-packages
\pywxdump\command.py", line 356, in console_run
modes[args.mode].run(args)
File "c:\users\zittziai\appdata\local\programs\python\python38\lib\site-packages
\pywxdump\command.py", line 62, in run
result = read_info(version_list, True) # 读取微信信息
File "c:\users\zittziai\appdata\local\programs\python\python38\lib\site-packages
\pywxdump\wx_info\get_wx_info.py", line 99, in read_info
tmp_rd['wxid'] = get_info_wxid(Handle, 64)
File "c:\users\zittziai\appdata\local\programs\python\python38\lib\site-packages
\pywxdump\wx_info\get_wx_info.py", line 29, in get_info_wxid
addrs = pymem.pattern.pattern_scan_all(pm.process_handle, b'wxid
', return_m
ultiple=True)
File "c:\users\zittziai\appdata\local\programs\python\python38\lib\site-packages
\pymem\pattern.py", line 162, in pattern_scan_all
next_region, page_found = scan_pattern_page(
File "c:\users\zittziai\appdata\local\programs\python\python38\lib\site-packages
\pymem\pattern.py", line 54, in scan_pattern_page
mbi = pymem.memory.virtual_query(handle, address)
File "c:\users\zittziai\appdata\local\programs\python\python38\lib\site-packages
\pymem\memory.py", line 1119, in virtual_query
raise pymem.exception.WinAPIError(error_code)
pymem.exception.WinAPIError: Windows api error, error_code: 87

环境信息

  • pywxdump版本:
  • 操作系统版本:Microsoft Windows [版本 6.1.7601]
  • python版本:python-3.8.6-amd64.exe
  • 微信版本:3.9.7.29

Mac版本

大佬,目前还没有mac版本么

可以拿到当前登录的微信有多少个联系人吗?

问题描述
请在此处提供对问题的详细描述。

复现步骤
请提供重现问题所需的步骤。(执行的命令)

  1. 步骤 1
  2. 步骤 2
  3. 步骤 3

预期行为
请清楚地描述您预期的行为。

实际行为
请描述实际的行为和问题出现的地方。

环境信息

  • pywxdump版本:
  • 操作系统版本:
  • python版本:
  • 微信版本:

其他信息
请提供任何与问题相关的其他信息(文字,截图等)。

有没有办法在不需要重新登录获取最新的消息

问题描述
大佬,我发现微信要重新登录一次才能在数据库中看到最新的消息,有没有办法在不需要重新登录获取最新的消息

复现步骤
请提供重现问题所需的步骤。(执行的命令)

  1. 步骤 1
  2. 步骤 2
  3. 步骤 3

预期行为
请清楚地描述您预期的行为。

实际行为
请描述实际的行为和问题出现的地方。

环境信息

  • pywxdump版本:2.3.25
  • 操作系统版本:windows10
  • python版本:python3.9
  • 微信版本:3.9.8.25

其他信息
请提供任何与问题相关的其他信息(文字,截图等)。

求助wxdump decrypt -i 报错

运行wxdump decrypt -i的时候 地址: -i C:\Users\Administrator\Documents\WeChat Files\wxid_vt1em1ipus7822\Msg
image
dan
是我填的数据库地址填错了吗,谢谢大佬

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.