PyWxDump/doc/UserGuide.md
2023-12-15 09:31:16 +08:00

8.1 KiB
Raw Blame History

用户指南

小白教程

1. 安装

下载release中的exe文件

2. 使用

  • 1.打开微信电脑版,登录微信
  • 2.进入下载的exe文件所在目录
  • 3.按住shift键同时鼠标右键选择“在此处打开命令窗口”或者“在此处打开powershell窗口”
  • 4.将文件夹中的exe文件拖动到命令窗口中回车键确认 命令窗口会显示 "C:\Users\...\wxdump.exe" 这样的字样,表示已经成功输入命令
  • 5.接着根据提示输入参数,回车键确认 eg: "C:\Users\...\wxdump.exe" 为第4步中拖动到窗口中显示的内容。
"C:\Users\...\wxdump.exe" info # 获取微信信息
"C:\Users\...\wxdump.exe" decrypt -k "密钥" -i "数据库路径(目录or文件)" # 解密微信数据库,引号必须在英文状态下输入
"C:\Users\...\wxdump.exe" dbshow -msg "解密后的 MSG.db 的路径" -micro "解密后的 MicroMsg.db 的路径" -media "解密后的 MediaMSG.db 的路径" # 接着打开浏览器访问 http://127.0.0.1:5000/ 查看聊天记录
"C:\Users\...\wxdump.exe" export -u "微信账号" -o "导出路径" -msg "解密后的 MSG.db 的路径" -micro "解密后的 MicroMsg.db 的路径" -media "解密后的 MediaMSG.db 的路径" # 导出聊天记录为html
"C:\Users\...\wxdump.exe" all # 获取微信信息,解密微信数据库,查看聊天记录
  • 6.查看聊天记录后,按ctrl+c退出

详细教程(小白请看上面)

1. 安装

1.1 从pypi安装(安装稳定版)

pip install -U pywxdump

1.2 从源码安装(安装最新版)

pip install -U git+git://github.com/xaoyaoo/PyWxDump.git

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

1.3 打包可执行文件exe

cd tests
python build_exe.py
# 接着执行输出的打包脚本
  • 直接下载打包好的exe文件release

2. 使用

2.1 命令行

激活虚拟环境后(如果有的话),在项目根目录下运行:

wxdump 模式 [参数]
#  运行模式(mode):
#    bias      获取微信基址偏移
#    info      获取微信信息
#    db_path   获取微信文件夹路径
#    decrypt   解密微信数据库
#    dbshow    聊天记录查看
#    export    聊天记录导出为html
#    all       获取微信信息,解密微信数据库,查看聊天记录

示例

点击展开示例

以下是示例命令:

获取微信基址偏移
pywxdump bias --mobile <手机号> --name <微信昵称> --account <微信账号> [--key <密钥>] [--db_path <已登录账号的微信文件夹路径>] [--version_list_path <微信版本偏移文件路径>]
获取微信信息
pywxdump info [--version_list_path <微信版本偏移文件路径>]
获取微信文件夹路径
pywxdump db_path [-r <需要的数据库名称>] [-wf <WeChat Files 路径>] [-id <wxid_>] 
解密微信数据库
pywxdump decrypt -k <密钥> -i <数据库路径(目录or文件)> [-o <输出路径>]
查看聊天记录
pywxdump dbshow -msg <解密后的 MSG.db 的路径> -micro <解密后的 MicroMsg.db 的路径> -media <解密后的 MediaMSG.db 的路径> [-fs <FileStorage 路径>]
导出聊天记录为 HTML
pywxdump export -u <微信账号> -o <导出路径> -msg <解密后的 MSG.db 的路径> -micro <解密后的 MicroMsg.db 的路径> -media <解密后的 MediaMSG.db 的路径> [-fs <FileStorage 路径>]
获取微信信息、解密数据库、查看聊天记录一条命令搞定开放端口5000浏览器访问查看聊天记录支持局域网其他机器访问
pywxdump all

2.2 python API

import调用示例

