最美情侣中文字幕电影,在线麻豆精品传媒,在线网站高清黄,久久黄色视频

歡迎光臨散文網 會員登陸 & 注冊

記一次微信聊天文字記錄導出到Excel工作

2017-09-05 19:03 作者:萬能君的軟件庫  | 我要投稿

其實一直想把我和她的微信聊天記錄導出到文本,整理出來拿出來翻翻,然后再查閱了大量網絡資料后,我成功的將我和她的聊天記錄整理成excel的形式,如下所示:


那么我們開始。


一、工具準備(蘋果手機也可,在文末)

1、root的安卓手機,裝有微信。

2、安裝RE瀏覽器或者ES瀏覽器。

3、加密數據庫DB文件打開工具:sqlcipher.exe(鏈接:pan.baidu.com/s/1qYshCm 密碼:c8bw)

4、Excel

5、MATLAB(可選)


二、找到加密的微信聊天記錄文件

依次選擇根目錄/data/data/com.tencent.mm/MicroMsg,如下圖


如上圖,一般加密的數據庫文件在兩個長名字文件夾之一,自己尋找。

打開文件夾后,會找到EnMicroMsg.db這個文件,將這個文件用re管理器拷貝到手機主目錄,然后拷貝到手機上即可。


三、打開數據庫EnMicroMsg.db

下載加密數據庫DB文件打開工具:sqlcipher.exe(鏈接:pan.baidu.com/s/1qYshCm 密碼:c8bw)。


直接運行,選擇打開,如下圖,需要密碼:


那么請看下一步,找到密碼。


四、尋找數據庫文件密碼


目前各種資料得出的密碼獲取方式是 <手機IMEI號+微信UIN號> 的MD5碼前七位。

IMEI號位15位,比如000000000000000,微信UIN號為9位,比如123456789.


MD5碼在線生成:MD5在線加密/解密/破解 - 站長工具


如下圖,輸入手機IMEI號+微信UIN號,選擇加密方式32位小,取MD5碼前七位即為密碼。


所以,我們只需要知道手機IMEI號和微信UIN號即可獲得密碼,請看下步,怎么獲得IMEI號和微信UIN號。


五、獲取手機IMEI號和微信UIN號

1、手機IMEI號

這個很簡單,撥號界面輸入*#06#即可,雙卡雙待手機兩個串號,這個自行嘗試。

2、微信UIN號獲取

這個方法較多,匯集如下:

(1)谷歌瀏覽器抓包

谷歌瀏覽器”中打開“微信網頁版”(微信網頁版),手機微信掃碼登陸。

然后新建一個標簽頁,輸入chrome://net-internals/#events,回車。

按“Ctrl+F”,輸入"uin”進行搜索,即可找到如下圖的UIN號



(2)尋找手機里的文件得到UIN號

還是在re管理器依次尋找

根目錄/data/data/com.tencent.mm/shared_prefs/system_config_prefs.xml


system_config_prefs.xml這個文件拷貝到手機主目錄,才能打開,如下所示:


即可得到UIN號。


(3)進階版,JAVA程序得到手機IMEI號微信UIN號。

這個需要有JAVAC運行環(huán)境。


程序:用java中的map解析微信MicroMsg里的CompatibleInfo.cfg和systemInfo.cfg - JiezhiG的專欄 - CSDN博客


import java.io.FileInputStream;  

import java.io.FileNotFoundException; 

 import java.io.IOException; 

 import java.io.ObjectInputStream; 

 import java.util.Map;    

public class MapTest 

