我如何读取 Skype 日志文件 (chatsync)?

我如何读取 Skype 日志文件 (chatsync)?

我有当前chatsync/**.dat格式的 Skype 日志文件。我该如何读取它们?

它们来自一个我没有密码的 Skype 用户帐户,如果我尝试将它们和所有附带文件移动到我的 Skype 帐户的数据文件夹以通过 Skype 读取它们,它会抱怨数据库已损坏。

这些二进制文件中的部分文本很清晰,但还不够,而且通过十六进制转储读取它们很费力。

Delphi 中有一个查看器,但它只能处理英文消息,跳过包含挪威字符的行并混淆用户名。

答案1

任何 SQLite 接口都可以打开该XXX.db文件。我使用SQLite工作室

以下查询可用于获取您与给定用户名的所有聊天消息。andy在此示例中,将其替换为您想要的用户名。

select 
    chatname, 
    strftime('%Y-%m-%d', datetime(timestamp, 'unixepoch')) AS date, 
    from_dispname, 
    body_xml 
from 
    Messages 
where 
    chatname like "%andy%" 
order by 
    timestamp

答案2

Skype日志查看器应该做你想做的事。

SkypeLogView 读取 Skype 应用程序创建的日志文件,并显示指定 Skype 帐户的来电/拨出电话、聊天消息和文件传输的详细信息。您可以从日志列表中选择一个或多个项目,然后将其复制到剪贴板,或将其导出为文本/html/csv/xml 文件。

在此处输入图片描述

答案3

您可以使用用于存储聊天记录的数据库 sqlite 手动浏览它们(例如:sqlite foo.db)。Sqlitebrowser 将使这个过程不那么繁琐。您需要一个复杂的 sql 命令来按颜色顺序对它们进行排序和列出。您可以将查询从 sqlite 直接转储到文件中,因此我会使用 sqlite。

答案4

尝试使用skype-chatsync-viewer以下工具这个包

它只能部分解析数据,但如果您有兴趣恢复“已删除”的消息(这可能是人们想要读取这些*.dat文件的唯一原因),它可能适合您的目的。

相关内容