我用的是華為,所以下面的教程是用華為手機做的示例
其他安卓手機免root教程網址:https://www.louyue.com/android-weixin.htm
ios系統的可參考這篇文章:https://zhuanlan.zhihu.com/p/56624686
1、導出手機里的微信備份文件
(1)卸載手機的備份軟件(設置>>>應用和通知>>>應用管理>>備份>>卸載),重新下載8.0版本的“備份”
8.0版本的備份下載鏈接:https://www.louyue.com/down/huaweibeifen8.0.apk
(2)關掉無線網(要不然會自動更新到最新的版本),打開備份軟件,點擊“備份”,“內部存儲>>下一步”,再點擊“應用”(並非勾選“應用”)。
(3)在彈出的應用列表中勾選上“微信”並點擊“開始備份”按鈕,然后在彈出的設置密碼界面直接點擊“跳過”按鈕。
(4)備份結束后,接下來將華為手機連接到電腦上,進入手機盤符下的“Huawei/Backup/backupFiles/備份時間”文件夾,可看到剛才備份下來的com.tencent.mm.db文件,將其復制並粘貼到電腦上任意目錄下。
2、提取微信數據庫文件
(1)在電腦上安裝並運行樓月安卓手機備份文件提取器(點擊此處下載),備份文件設置為剛才復制到電腦上的com.tencent.mm.db文件,然后設置一個輸出目錄(即提取的文件保存到的目錄),最后點擊“開始提取”按鈕,並耐心等待其提取結束。
(2)提取得文件自動生成一個data文件夾,在文件夾中(data\data\com.tencent.mm\MicroMsg\414a7fad79697cb585645b12fad6ba23【后面這串亂碼應該是微信賬號】)找到enmicromsg.db文件,這個就是微信聊天記錄的數據庫啦,把他復制到一個方便操作的位置
3、找數據庫密碼
數據庫拷貝到電腦后是加密的,需要提供key來打開數據庫。
key=IMEI(手機序列號)+UIN(用戶信息號)
(1)IMEI的找尋,在手機撥號界面輸入*#06#即可找到IMEI。
(2)微信UIN的獲取
登錄網頁版的微信,隨便給誰發一條消息,查看開發者模式(chrome直接F12即可)中network的請求參數,一般都會包含這個UIN,
(3)通過MD5計算出自己的密碼,網址https://md5jiami.51240.com/,輸入剛剛的key,取32位小寫前七位
4、下載能打開微信數據庫的軟件
下載打開數據庫的工具sqlcipher,下載地址https://pan.baidu.com/s/1dDBa4FZ,直接下載可用,雙擊sqlcipher.exe
5、利用工具打開數據庫並導出csv文件
(1) file >> open data base >> 選擇第五步的enmicromsg.db文件 >> 輸入6(3)獲取的密碼 >> 打開數據庫
(2)查詢和某人的所有聊天記錄(××××處填入對方的昵稱)
select datetime(subStr(cast(m.createTime as text),1,10),'unixepoch','localtime') as theTime, case m.isSend when 0 then r.nickname when 1 then '我'end as person,m.content from message m inner join rcontact r on m.talker = r.username where m.type=1 and r.nickname = '××××'
(3)把上面的結果加入到另外一張新表上,方便導出csv(暫時沒發現這里有視圖功能,只能用這種辦法折中一下)
【1】新建一張wxcontent表: edit >> create table
一共有三個字段分別為:theTime(text類型),person(text類型),content(blob類型)
【2】通過sql語句給這張表增加想要的數據
(添加數據的sql語句)
insert into wxcontent select datetime(subStr(cast(m.createTime as text),1,10),'unixepoch','localtime') as theTime, case m.isSend when 0 then r.nickname when 1 then '我'end as person,m.content from message m inner join rcontact r on m.talker = r.username where m.type=1 and r.nickname = '××××'
【3】檢查一下wxcontent表是否有數據
【4】把表中數據導出到csv文件中:file >> export >> table as csv file >> 選擇wxcontent表 >> export
6、至此,微信聊天記錄就按照我們的想法導出來了
7、下面生成好看的詞雲
法一:
運用在線網站(網站選取可參考文章:https://zhuanlan.zhihu.com/p/69066085)
我用的是https://wordart.com/create ,國外網站,免費,生成的圖片沒有水印
使用方法:
(1)用excel打開第十步導出的csv文件,復制content列
(2)打開網站,點擊words >> import
數據導入完成后會按照詞頻排列,詞頻越高,越在上面
(3)導入一個中文字體(網站是沒有中文字體的哈)
可以在電腦里面復制一個ttf文件(windows可以打開控制面板,搜索fonts),復制一個到一個可操作的位置(桌面即可)
然后去網站上,add font即可
(4)shapes是選擇形狀(其他功能可以自己探索下),然后點擊visualize,生成圖片
(5)微信聊天的詞雲圖就生成好啦