Skypeの履歴をエクスポートするにはどうすればよいですか?


31

Skype v4チャット履歴を読みやすいプレーンテキスト形式にエクスポートすることは可能ですか?
.txt, .xml, .html

または、スカイプチャット履歴をバックアップ/復元することはできますか?
(Gmail、または読みやすいプレーンテキスト形式へのバックアップを気にしない)。

私はインターネット上で多くのツールを見つけて、それらのいくつかを試しましたが、それらは機能していないようです。


今日では、ファイルをコピーするだけでチャットをバックアップ/復元するmain.dbことができ、pythonプログラムで、またはデータベースsqlite3を読み取ることができるプログラムで直接チャットをエクスポートし、クエリを実行するか、グラフィカルインターフェイスのオプションを選択することができます。詳細については、以下の回答に記載しました。
ヘイスター

回答:


11

こちらのスクリプトをご覧ください:Skypeチャット履歴を保存します

コードは次のとおりです。

' Define global variables
Dim oFSO, chat_file, folder_to_save
' Directory where You want to save history (you can modify it)
' Now it is relative, so it will be created where Your *.vbs script runs
folder_to_save = "SkypeChatHistory"
line_count = 0

' Create FSO
Set oFSO = CreateObject("Scripting.FileSystemObject")
set_next_free_dir()

' Connect to Skype API via COM
Set oSkype = WScript.CreateObject("Skype4COM.Skype", "Skype_")
' Open skype, if it is not running
If Not oSkype.Client.IsRunning Then
oSkype.Client.Start()
End If

WScript.Echo "Skype history will be saved. Found " & oSkype.Chats.Count & " chat group."

' Iterate chats
For Each oChat In oSkype.Chats
names = ""
' First name is You, so it is unnecessary to keep
no_1st_flag = TRUE
For Each oUser In oChat.Members
If no_1st_flag Then
no_1st_flag = FALSE
Else
   names = names & "_" & oUser.FullName
End If
Next
get_file("chat" & names & ".txt")
chat_file.WriteLine(vbNewLine & "==== CHAT HISTORY (" & Replace(names, "_", "") & ") ====" & vbNewLine)
line_count = line_count + oChat.Messages.Count
' Fix by an anonymous commenter
If oChat.Messages.Count > 0 Then
For Each oMsg In oChat.Messages
' Fix by Vadim Kravchenko
On Error Resume Next
chat_file.WriteLine(oMsg.FromDisplayName & " (" & oMsg.Timestamp & "): " & oMsg.Body)
Next
End If
chat_file.Close
Next

WScript.Echo "Backup was finished (" & line_count & " line saved). You can find your chats in: ./" & folder_to_save

' Garbage collection
SET chat_file = NOTHING
SET folder_to_save = NOTHING
SET oFSO = NOTHING
SET oSkype = NOTHING

' Access to a file given by name
Sub get_file(file_name)
' Parameter fix by: rommeech
Set chat_file = oFSO.OpenTextFile(folder_to_save & "/" & file_name, 8, True, -1)
End Sub

' Find an appropriate directory the logs to save, however, to avoid collision with former dirs
Sub set_next_free_dir()
If oFSO.FolderExists(folder_to_save) Then
ext = 1
While oFSO.FolderExists(folder_to_save & "_" & ext) And ext < 100
  ext = ext + 1
Wend
folder_to_save = folder_to_save & "_" & ext
End If
oFSO.CreateFolder(folder_to_save)
End Sub

.vbsファイルとして保存して実行するだけです。その後、Skypeが初めてSkype APIを接続する許可について尋ねるので、[OK]をクリックします。その後、というフォルダとSkypeChatHistory、チャットの履歴が含まれるファイルが作成されます。


