通过所有 Skype 历史记录搜索

com*_*oms 21 skype sql sqlite

如何在所有聊天记录中搜索给定的字符串?
?TRL+F - 在一个聊天中搜索,但我有很多,所以我想在所有保存的聊天中找到一些东西?

Dav*_*ave 24

在联系人列表或最近列表中,只需单击要查看其对话历史记录的联系人或组,就会显示您的对话历史记录。

存储所有聊天记录的 main.db 数据库文件。main.db 是标准的 SQLite 数据库文件,可以使用任何 SQLite 浏览器应用程序打开。但是,有一个免费的应用程序,它是专门为读取 Skype 的聊天和通话数据而设计的——SkypeLogView

main.db 文件保存在以下之一(取决于操作系统)。

在 Windows 7 + 上: C:\Users\%USERNAME%\AppData\Roaming\Skype\[Skype User Name]

在 Windows XP 上: C:\Documents and Settings\%USERNAME%\Application Data\Skype\[Skype User Name]

以下应该适用于所有 Windows 版本,您可以将其复制到运行提示中:

%APPDATA%\Skype \[Skype User Name]

在 Mac OS X 上: Library/Application Support/Skype/[Skype User Name]

对于未来,您可能需要考虑SkyHistory

  • SkyHistory 仍然适用于最近的 Skype。谢谢! (3认同)
  • SkypeLogView - 帮助我,非常好的工具。 (2认同)
  • 似乎答案已经过时了。有人知道如何在 2019 年搜索 Skype 历史记录吗? (2认同)

twa*_*lig 7

使用例如 SqliteBrowser 编写您自己的 SQL 查询来搜索 Skype 数据库,与使用 3rd 方 Skype 特定工具相比,可以提供更多的灵活性和功能。

例如,此查询将在您的所有聊天中搜索文本字符串,并显示消息发布的(本地)时间、消息本身、聊天名称(如果有名称)以及谁在聊天。

select DISTINCT datetime(m.timestamp, 'unixepoch', 'localtime') as postedon, c.displayname as chatname, m.from_dispname as fromuser, m.body_xml as msgtext
from Messages m
INNER JOIN Conversations c ON m.convo_id = c.id
where m.body_xml LIKE '%my text%' --case insensitive
order by m.timestamp DESC
Run Code Online (Sandbox Code Playgroud)


Kee*_*gan 7

Skyperious也可能值得一试。它在 SkypeLogView 上有一些功能,例如

  • 将联系人从 CSV 文件导入您的 Skype 联系人
  • 查看任何数据库表并导出其数据
  • 更改、添加或删除任何表中的数据
  • 执行直接 SQL 查询
  • 同步两个 Skype 数据库中的消息:在不同的计算机上保持最新的聊天记录,或将旧文件中丢失的消息恢复到当前文件中
  • 聊天统计