{        /**     * @param args     */      public static void main(String[] args) {          // TODO Auto-generated method stub          try {              FileInputStream file = new FileInputStream("E:/CompatibleInfo.cfg");              ObjectInputStream mObjectInputStream = new ObjectInputStream(file);              Map map = (Map) mObjectInputStream.readObject();              System.out.println(map);          } catch (FileNotFoundException e) {              // TODO Auto-generated catch block              e.printStackTrace();          } catch (IOException e) {              // TODO Auto-generated catch block              e.printStackTrace();          } catch (ClassNotFoundException e) {              // TODO Auto-generated catch block              e.printStackTrace();          }      }  }  


這個程序主要是解析微信里的CompatibleInfo.cfgsystemInfo.cfg,兩個文件的內容,這兩個文件分別包含了手機IMEI號微信UIN號。

兩文件均在根目錄/data/data/com.tencent.mm/MicroMsg目錄下。


如下圖,我們解析到了文件內容:

其中258=后是手機IMEI號,1=后面是微信UIN號。


小插曲:這中間很曲折,我現在手機是小米6,原先是小米4,換米6時,我用小米4的MIUI備份到了小米6上,所以一開始找IMEI號時候怎么也搞不定密碼,因為一直用的小米6串號,哎。。沒想到其實應該是小米4的IMEI號。。。


六、導出聊天記錄到CSV

經過第四步和第五步,我們已經打開加密的db文件,如下所示:

我們直奔主題,如下圖,找到message導出csv即可:





七、處理聊天記錄csv文件

導出的csv文件包含了所有的聊天記錄,我們通過探索,發(fā)現如下圖:

一般尋找圖上這幾項,分別是isSend(0則為對方發(fā)的消息,1是我發(fā)的消息),createTime(10位UNIX時間戳,可以算法轉換為標準時間),talker(這個是關鍵,你與某個聯系人的對話就為一個taker id,鎖定了它就鎖定了你與她的所有對話),content(聊天文字內容)。


那么,我們思路清晰了,我們只需要找到talker即可,通過Excel的篩選即可完成,excel操作很簡單,但如此大的excel文件,打開編輯可是非常慢的,所以我用MATLAB實現處理,并將整理好的聊天記錄導出到excel文件中。


程序如下:

clc;

clear all;

[FileName,PathName] = uigetfile('*.csv','選擇導出的數據庫csv文件');

file = fullfile(PathName,FileName);

[num,txt,raw]=xlsread(file);

% clearvars -except  num txt raw

talkerid=input('請輸入Talker的ID:','s');

talker=txt(:,8);%列出所有的talker ID

[ta , y] = find(strcmp(talker,talkerid));%尋找剛才輸入的talker ID mcontent=cell(length(ta),1);

for i=1:length(ta) 

who(i)=num(ta(i)-1, 5)  ;%定義一個isSend cell數組,來鑒別是誰發(fā)的消息 mtime(i)=num(ta(i), 7)  ;%定義一個createTime cell數組,來存儲10位UNIX時間戳 mcontent{i}=txt(ta(i), 9)  ;%定義一個content cell數組,來存儲聊天內容end who=who'; 

%%%%%%%%%%%%%%%下面這段程序是將isSend cell數組中的0替換為對方,1替換為我%%%%%%%%%%%%

myname=find(who==1);

hername=find(who==0);

% all=find(who==2);

ourname=cell(length(who),1);

for i=1:length(myname)

ourname{myname(i),1}='我';

end

for i=1:length(hername)

ourname{hername(i),1}='真好';

end

for i=1:length(all)

% ourname{all(i),1}='未知';

% end%%%%%%%%%%%%%%%%%%%%%%%%%下面這段程序是將createTime cell數組中時間戳取前10位轉換位北京時間%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

ourname=ourname';  

mtime=mtime';  

mtime=num2str(mtime);%轉換成字符串,取前10位時間戳  

mtime=mtime(:,1:10); 

mtime=str2num(mtime);

mtime=dateconvert(mtime);

mtime=mtime';

%%%%%%%%%%%%%%%%%%%%%%%%%下面這段程序是將content cell數組中漢字去掉引號,否則寫入excel報錯%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

for i=1:length(mcontent)  

 mcontent1(i)=mcontent{i};

end

mcontent1=mcontent1';

%%%%%%%%%%%%%%%%%%%%%%%%%下面這段程序是將時間、發(fā)言人、聊天內容匯總,寫入excel中%%%%%

ultimate=[mtime,ourname,mcontent1];

xlswrite('lovemore1.xlsx',ultimate);%UNIX時間戳轉換成標準時間,北京時間需要加8小時,也就是8*3600秒

function [ date ] = dateconvert(x) 

 for i=1:length(x)

date{i}=datestr(datetime(x(i)+8*3600, 'ConvertFrom', 'posixtime' ));

end  

end



然后,就可以搞定啦,如果嫌最終的excel打開還是慢,你可以用excel導出到txt也行啊。



---------------------------------下面是蘋果的-----------------------------------------------------------------------


一、工具準備

1、iTunes

2、pp助手

3、加密數據庫DB文件打開工具:sqlcipher.exe(鏈接:pan.baidu.com/s/1qYshCm 密碼:c8bw)

4、Excel

5、MATLAB(可選)


二、獲取數據庫db文件

蘋果的db文件沒有加密,所以只要找到db文件即可用sqlcipher打開。

我們開始!

1、iTunes備份手機

如下圖,手機鏈接電腦,備份即可。


2、PP助手導出備份

電腦安裝pp助手,手機鏈接PP助手,點擊備份還原,找到iTunes備份文件夾,如下圖:輸入AppDomain-com.tencent.xin:/,即可看到,將Documents文件夾拷貝到電腦即可。


然后,我們打開Documents文件夾,找到如下圖所示的fts_message.db就是要的聊天記錄數據庫。



然后,我們直接用sqlcipher打開,如下所示:

蘋果的和安卓不一樣,蘋果將你與某個人的對話放到各自的table里,所以直接導出csv即可。


但是只有創(chuàng)建時間和聊天內容,誰發(fā)送的消息沒找到。。。

程序也簡單多了,如下:

clc;

clear all;

[FileName,PathName] = uigetfile('*.csv','選擇導出的數據庫csv文件');

file = fullfile(PathName,FileName); 

[num,txt,raw]=xlsread(file);

% clearvars -except  num txt raw 

mtime=dateconvert(num(:,4))'; 

mcontent1=txt(2:end,5); 

ultimate=[mtime,mcontent1]; 

xlswrite('ILoveYouForever.xlsx',ultimate);

%UNIX時間戳轉換成標準時間,北京時間需要加8小時,也就是8*3600秒

function [ date ] = dateconvert(x)  

for i=1:length(x)

date{i}=datestr(datetime(x(i)+8*3600, 'ConvertFrom', 'posixtime' ));

end  

end


導出的excel如下:



------------------------------------------------------------------------

from 微信公眾號:wnsouba (每天來點精簡的分享)

------------------------------------------------------------------------


記一次微信聊天文字記錄導出到Excel工作的評論 (共 條)

分享到微博請遵守國家法律
大洼县| 上饶县| 东丰县| 宜丰县| 科技| 汽车| 阳春市| 鄂伦春自治旗| 佛学| 苍梧县| 海南省| 靖西县| 米林县| 壶关县| 奎屯市| 溧水县| 连云港市| 攀枝花市| 白城市| 资兴市| 平罗县| 巩留县| 枣庄市| 门头沟区| 柘荣县| 从江县| 昭苏县| 贞丰县| 大新县| 扶绥县| 曲水县| 时尚| 安徽省| 古田县| 哈巴河县| 布尔津县| 沈丘县| 丰镇市| 伊宁市| 龙口市| 金门县|