Прочитать архив сообщений Skype - PullRequest
28 голосов
/ 07 декабря 2009

Я хотел бы прочитать мой архив сообщений Skype вне приложения Skype. И иметь возможность экспортировать его каким-то образом (кроме копирования и вставки из моих сообщений), насколько я могу судить, скайп предоставляет только 30 дней или архивы.

Кто-нибудь использует приложение для архивирования / экспорта сообщений Skype?

Ответы [ 5 ]

21 голосов
/ 21 декабря 2009

Вы также можете просмотреть базу данных профиля Skype (% USERDIR% \ Application Data \ Skype \% имя вашего профиля% \ main.db ), которая в основном представляет собой базу данных SQLite, и посмотреть, что из нее можно получить. , Если вы используете Windows 8 и выше , путь будет % USERDIR% \ AppData \ Local \ Packages \ Microsoft.SkypeApp \ Localstate \% your_skype_profile_name% \ main.db

Я расскажу вам о таблицах:

  • «Разговоры» - разговор
  • «Сообщения», связанные с «Беседами» через поле convo_id
  • «Чаты» - список сохраненных чатов, каждый чат состоит из разговоров
  • "ChatMembers" - участники чата (ов)

Таблицы довольно широки, и использование некоторых полей не так очевидно, но я думаю, вы поняли.

15 голосов
/ 08 июля 2015

Да ладно, это Stackoverflow, давайте разберемся с техническим, не так ли? Давайте уберем детские jpegs, инструменты графического интерфейса и psuedocode для электронных таблиц и рассмотрим суть проблемы!

[Удар кулаком]

Источник: https://coolaj86.com/articles/searching-skypes-sqlite-database/

Найдите свою базу данных Skype

Сначала вы должны найти правильную базу данных Skype для пользователя:

ls ~/Library/Application\ Support/Skype/

sqlite3 ~/Library/Application\ Support/Skype/<<YOUR_USER_NAME>>/main.db

Изучи их Столы Хорошо!

Вы захотите взглянуть на доступные таблицы и их описания:

.tables          " see the short table list
.schema Contacts " all about the Contacts table
.schema Messages " all about the Messages table

Вам, вероятно, понадобится использовать старый добрый ctrl+f для поиска в выводе таких вещей, как time, author и username.

Погрузитесь в SQL

Тогда вы должны погрузиться в SQL ...

" List the 25 most recently contacted contacts
SELECT skypename, lastused_timestamp FROM Contacts ORDER BY lastused_timestamp DESC LIMIT 25;

" List the 100 most recent messages
SELECT id, convo_id, timestamp, type, author, body_xml FROM Messages ORDER BY timestamp DESC LIMIT 100;

" List the 100 most recent conversations (and all participants)
SELECT last_activity_timestamp, identity, type, given_displayname, displayname FROM Conversations ORDER BY last_activity_timestamp DESC LIMIT 100;

" Search for a message with the text 'home'
SELECT author, body_xml FROM Messages WHERE body_xml LIKE '%HOME%' ORDER BY timestamp ASC;

" Search for a contact named 'john'
SELECT (displayname || ' : ' || skypename || ' : ' || fullname) as names FROM Contacts WHERE names LIKE '%JOHN%' ORDER BY lastused_timestamp ASC;

(примечания отмечены знаком ", а не #)

Обратите внимание, что

  • Messages относится к такой строке текста, как "Что случилось?"
  • Conversations относится к коллекции сообщений между 2 или более сторонами.
  • Я думаю, Chats относится к логическим временным промежуткам, разделенным такими метками, как «вчера», «7 дней назад», «24 марта» и т. Д.
7 голосов
/ 28 июля 2014

Я рекомендую два способа сделать это:

A. Самый простой способ - использовать Skyperious . Доступно для Windows, Linux и Mac. Вы можете сделать все это

enter image description here

Это функция поиска:

enter image description here

А вот пример вывода из экспорта:

enter image description here

B. Более сложный, но естественно более гибкий способ - установить браузер SQLite , например , этот , и экспортировать сообщения самостоятельно. Вы можете увидеть некоторую информацию о том, как это сделать, посмотрев эту статью , или вы также можете поискать другие подобные статьи ( Ответ AlexS также предоставляет подсказки ). Вам понадобится некоторый опыт работы с SQL, чтобы использовать эту опцию.

4 голосов
/ 07 декабря 2009

Проверьте это: http://web.archive.org/web/20061019071406/https://developer.skype.com/Docs/ApiDoc/CHAT_object

CHATMESSAGES - list of chatmessage identifiers 
CHATMESSAGES - all messages IDs in this chat, for example CHAT #test_l/$6a072ce5537c4044 CHATMESSAGES 34, 35, 36, 38, 39 
2 голосов
/ 27 февраля 2013

У меня была такая же проблема с историей Skype, Каждое тело стремится обыграть эту историю по многим причинам. Я хотел бы поделиться с вами своим опытом, поскольку я не эксперт, но это может кому-то помочь.

Если у вас есть настольный компьютер или интеллектуальное устройство, файл Main.db является ядром истории Skype, это файл SqL 3.

Как это получить ?????????????????

1. Desktop:

  1. закройте Skype и найдите файл Main.db на C:/Users/[your computer username]/App Data/Roaming/Skype/[your Skype Id] (пожалуйста, просмотрите это для Win7, а для XP и других вам нужно найти файл).

  2. Сделайте резервную копию этого файла на другом диске.

  3. используйте любое программное обеспечение sql, такое как SQLite, SQLite Expert или другое, чтобы открыть файл в качестве базы данных.

  4. в меню «Данные» вы можете увидеть всю свою информацию для истории в левой части программы, такую ​​как сообщения, звонки, разговоры и многое другое.

  5. вы найдете исходящие и входящие сообщения IM в сообщениях.

  6. щелкните правой кнопкой мыши и перейдите к выбору столбца и выберите интересующие столбцы, например идентификатор пользователя body-xml для текста сообщения и отметки времени.

  7. Вы можете сократить свой выбор, отметив необходимые поля.

  8. Нажмите вправо и выберите текстовое редактирование, а затем вы можете сделать все, что вам нужно, добавить удаление и т. Д. Для выбранного поля.

  9. вам не нужно ничего сохранять, потому что это автоматически сохраняется.

  10. очень важно для временного шага, чтобы он использовал другой тип формата даты, например, вы найдете временную метку 1261610607 для даты 23/12/2009 18: 23,

    так как вы можете настроить время?

    Вы можете просто открыть лист Excel и вставить уравнение:

    =IF(H6="","",(H6/86400)+25569+(-5/24))

    и все.

  11. Теперь снова откройте его, посмотрите историю чата.

2. Для интеллектуальных устройств (например, Ipad) :( Для помощи вы должны использовать рабочий стол или ноутбук:

  1. Загрузите и установите iExplorer для iPad или другое программное обеспечение для просмотра.

  2. Подключите свое устройство, и вы увидите большинство ваших файлов.

  3. Выберите APPs/Skype/Library/App Support/Skype/[your Skype ID].

  4. Отправьте файл на рабочий стол, нажав правую кнопку мыши, и экспортируйте файл.

  5. повторите шаги, как показано выше для 2 - 11, как для процедур рабочего стола.

  6. После завершения редактирования закройте базу данных и в iExplorer укажите своего пользователя Skype и выберите Add File, найдите измененный файл и снова отправьте его на iPad.

  7. Запустите Skype и посмотрите результаты.

...