1
ありがとう。残念ながら、それは私のために動作しません:-(それはエラー「オートメーションクラス名『Skype4COM.skype』を見つけることができませんでした」と表示私はそれが動作を取得する方法を見つけようとします。。
ピーターŠtibraný

1
正常に動作しています... developer.skype.com/DownloadからSkype4COMをインストール(cmdlineからregsvr32.exe Skype4COM.dllを使用)、スクリプトを再度実行する必要がありました。
ピーターシュティブラニー2009年

Skype APIを使用してチャット履歴を取得するのは非常に簡単です。私を正しい方向に向けてくれてありがとう。
ピーターシュティブラニー2009年

1
一度使用したことを覚えていますが、その時点で機能していました。今では私にこのエラー与えi53.tinypic.com/zmd3lf.png
IsmailS

1
ダウンロードはこちらに移動しました:developer.skype.com/accessories
sjbotha

10

Skype Historianがあり、プレーンテキスト、json、csv、およびxmlにエクスポートできます。データをグループ化することもできます。

2013年の時点で、それは箱から出してすぐに機能しました(私のスカイプはです6.0.0.126)。しかし、後継者はオープンソースの skyninjaのようです。私はまだ試していません。

システム要件:Windows 7 / .NET Framework 3.5を搭載したWindows XP

エクスポートオプション

このプロジェクトへのリンクは、ブログの harrymcの回答にあります。


利用可能なskype-ninjaのビルドはないようです。
lkraav

@lkraavには、Skyninjaの20150318 v0.1リリースがあるようです。ドットネット4.5
n611x007

3

それが私がまだSkype 3を使用している理由です。

/ htmlhistoryコマンドを削除したとき、彼らは何を考えていましたか?

Skype 4では、Pamela for Skypeなどの商用プログラムしか選択肢がないのではないかと心配しています(無料版ではチャット録音は利用できません)。

チャット履歴のバックアップと復元については、かなり簡単です。

Application Data \ Skype \(ユーザー名)フォルダーを見つけて、CDやDVD-ROMなどの別の場所にコピーします。

履歴ファイルを復元するには、ファイルをそのフォルダーにコピーします。


3

クイックアンサー

  1. Skype v4チャット履歴(.txt、.xml、.html)をエクスポートできますか?
    はい、それがあるSkyperiousようなプログラム [ 1 ] phyton及びオープンソースで書かれた、又はより直接的に読み取ることができ、各プログラムとsqlite3データベース形式 [ 3 ](詳細は下記参照します)。

  2. または、スカイプチャット履歴をバックアップ/復元することはできますか?
    はい、それは [ 2 ]です。チャット履歴は、1つのデータベースファイルに保存されmain.dbます。ファイルを
    バックアップおよび復元できmain.dbます。必要なとき/欲しいとき。


人間が使用できる形式でエクスポートしようとしている言葉:

  • ウィールを再発明するのはそうではありません :-)。このために開発された多くのプログラムがあります。Pythonで書かれ、ソースコードとしてダウンロード可能なWindows用のバイナリバージョンのSkyperious [ 1 ]
    をお勧めします。これにより、各オペレーティングシステムで動作しますエクスポートすることができで、または。 Linux用のこのコマンドラインは、サブディレクトリ内の各チャットパートナーのhtmlファイルを作成します。
    htmltxtcsv

        ./skyperious.sh export ~/.Skype/SKYPE_USERNAME/main.db -t html
    

    Windowsには、類似のバッチファイルがありますskyperious.bat。素敵な形式のHTML。

  • 正直に言うと、第3部のプログラムは必要ありませんが、データベースを使用してジムを行うことができます。
    チャットはファイル[ 2 ] 内にあります。それはsqlite3データベース[ 3 ]、[ 4 ]です。 とやその他のグラフィックやないグラフィックツールで次のようなクエリを行うことができますmain.db
    sqlite3

        sqlite3 main.db "SELECT author,timestamp, body_xml 
                FROM messages WHERE dialog_partner = '<OTHER_SKYPENAME>'" > My_file.txt
    

    (1行のみで、の代わりに2人目のskypeユーザー名を使用<OTHER_SKYPENAME>

    SELECTデータベースの各列に関心があることに注意してください
    。sqliteman [ 3b ]などのGUIを使用すると、より簡単に、グラフィカルな方法で列を選択し、値にフィルターを適用できます。フィールド...そして、それは再び行を構成します

    SELECT author, timestamp, body_xml FROM "main"."messages" WHERE dialog_partner = 'SKYPE NAME of 2nd USER';
    

    ここに画像の説明を入力してください


バックアップ/復元についてのいくつかの言葉

チャットファイルを直接バックアップ/復元することは可能です[ 2 ]

すべてのチャット履歴は、main.dbファイルという1つのデータベースファイルに保存されます。
このファイルの定期的なコピーを作成すると、チャットの履歴をいつでも復元できます。
コンピューターでSkypeが実行されていないことを確認します。

コンピューター上のどこに保存されているかを見つけるだけです。

  • Windowsでは、[ 2b ]にあることが報告され ていますが%appdata%\Skype\YourSkypeName、通常%appdata%\Skypeは次のように変換されます。C:\Users\YourUserName\AppData\Roaming\Skype
  • Linuxでは、代わりに、/home/LinuxUsername/.Skype/SkypeUserName/
    またはすぐ下にあり~/.Skype/SkypeUserName/ます。
  • Macでは ~/Library/Application\ Support/Skype/<YOUR SKYPENAME>/

1
私は、同意github.com/suurjaak/Skyperiousが利用できる最高のツールです。ユーザーごとのメッセージ、ユーザーごとの絵文字、チャットで最も使用される単語など、チャットの統計情報を作成することもできます。
asmaier

3

履歴を読み取り可能な形式にエクスポートする最も簡単な方法が必要な場合は、ファイルを読み取ることができるskypebrowser.comになりmain.dbます。

ただし、サードパーティのサービスなので、チャットに機密データがある場合は、使用する前によく考え直してください。この場合、安全な選択はSQLiteブラウザのみです(messagesテーブルが必要です)。


1

SkypeプラグインG-Recorderはチャットのバックアップに最適です。


私はそれを見つけましたが、私にとってはうまく
いき

@Peter:私はG-Recorderの共著者ですが、「問題の報告」メニュー項目で問題を報告しましたか?少なくともサポートチームの機能を確認するためだけに:)
アンドリーティリチコ