点击展开示例
# 单独使用各模块,返回值一般为字典,参数参考命令行
from pywxdump import *

# ************************************************************************************************ #
# 获取微信基址偏移
args = {
    "mode": "bias",
    "mobile": "13800138000",  # 手机号
    "name": "微信昵称",  # 微信昵称
    "account": "微信账号",  # 微信账号
    "key": "密钥",  # 密钥(可选)
    "db_path": "已登录账号的微信文件夹路径",  # 微信文件夹路径(可选)
    "version_list_path": "微信版本偏移文件路径"  # 微信版本偏移文件路径(可选)
}
bias_addr = BiasAddr(args["account"], args["mobile"], args["name"], args["key"], args["db_path"])
result = bias_addr.run(True, args["version_list_path"])
# ************************************************************************************************ #
# 获取微信信息
wx_info = read_info(VERSION_LIST, True)

# 获取微信文件夹路径
args = {
    "mode": "db_path",
    "require_list": "all",  # 需要的数据库名称(可选)
    "wx_files": "WeChat Files",  # 'WeChat Files'路径(可选)
    "wxid": "wxid_",  # wxid_用于确认用户文件夹可选
}
user_dirs = get_wechat_db(args["require_list"], args["wx_files"], args["wxid"], True)
# ************************************************************************************************ #
# 解密微信数据库
args = {
    "mode": "decrypt",
    "key": "密钥",  # 密钥
    "db_path": "数据库路径(目录or文件)",  # 数据库路径
    "out_path": "/path/to/decrypted"  # 输出路径(必须是目录)[默认为当前路径下decrypted文件夹]
}
result = batch_decrypt(args["key"], args["db_path"], args["out_path"], True)
# ************************************************************************************************ #
# 查看聊天记录
args = {
    "mode": "dbshow",
    "msg_path": "解密后的 MSG.db 的路径",  # 解密后的 MSG.db 的路径
    "micro_path": "解密后的 MicroMsg.db 的路径",  # 解密后的 MicroMsg.db 的路径
    "media_path": "解密后的 MediaMSG.db 的路径",  # 解密后的 MediaMSG.db 的路径
    "filestorage_path": "文件夹FileStorage的路径"  # 文件夹 FileStorage 的路径(用于显示图片)
}
from flask import Flask, request, jsonify, render_template, g
import logging

app = Flask(__name__, template_folder='./show_chat/templates')
app.logger.setLevel(logging.ERROR)


@app.before_request
def before_request():
    g.MSG_ALL_db_path = args["msg_path"]
    g.MicroMsg_db_path = args["micro_path"]
    g.MediaMSG_all_db_path = args["media_path"]
    g.FileStorage_path = args["filestorage_path"]
    g.USER_LIST = get_user_list(args["msg_path"], args["micro_path"])


app.register_blueprint(app_show_chat)
print("[+] 请使用浏览器访问 http://127.0.0.1:5000/ 查看聊天记录")
app.run(debug=False)
# ************************************************************************************************ #
# 导出聊天记录为 HTML
args = {
    "mode": "export",
    "username": "微信账号",  # 微信账号(聊天对象账号)
    "outpath": "/path/to/export",  # 导出路径
    "msg_path": "解密后的 MSG.db 的路径",  # 解密后的 MSG.db 的路径
    "micro_path": "解密后的 MicroMsg.db 的路径",  # 解密后的 MicroMsg.db 的路径
    "media_path": "解密后的 MediaMSG.db 的路径",  # 解密后的 MediaMSG.db 的路径
    "filestorage_path": "文件夹FileStorage的路径"  # 文件夹 FileStorage 的路径(用于显示图片)
}
export(args["username"], args["outpath"], args["msg_path"], args["micro_path"], args["media_path"],
       args["filestorage_path"])

更多使用方法参考tests文件夹下的test_*.py文件

2.3 可执行文件exe

进入exe文件所在目录运行 wxdump.exe 模式 [参数],方法同命令行

3. FAQ

详见FAQ

4. 更新日志

详见更新日志

5. 其他

qq群密码请查看FAQ