
文章插圖
微信已經(jīng)成為非常重要的社交工具了,但是隨著使用的年限增加,微信會產(chǎn)生大量的文件占據(jù)手機(jī)磁盤空間,而且很多文件都是dat格式,不能正常打開 。
這些文件其實都是聊天時候的圖片,那么如何可以正常地看到圖片并打開呢?
首先,了解我的微信dat文件到底在哪里?一般來說,PC端的微信在安裝的時候都是默認(rèn)安裝的,自定義安裝的話就只能自己想想自己安裝到哪里去了 。
這個是默認(rèn)安裝的路徑,找到后進(jìn)去,里面就能看到以自己的微信號命名的文件夾 。
然后點(diǎn)進(jìn)去后就是微信pc端的所有數(shù)據(jù) 。
其次,再看看如何實現(xiàn)轉(zhuǎn)換?1.dat文件路徑 (確保已有路徑,或自己修改)
into_path = r'C:image'# 微信image.dat文件路徑2.輸出圖片路徑
out_path = r"C:imagejpg\"3.輸入代碼
# weixin_Image.dat 破解# JPG 16進(jìn)制 FF D8 FF# PNG 16進(jìn)制 89 50 4e 47# GIF 16進(jìn)制 47 49 46 38# 微信.bat 16進(jìn)制 a1 86----->jpgab 8c----jpgdd 04 --->png# 自動計算異或 值import osinto_path = r'C:image'# 微信image.dat文件路徑#我這把路徑寫死了,運(yùn)行可執(zhí)行文件前 先創(chuàng)建這個路徑把dat文件放在這out_path = r"C:imagejpg\""""解碼param f: 微信圖片路徑param fn:微信圖片目錄下的.datreturn:"""def imageDecode(f, fn):dat_read = open(f, "rb")# 讀取.dat 文件xo = Format(f)# 判斷圖片格式 并計算返回異或值out = out_path + fn + ".jpg"# 圖片輸出路徑print("文件輸出路徑{}".format(out), end='nn')png_write = open(out, "wb")# 圖片寫入dat_read.seek(0)# 重置文件指針位置for now in dat_read:# 循環(huán)字節(jié)for nowByte in now:newByte = nowByte ^ xo# 轉(zhuǎn)碼計算png_write.write(bytes([newByte]))# 轉(zhuǎn)碼后重新寫入dat_read.close()png_write.close()def findFile(f):"""尋找文件param f:微信圖片路徑return:"""fsinfo = os.listdir(f)# 把路徑文件夾下的文件以列表呈現(xiàn)print(fsinfo)for fn in fsinfo:# 逐步讀取文件temp_path = os.path.join(f, fn)# 拼接路徑:微信圖片路徑+圖片名if os.path.isfile(temp_path):# 判斷目錄還是.dat#temp_path需為絕對路徑,判斷是否為文件,也可 if not os.path.isdir(temp_path):print('找到文件路徑{}'.format(temp_path))fn = fn[:-4]# 截取字符串 去掉后綴.datimageDecode(temp_path, fn)# 轉(zhuǎn)碼函數(shù)else:passdef Format(f):"""計算異或值各圖片頭部信息jpeg:ff d8 ffpng:89 50 4e 47gif: 47 49 46 38"""dat_r = open(f, "rb")try:a = [(0x89, 0x50, 0x4e), (0x47, 0x49, 0x46), (0xff, 0xd8, 0xff)]for now in dat_r:for xor in a:i = 0res = []nowg = now[:3]#取前三個 數(shù)據(jù)信息for nowByte in nowg:res.append(nowByte ^ xor[i])#進(jìn)行判斷i += 1if res[0] == res[1] == res[2]:#三次異或值想等 說明就是那種格式return res[0]#返回異或值except:passfinally:dat_r.close()# 運(yùn)行if __name__ == '__main__':findFile(into_path)也可以直接使用打包好的exe軟件
注意dat文件路徑:C:image沒有先創(chuàng)建好 將要轉(zhuǎn)換的微信dat文件 放到此處圖片輸出路徑:C:imagejpg轉(zhuǎn)碼后只要不刪除dat,不選擇刪除源文件,是不會有影響的 。軟件會讀取文件,并轉(zhuǎn)碼后重新生成文件,并與源文件同名 。
我們可以根據(jù)文件名進(jìn)行排序或根據(jù)類型進(jìn)行排序,然后對文件進(jìn)行處理 。
以上關(guān)于本文的內(nèi)容,僅作參考!溫馨提示:如遇健康、疾病相關(guān)的問題,請您及時就醫(yī)或請專業(yè)人士給予相關(guān)指導(dǎo)!
「愛刨根生活網(wǎng)」www.malaban59.cn小編還為您精選了以下內(nèi)容,希望對您有所幫助:- 建網(wǎng)站不花錢免費(fèi)建站的方法 全球建站平臺有哪些
- 原著里所有人物的悲劇結(jié)局 亮劍結(jié)局為什么這么慘
- 春聯(lián)應(yīng)如何區(qū)分上下聯(lián) 正確貼法是怎樣的? 對聯(lián)上下聯(lián)怎么分左右一聲二聲
- 做成松針茶賣30元一斤 松針茶多少錢一斤
- 水果茶里面的底茶是什么茶 四季奶青是什么茶
- 2021河南高考分?jǐn)?shù)線出爐! 河南高考分?jǐn)?shù)線
- 月餅脫氧劑涼了放還是熱的放
- 餃子皮的花樣吃法
- 安陽快遞停了嗎2022 河南安陽快遞還能收嗎
- 《南宋詭事之鬼樊樓》克拉拉是女主角嗎 真正的女主角是誰
