Skip to content

FAQ #197

@sjzar

Description

@sjzar

ISSUE 里不少重复问题,这里专门开个 ISSUE 说明一下,非常感谢之前的热心网友们帮忙解答问题,给大家磕头了。

信息安全问题

首先得强调信息安全问题,制作这个工具的初衷是希望能够方便将自己的聊天记录接入大模型,但是这个行为本身是存在信息安全隐患的。

如果将聊天记录接入云端大模型进行总结分析,就意味着已经将聊天记录发给大模型了,对方是否留档甚至利用这些数据进行训练,我们是无法得知的。

日常生活中私聊发送的敏感信息(例如身份、支付等),如果发生泄露,后果还挺严重的,所以大家使用工具前,请充分了解信息安全风险。

请阅读 针对违规获取及利用微信终端用户数据行为的打击公告

无法获取密钥的问题

TLDR: "临时使用低版本获取密钥" => "继续使用新版本"

chatlog 获取密钥的原理,是读取微信程序的内存数据,匹配特征后尝试解密本地数据库文件。

在微信 Windows 4.0.3.36 & macOS 4.0.3.80 以上的版本中,密钥信息不再长时间保留在内存数据中,所以无法通过当前方案获取密钥。

密钥在相同大版本内是通用的,因为数据库文件使用密钥加密,更换密钥需要重新加密整个数据库,一般只在大版本更新时才会更换密钥和加密算法,例如从 3.x 升级到 4.0。

目前可获取密钥的最后版本存档:
Windows 4.0.3.36

macOS 4.0.3.80

如果需要长期保持在低版本且不让微信自动更新的话,可以再微信设置中禁止自动更新,也可以尝试在 hosts 文件中添加:

127.0.0.1 dldir1.qq.com
127.0.0.1 dldir1v6.qq.com

还有一类情况是 macOS Apple Silicon 用户会遇到的,获取密钥时日志中提示 timeout,这多半是由于终端、微信、chatlog 其中之一运行在 Rosetta 模式下运行导致。

图片无法访问的问题

部分图片无法访问的问题,有几个方面。

AES 加密 & WXGF 格式

微信 4.0.3 正式版之后,图片采用了 AES 加密,并且每个用户的 AES 密钥都不同,需要额外获取图片 AES 密钥才能解密。

近期更新已经支持获取图片 AES 密钥了,并且支持 wxgf 格式的解析,大家可以重新获取密钥后尝试一下。

wxgf 是微信内部的图片格式,需要转码后才能正常显示,目前提供了两个解析方案,通过 FFmpeg 命令行工具转码(推荐)或是转封装为 MP4 查看。

如果本地没有安装 FFmpeg 的话,WXGF 文件会被转封装为 MP4 文件,这样做的目的是让浏览器可以直接解析。

更推荐的方案是安装 ffmpeg 命令行工具,这样能够正常将 WXGF 文件转码为 JPG 图片,多帧动画将被转码为 GIF 动画。

只需要 PATH 路径中有 ffmpeg 命令行工具,chatlog 就会自动检测并使用 ffmpeg

Windows 用户可以直接在 ffmpeg 官网下载 BtbN / gyan.dev 提供的预编译版本,下载后需要将 ffmpeg.exe 路径加入系统 PATH 中,稍微搜索就能找到很多教程。

macOS 用户可以使用 brew install ffmpeg 命令进行安装,非常方便。

wxgf 格式的详细信息,可以参考这篇博客:https://sarv.blog/posts/wxam/

微信中未打开图片

如果图片没有在微信中打开过,就不会下载数据到本地,所以无法访问到原图,只有缩略图。

这块没啥好办法,通过 Hook 调用客户端的 CDN 下载能力,或是尝试通过 API 获取 CDN 链接都越界了,暂时不考虑支持。

其他问题

其他常见问题的历史讨论,参考 #131 和之前的 ISSUE

讨论组

之前 @hao-ji-xing 大佬帮忙组织了讨论组,但是看到链接都过期了,这里尝试开一个 discord 讨论组,欢迎大家交流。

https://discord.gg/Qe3KxxmyuK

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions