通过所有 Skype 历史记录进行搜索

通过所有 Skype 历史记录进行搜索

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

答案1

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

main.db 数据库文件,其中存储了所有聊天历史记录。main.db 是标准 SQLite 数据库文件,可以使用任何 SQLite 浏览器应用程序打开。但是,有一个免费的应用程序,专门用于读取 Skype 的聊天和通话数据 –Skype日志查看器

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]

对于未来,你可能需要考虑天空历史

答案2

斯基普里奥斯也值得一试。它比 SkypeLogView 有一些功能,例如

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

答案3

使用 SqliteBrowser 等编写自己的 SQL 查询来搜索 Skype 数据库,比使用第三方 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

答案4

以下对 main.db 的查询对我有用:

查找群聊

SELECT DISTINCT datetime(m.timestamp, 'unixepoch', 'localtime'), c.id, m.author, m.body_xml FROM
messages m
JOIN conversations c ON c.id = m.convo_id
WHERE c.type = 2 AND
m.body_xml NOT NULL
ORDER BY m.timestamp ASC

找到与好友的私聊

SELECT DISTINCT datetime(m.timestamp, 'unixepoch', 'localtime'), m.author, m.body_xml FROM
messages m
JOIN conversations c ON c.id = m.convo_id
WHERE m.body_xml NOT NULL AND
c.identity LIKE '%YOUR.BUDDY.NAME.HERE%' --case insensitive
ORDER BY m.timestamp ASC

在与好友私聊时找到给定的单词

SELECT DISTINCT datetime(m.timestamp, 'unixepoch', 'localtime'), m.author, m.body_xml FROM
messages m
JOIN conversations c ON c.id = m.convo_id
WHERE c.identity = 'YOUR.BUDDY.NAME.HERE' AND
m.body_xml NOT NULL AND
m.body_xml LIKE '%YOUR.SEARCHED.WORD.HERE%' --case insensitive
ORDER BY m.timestamp ASC

附言:有时您的好友名称可能与 Skype 中显示的不同,因此请先检查这一点:

SELECT identity, displayname FROM conversations

identity并从列中选择一个

相关内容