Twitter Facebook github

Skypeのチャット履歴を抽出する方法

備忘録として簡単にメモ。

Macの場合 "~/Library/Application Support/Skype/(自分のアカウント名)/main.db" に、SQLiteのデータベースとして保存されている。
バックアップを取る場合は上のファイルをコピーすればOK。

メッセージをクエリするには、sqlite3をインストールし、上のDBの Messages テーブルを対象とすればよい。

Messagesテーブルのスキーマ

.schema で出力してみる。

特定の相手とのメッセージを抽出するには?

海外のスタックオーバーフローで dialog_partner = ‘相手のID’ で抽出すれば良い、とする記事もあるけど・・・

これを実際にやってみると、Skype上ではちゃんと発言しているのに記録されていない歯抜けのメッセージが出てきたりする。

実際に抽出できていないメッセージを、抽出できたメッセージを比較したところ、どうやら dialog_partner カラムが空文字だったりして、どうも確実ではない様子。

そこで、上のSQLで convo_id というデータを得られるので、それを元に再度SELECTする。

これで自分の環境では、相手とのやり取りを漏れなく取得できる。

ファイルにエクスポートするには

コメントを残す

メールアドレスが公開されることはありません。