导出 Mac 版微信聊天记录
macOS 微信的“备份与恢复”功能只能从手机微信导出到 Mac, 但是微信其实又在本地存了加密的 sqlite3 数据库; 本地数据库的是一系列 *.db 文件,可以用如下命令查看,
ls -alh ~/Library/Containers/com.tencent.xinWeChat/Data/Library/Application\ Support/com.tencent.xinWeChat/*/*/Message/*.db
经过观察,微信存数据使用的是开源的 sqlcipher, 所以还是有办法导出微信在 Mac 本机的数据库的, 以下内容在 macOS 10.12, MAS 版微信 2.3.16 测试生效;
该方法依赖 lldb, 步骤如下
打开微信
命令行运行
lldb -p $(pgrep WeChat)
在 lldb 中输入
br set -n sqlite3_key
, 回车还是在 lldb 中,输入
c
, 回车扫码登录微信
这时候回到 lldb 界面, 输入
memory read --size 1 --format x --count 32 $rsi
, 回车应该会输出类似于如下的数据
0x000000000000: 0xab 0xcd 0xef 0xab 0xcd 0xef 0xab 0xcd
0x000000000008: 0xab 0xcd 0xef 0xab 0xcd 0xef 0xab 0xcd
0x000000000010: 0xab 0xcd 0xef 0xab 0xcd 0xef 0xab 0xcd
0x000000000018: 0xab 0xcd 0xef 0xab 0xcd 0xef 0xab 0xcd
现在,忽略左边的地址( 0x000000000000: ,0x000000000008:),从左到右,从上到下,把形如 0xab 0xcd 的数据拼起来,然后去掉所有的 "0x"和空格、换行, 得到 64 个字符的字符串,这就是 微信数据库的 key ;(参考 https://github.com/sqlcipher/sqlcipher )
然后, 可以下一个 https://sqlitebrowser.org/ ,用来浏览之前提到的*.db 文件(每个 db 都使用的相同的 key ),注意:打开数据库的时候选择(raw key), 然后输入 0x,再输入刚才那 64 个字符;
遗留问题:*.db 文件要在另一台 PC 或 Mac 上 登录微信, 才能被关闭,否则里面的聊天记录不是最新的;当然也可以强制调用 wal_checkpoint, 不过作为土办法,在另一台电脑上登一下微信也无妨
原文地址:https://www.v2ex.com/t/466053
导出 Mac 版微信聊天记录相关推荐
- 解密保存Mac版微信聊天记录的数据库文件并导出聊天记录
MacOS版本的微信的聊天记录保存在如下路径中的数据库文件中: ~/Library/Containers/com.tencent.xinWeChat/Data/Library/Application\ ...
- Mac版微信内存飙升卡死解决办法
使用微信的过程中,经常用到内存飙升卡死现,那么该如何解决呢?以下是解决Mac版微信内存飙升卡死的有效方法! 第一步:强制退出微信,避免电脑卡死 第二步:打开终端输入打开微信所在目录: open ~/L ...
- 多终端同时登录_So easy!同时登陆两个或多个Mac版微信和QQ
如今,微信和QQ已经不单单是简单的社交软件了,也成了工作必备软件,工作中用它传个文件,发个通知,不知道有多方便. 但是很多人希望将工作圈和生活圈分开,有人想出拿两部手机的方法,倒是可以,不过来回倒腾略 ...
- 电脑版微信聊天记录和小程序视频播放黑屏,但有声音,qq和其浏览器视频播放正常。如何解决?
问题描述: 电脑版微信聊天记录和小程序视频播放黑屏,但有声音,而且截屏时会先显现出画面: qq和其浏览器视频播放正常. 原因:显卡驱动出错 解决办法:更新显卡驱动或者卸载重新安装显卡驱动 注意:我遇到 ...
- mac版微信复制多个消息
mac版微信复制多个消息 1. 在任意消息,单击鼠标右键,然后选择"多选" 2. 选择所有需要复制的多个消息,使用复制快捷键,默认为command+c 3. 打开记事本,粘贴即可 ...
- 微信ndows mac下载,Mac版微信又更新,Windows电脑:就这?
原标题:Mac版微信又更新,Windows电脑:就这? 作为雷科技编辑部为数不多的用MacBook办公的小编,日常用电脑版微信时,总能感觉到一种"劣化"的体验,因为Mac微信的更新 ...
- So easy!同时登陆两个或多个Mac版微信和QQ
如今,微信和QQ已经不单单是简单的社交软件了,也成了工作必备软件,工作中用它传个文件,发个通知,不知道有多方便. 但是很多人希望将工作圈和生活圈分开,有人想出拿两部手机的方法,倒是可以,不过来回倒腾略 ...
- Mac版微信取消在锁定屏幕上显示通知的操作方法?
在日常中使用Mac版微信如果不想在锁定屏幕上显示通知,可将该功能关闭.那我们该如何关闭呢?跟小编一起来看看具体教程吧- 微信Mac版客户端(支持查看朋友圈)正式版支持M1芯片 方法步骤如下: 1.首先 ...
- mac 版微信音频设备启动失败
mac 上使用微信时,可能会遇到无法启动音频设备的情况,导致用 mac 版微信打语音时听不到对方的声音 解决办法: 打开终端,输入以下命令 sudo launchctl stop com.apple. ...
- Mac版微信突然显示音频设备启动失败
Mac版微信突然显示音频设备启动失败 今天打开微信,点了群友的视频,没声音,我以为是静音的视频,还扣了下群友,后面才发现是Mac版微信问题,尴尬,点击语音会出现 音频设备启动失败 解决方法: 1.打开 ...
最新文章
- 将EXE安装包重新封装成MSI格式
- phpstorm遍历PHP数组,使用PHPStorm对齐数组的键值对
- hdu3033---加限制条件的0-1背包
- centos linux 系统日常管理4 scp,rsync,md5sum,sha1sum,strace ,find Rsync 常见错误及解决方法 第十七节课...
- C#LeetCode刷题之#575-分糖果​​​​​​​(Distribute Candies)
- printf 函数实现的深入剖析
- win7录屏_学用系列|清晰、体积小,这些录屏工具适合正在为录屏苦恼的你
- 在有网络还是比较好解决软件上的问题
- python可视化计算器_使用Python自带GUI tkinter编写一个期权价格计算器
- 鸿蒙三千法则排名,三千法则名称大全_十大最强法则
- 2021 IT运维调查报告
- 大数据产品开发流程规范_大数据系统开发步骤流程是怎样的
- IT人,自我营销,你懂吗?
- 开心一刻:邪恶的小明
- 5T的资源大礼包整合,总有你想要的!
- html怎么设置毛笔字体,原来毛笔字体是这么设计的!
- 公网IP,内网IP,动态IP,静态IP的区别
- 学霸都在用的学习神器,绝对能让你提升学习效率
- 系统重装后MySQL的数据恢复
- TCP协议、路由配置
热门文章
- linux wget 磁力链接,Linux安装Aria2来实现种子、磁力下载
- 网络共享计算机设置方法,如何设置网络共享(局域网共享如何设置)
- Excel 取消分页符
- vm虚拟机安装win7出现 Error loading image cdmenu.ezb
- [Storage]RPM series linux rescan disk / RPM系Linux重新扫描硬盘
- win10解决IE浏览器安装不上的问题
- poi操作ppt创建表格
- dell笔记本重装系统
- Hadoop综合大作业
- python isupper_Python中用于检查英文字母大写的isupper()方法