查看完整的Skype聊天记录


30

我在Mac OS X 10.5.8上安装了Skype 2.8。

在聊天菜单下是一个名为“最近的聊天”的选项。这使我可以查看最近聊天的日志,但看不到较早聊天的日志。

我知道较旧的存储在其中,因为它们已存储在中~/Library/Application Support/Skype/username/chatmsg256.dbb。置于文本编辑器中时,此文件具有我以前所有Skype聊天中的文本聊天信息。但是,它以未知文件格式存储,我不知道如何解析。

Skype是否具有内置日志查看器(如Adium的),可以用来访问这些较旧的日志?


3
他们曾经具有非常好的功能,可以将聊天记录导出为HTML。不幸的是,这个功能是自4版历史

Answers:


9

我不确定这是否显示整个历史记录,但请尝试以下操作。无论联系人是在线还是离线,都将弹出聊天窗口。

点击蓝色聊天按钮

然后在“查看以前的消息:”下单击“全部”。

全部点击

或者,单击联系人的齿轮图标,然后选择“查看聊天记录”。这将生成一个在您的Web浏览器窗口中打开的html文件。

我不确定是否会显示所有历史记录,原因是我不完全记得我的聊天记录是在这台计算机上开始的。


1
感谢您的回答。这似乎是您应该在Skype中执行此操作的方式。奇怪的是,这将无法与不再在您列表中的人聊天。我不确定应该怎么做。这也表明没有办法进行关键字搜索。与Adium的Chat Transcript Viewer相比,这种消息历史记录界面的功能严重不足。
hekevintran 2010年

我绝对同意。我也非常喜欢Adium的聊天记录查看器。对于Windows,我找到了一个我从未使用过的名为skypr(osiwanlan.de/skypr)的应用程序,但是它仍然取决于要显示的聊天记录,对于已删除的联系人而言可能并非如此。
fideli

带有已删除联系人的聊天记录在日志文件中。我只是不知道如何从Skype的界面联系他们(或者甚至可以联系他们)。
hekevintran 2010年

57

Skype将其聊天记录存储在SQLite数据库中~/Library/Application Support/Skype/YourSkypeName/main.db。您可以使用命令行sqlite3工具查看聊天记录。

找出您的聊天伙伴的用户名

终端中的以下命令(假设您使用的是bashShell)列出了所有聊天伙伴的用户名:

sqlite3 /Users/danielbeck/Library/Application\ Support/Skype/YourSkypeName/main.db 'SELECT DISTINCT(dialog_partner) FROM Messages;'

提取与特定聊天伙伴之间的所有消息

选项A.写入终端

要打印与某个聊天伙伴(theOtherPersonsUserName)之间的所有消息,请使用以下命令:

sqlite3 /Users/danielbeck/Library/Application\ Support/Skype/YourSkypeName/main.db "SELECT author, from_dispname, datetime(timestamp, 'unixepoch') as date, body_xml FROM Messages where dialog_partner = 'theOtherPersonsUserName' ORDER BY timestamp;"

这将按时间顺序每行打印一条消息,并发送用户名,显示名称,日期和文本,如下所示:

danielbecks-用户名| Daniel Beck | 2012-02-03 08:47:53 |只需测试一下

选项B.写入文件

您可以将此聊天记录直接写入文件。运行以下命令将日志写入theOtherPersonsUserName文件theOtherPersonsUserName.log

sqlite3 /Users/danielbeck/Library/Application\ Support/Skype/YourSkypeName/main.db "SELECT author, from_dispname, datetime(timestamp, 'unixepoch') as date, body_xml FROM Messages where dialog_partner = 'theOtherPersonsUserName' ORDER BY timestamp;" > "theOtherPersonsUserName.log"


当然,您也可以main.db在任何SQLite数据库查看器中打开并转到那里。


对于具有相同问题的其他用户,如果您有很多“聊天伙伴”,终端可能会花一些时间向您显示列表。就我而言,大约是两分钟。似乎什么都没有发生,因此您可能会想关闭终端,但您只需要等待即可。然后使用正确的用户ID键入以下命令(SELECT作者等),然后将显示对话历史记录。一旦您的聊天对话出现在终端中,您就可以将其复制到文字处理程序文件中,然后进行一些修饰。

1
main.db消失了:find -name main.db什么也找不到。内容位于像这样的文件中chatmsg256.dbb,但是打开这些结果会出现“错误:文件已加密或不是数据库”。知道这几天有什么用吗?
Jean Jordaan 2013年

@JeanJordaan什么版本的Skype?什么操作系统?我也有这些文件,但它们来自2010年...
丹尼尔·贝克

@DanielBeck很抱歉提供的信息不完整。Ubuntu Linux,Skype 2.2.0.35这是2011年的产品,我看到有4.2.0.11可用。我不知道升级是否会迁移我以前的聊天记录
Jean Jordaan



1

尝试使用SkypeHistoryViewer

一个小程序,它将允许用户打开PC上所有Skype活动的历史记录,检查您的孩子的使用情况,那里的孩子在说什么,或者在作弊的伙伴上进行检查。当前适用于Windows Vista和7。

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.