28

У меня Skype 2.8 на Mac OS X 10.5.8.

Под меню чата есть опция "Недавние чаты". Это позволяет мне видеть журналы последних чатов, но не старых.

Я знаю, что старые хранятся, потому что они находятся в ~/Library/Application Support/Skype/username/chatmsg256.dbb . Этот файл, помещенный в текстовый редактор, содержит информацию о текстовом чате из всех моих предыдущих чатов Skype. Однако он хранится в неизвестном формате файла, который я не знаю, как анализировать.

Есть ли в Skype встроенная программа просмотра журналов (например, Adium), которую я могу использовать для доступа к этим старым журналам?

4 ответа4

56

Skype хранит свою историю чата в базе данных SQLite: ~/Library/Application Support/Skype/YourSkypeName/main.db Вы можете использовать инструмент командной строки sqlite3 для просмотра журналов чата.

Узнайте имена пользователей ваших партнеров по чату

Следующая команда в терминале (я предполагаю, что вы используете оболочку bash ) выводит список имен всех ваших партнеров по чату:

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

Извлекать все сообщения от конкретного партнера по чату

Вариант А. Написать в терминал

Чтобы напечатать все сообщения определенному партнеру чата (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-username | Daniel Beck | 2012-02-03 08:47:53 | Просто что-то тестирую

Вариант Б. Запись в файл

Вы можете написать этот журнал чата непосредственно в файл. Запустите следующую команду, чтобы записать журнал с 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 и перейти оттуда.

9

Я не уверен, показывает ли это всю историю, но попробуйте следующее. Независимо от того, находится ли контакт в сети или нет, откройте окно чата.

Нажмите синюю кнопку чата

Затем нажмите "Все" в разделе «Просмотр предыдущих сообщений:».

Нажмите все

Или нажмите значок шестеренки для контакта и выберите "Просмотреть историю чата". Это создает HTML-файл, который открывается в окне веб-браузера.

Причина, по которой я не уверен, показывает ли это всю историю, заключается в том, что я не могу полностью вспомнить, когда началась история чата на этом компьютере.

2

Просто хочу предоставить несколько более простых и современных способов просмотра журналов Skype:

  • Skyperious (https://suurjaak.github.io/Skyperious/) - кроссплатформенный инструмент с графическим интерфейсом для работы с логами Skype
  • SkypeBrowser (http://www.skypebrowser.com/) - веб-инструмент с аналогичными функциями
  • Любой менеджер SQLite (например, это дополнение к Firefox) - предоставляет вам полный доступ ко всем данным, хранящимся в Skype, включая сообщения (подробности использования приведены в ответе Даниэля Бека)
1

Попробуйте SkypeHistoryViewer.

Небольшая программа, которая позволит пользователю открывать всю историю активности Skype, которая находится на ПК, проверять использование ваших детей, кто там разговаривает с тем, что там говорят, или проверять обманщика. В настоящее время для Windows Vista и 7.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .