Ubuntu 22.04下查看旧版MSN Messenger XML聊天文件的问题求助
我之前也碰到过一模一样的问题!旧版MSN的XML聊天记录在Ubuntu 22.04的任何浏览器里打开都显示空白,核心原因是这些文件依赖的旧版渲染规则和现代浏览器的兼容标准完全不匹配了——当年MSN的聊天XML是针对IE的旧版本做的优化,现在Chrome、Firefox这些主流浏览器早就不再支持那些老旧的标签和脚本逻辑了。
给你几个亲测有效的解决办法:
用LibreOffice Writer直接打开
这是最简单的办法!右键点击你的MSN聊天XML文件,选择“用LibreOffice Writer打开”,它会自动解析XML的结构,把聊天内容转换成可读的排版格式。虽然和当年MSN窗口的样式不一样,但对话内容会完整保留,还能方便地复制或者保存成其他格式。手动解析XML(适合有一点点技术基础的朋友)
你可以用系统自带的Gedit或者VS Code打开XML文件,直接查看源码。MSN的聊天记录里,对话通常会被包裹在<message>标签里,里面的<sender>是发消息的人,<text>就是具体内容。如果文件太多,写个简单的Python脚本批量提取更高效:import xml.etree.ElementTree as ET # 替换成你的聊天记录文件名 chat_file = "msn_chat_history.xml" tree = ET.parse(chat_file) root = tree.getroot() print("MSN聊天记录:") for msg in root.findall(".//message"): sender = msg.find("sender").text if msg.find("sender") is not None else "未知发送者" content = msg.find("text").text if msg.find("text") is not None else "空消息" print(f"{sender}: {content}")把代码保存成
parse_msn_chat.py,在终端运行python3 parse_msn_chat.py,就能看到整理好的对话内容了。安装专门的聊天记录查看工具
你可以通过apt安装msn-archive-reader,这是一个专门用来读取MSN旧聊天记录的命令行工具。打开终端输入:sudo apt update sudo apt install msn-archive-reader安装完成后,直接输入
msn-archive-reader 你的聊天记录文件名.xml,工具会自动格式化输出所有对话,连发送时间都能显示出来。
如果打开文件时出现乱码,记得在文本编辑器里选择UTF-8编码重新打开,大部分旧MSN聊天文件都是用这个编码保存的。
备注:内容来源于stack exchange,提问作者Nuno Fonseca

