最近学习TK,想写个小项目。正好那原来发过的这个主题进行改进下。
先上图看个效果:

设计思路如下:
1.选择微信图片文件夹路径
2.读取文件夹下文件,加载到Treeview里(可以学习到Treeview的使用)
3.选中行时,TK Label中显示图片
难点一:(TK,不支持jpg,所以需要用PIL来处理)
难点二:自然是微信图片转位图片的关键部分
4.加保存图片按钮,可在原路径下生成图片。删除图片按钮,可以删除不需要的dat文件,减少空间
源代码可生成的exe文件,链接如下:
完整代码如下,未做整理,仅供学习:
#!/usr/bin/env python
# Author:Veray Zhou
import tkinter as tk
from tkinter.filedialog import *
from tkinter.ttk import *
import os
from PIL import Image, ImageTk
from io import BytesIO
window = tk.Tk()
window.title('电脑端微信用户图片DAT格式解码为图片')
window.geometry('450x750')
files = []
dir_path = ''
newfile_path = ''
def showFiles(dir_path):
inFiles = os.listdir(dir_path)
i = 1
files.clear()
for file in inFiles:
# 获取文件类型
filetype = os.path.splitext(file)[1]
if filetype == '.dat':
# 获取文件大小
filesize = os.path.getsize(os.path.join(dir_path, file))
#序号 文件名 文件大小
files.append((i, file, '{:.2f}KB'.format(filesize/float(1024))))
i += 1
# print(files)
return files
def select_path():
global dir_path
dir_path = askdirectory()
e.delete(0, 'end')
e.insert(0, dir_

本文介绍了一个使用Python和Tkinter创建的GUI应用,该应用能够读取微信DAT格式的图片文件,并通过异或操作解码为JPG、PNG或GIF格式。用户可以选择文件夹,预览并保存解码后的图片,同时提供删除功能。代码中涉及了文件操作、图像处理以及Tkinter控件的使用。
&spm=1001.2101.3001.5002&articleId=125453115&d=1&t=3&u=08dae4bac277465ca481080555e4646f)
7838

被折叠的 条评论
为什么被折叠?