1

win7のように、ユーザーのメインフォルダーに移動するだけです:C:\ Users [your_user] \ AppData \ Roaming \ Skype

「AppData」フォルダーは非表示であるため、非表示フォルダーを表示するオプションを選択する必要がある場合があることに注意してください。

次に、Skypeアカウントのユーザー名を持つフォルダーを見つけて、新しいPCにコピーします...すべてのチャットと連絡先アイコンなどが新しいコンピューターにコピーされます。


1

チャット履歴を保存する連絡先との新しいチャットウィンドウを開くだけです。チャットウィンドウに「/ history」と入力します(引用符は含みません)。履歴が作成されたら、マウスカーソルでテキストの一部を選択/強調表示します。次に、(Windowsの場合)キーボードの「Ctrl+ A」を押します。すべてが強調表示されたら、「Ctrl+ C」を押します。Microsoft Word(またはOpenOffice.org Writerなどの類似のワードプロセッシングソフトウェア)を開き、キーボードの「Ctrl+ V」を押します。ハードディスクまたはUSBドライブにファイルを保存すると、出来上がり:チャット履歴の完全な記録があります。


0

通話を録音し、録音した通話/チャット履歴/ファイル転送をメールに保存できるソフトウェア-http://skype2email.com

Skype2emailは、14日間の無料試用が可能な商用プログラムです。
免責事項:私はこのプログラムに取り組みました。


こんにちは。あなたのプログラムを試しましたが、起動するとクラッシュします。どこを見るか、何を送るかを教えてくれたら、もっと試してみよう。
ピーターシュティブラニー


0

Skype.comのアカウントページからCSVなどでSkype履歴をエクスポートするオプションがあります。


7
正確に私がそれを見つけることができる場所を書いていただけますか?Skypeアカウント全体を見ましたが、どこにも見つかりませんでした:
ピーターŠtibraný09年

1
それがどのように怖い言うまでもありません
lkraav

0

チャットや通話を保存してメールに送信するもっとエレガントな方法があると思います。たとえば、Skype Recorderを使用すると、すべてをオンラインストレージに保存できるだけでなく、全文検索などの機能を追加したり、オンラインで通話を再生したり、その他多くの便利な機能を使用できます。問題の解決に役立つと思います。


弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.