web-dev-qa-db-fra.com

Comment exporter l'historique de Skype?

Est-il possible d'exporter l'historique des discussions sur Skype v4 dans un format lisible en texte brut?
(.txt, .xml, .html)

Sinon, est-il possible de sauvegarder/restaurer l'historique des discussions sur Skype?
(Cela ne me dérangerait pas de sauvegarder sur Gmail ou au format lisible en texte brut).

J'ai trouvé de nombreux outils sur Internet et j'ai même essayé certains d'entre eux, mais ils ne semblent pas fonctionner.

31
Peter Štibraný

Voir le script présenté ici: Enregistrez l'historique des discussions sur Skype .

Voici le code:

' 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

Il suffit de l’enregistrer en tant que fichier .vbs et de l’exécuter. Ensuite, lors de la première utilisation, Skype vous interrogera sur l'autorisation de connexion à l'API Skype. Cliquez simplement sur OK. Après cela, il créera un dossier appelé SkypeChatHistory et certains fichiers qui devraient contenir votre historique de discussion.

11
harrymc

Il y a Skype Historian , il peut exporter en texte brut, json, csv et xml; également capable de grouper des données.

À partir de 2013, cela a fonctionné pour moi hors de la boîte (mon skype est 6.0.0.126). Cependant, son successeur semble être le open-source skyninja , que je n'ai pas encore essayé.

Configuration requise: Windows 7/Windows XP avec .NET Framework 3.5

export options

Trouvé le lien vers ce projet sur le blog dans la réponse de harrymc.

10
n611x007

Si vous voulez le moyen le plus simple d’exporter votre historique dans un format lisible, utilisez skypebrowser.com , qui peut lire votre fichier main.db.

Mais puisqu'il s'agit d'un service tiers, vous devez évidemment y réfléchir à deux fois avant de l'utiliser si vous avez des données confidentielles dans vos discussions. Dans ce cas, votre seul choix sûr est un navigateur SQLite (vous aurez besoin de la table messages).

3
geppertuo

c'est la raison pour laquelle j'utilise toujours Skype 3.

à quoi pensaient-ils quand ils supprimaient la commande /htmlhistory ???

avec Skype 4, je crains que les seules options disponibles soient les programmes classiques tels que Pamela pour Skype (chat l'enregistrement n'est pas disponible dans la version gratuite).

en ce qui concerne la sauvegarde et la restauration de l'historique des discussions, c'est assez simple:

Recherchez le dossier Application Data\Skype\(votre nom d'utilisateur) et copiez-le dans un autre emplacement, tel qu'un CD ou un DVD-ROM.

Pour restaurer les fichiers d’historique, copiez simplement les fichiers dans ce dossier.

3
Molly7244

Réponses rapides

  1. Est-il possible d'exporter l'historique des discussions sur Skype v4 (.txt, .xml, .html)?
    Oui, c’estavec des programmes comme Skyperious [ 1 ], écrit en phyton et en open source, ouplus directement avec chaque programme permettant de lire le format de base de données sqlite3 [ 3 ] (voir ci-dessous pour plus de détails).

  2. Sinon, est-il possible de sauvegarder/restaurer l'historique des discussions sur Skype?
    Oui, c'est [ 2 ]. L’historique des discussions est enregistré dans un fichier de base de données, le fichier main.db.
    Vous pouvez sauvegarder et restaurer le fichier main.db. quand vous avez besoin/voulez .


Quelques mots plus sur l'exportation dans un format utilisable par l'homme:

  • Ce n'est pas le cas de réinventer le weel:-) Il existe de nombreux programmes développés pour cela.
    J'aimerais suggérer Skyperious  [ 1 ], écrit en python, téléchargeable en tant que code source et en version binaire pour Windows afin que puisse fonctionner sous chaque système d'exploitation.
    Il est capable d'exporterin html, txt ou csv.
    Cette ligne de commande pour Linux créera un fichier html pour chaque autre partenaire de discussion dans un sous-répertoire:

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

    Pour Windows, il existe le fichier de commandes analogue skyperious.bat. Html avec un format agréable.

  • Pour être honnête, vous n'avez pas besoin d'un programme tiers/: mais vous pouvez faire du sport avec une base de données.
    Le chat est à l'intérieur du fichier main.db [ 2 ]. c'est une base de données sqlite3 [ 3 ], [ 4 ].
    Avec sqlite3 ou tout autre outil graphique ou autre outil graphique, vous pouvez effectuer une requête telle que

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

    (sur une seule ligne et avec le nom d'utilisateur skype de la deuxième personne au lieu de <OTHER_SKYPENAME>)

    Notez qu'il est possible de SELECT chaque colonne de la base de données qui vous intéresse.
    Avec une interface graphique telle que sqliteman [ 3b ], cela peut être plus simple, vous pouvez sélectionner la colonne de manière graphique, puis mettre un filtre sur la valeur d’un champ ... et il composera à nouveau une ligne comme

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

    enter image description here


Quelques mots à propos de sauvegarde/restauration

Il est possible de sauvegarder/restaurer le fichier de discussion directement [ 2 ].

Tout l'historique des discussions est enregistré dans un fichier de base de données, le fichier main.db.
Si vous faites des copies régulières de ce fichier, il sera toujours possible de restaurer l'historique des discussions.
Assurez-vous que Skype n'est pas en cours d'exécution sur l'ordinateur.

Vous n'avez qu'à trouver où il est stocké sur votre ordinateur:

  • Dans Windows, il est rapporté [ 2b ] être dans %appdata%\Skype\YourSkypeName, où généralement %appdata%\Skype est traduit par: C:\Users\YourUserName\AppData\Roaming\Skype
  • Sous Linux à la place, c'est sous /home/LinuxUsername/.Skype/SkypeUserName/
    ou prochainement ~/.Skype/SkypeUserName/.
  • Sur Mac devrait être sous ~/Library/Application\ Support/Skype/<YOUR SKYPENAME>/
3
Hastur

Le plugin Skype G-Recorder est idéal pour la sauvegarde des discussions.

1
Greg

Vous devez simplement aller dans le dossier principal de votre utilisateur comme dans win7: C:\Utilisateurs [votre_utilisateur]\AppData\Roaming\Skype

N'oubliez pas que le dossier "AppData" est masqué. Vous devrez donc peut-être sélectionner l'option permettant d'afficher les dossiers masqués.

Recherchez ensuite le dossier avec le nom d'utilisateur de votre compte skype et copiez-le sur le nouveau PC ... toutes vos icônes de discussions et de contacts, etc., seront copiées sur le nouvel ordinateur.

1
Iconfx

Vous pouvez l'utiliser pour exporter les données de l'historique des discussions:

http://www.gammatwo.com/2010/12/18/save-skype-chat-history/

1
Maryann

Ouvrez simplement une nouvelle fenêtre de discussion avec le contact pour lequel vous souhaitez enregistrer l'historique. Tapez "/ history" (sans les guillemets) dans la fenêtre de discussion. Une fois l'historique rempli, sélectionnez/mettez en surbrillance une partie du texte avec le curseur de votre souris. Puis, sous Windows, appuyez sur "Ctrl+A"sur votre clavier. Une fois que tout est en surbrillance, appuyez sur"Ctrl+C"Ouvrez Microsoft Word (ou un logiciel de traitement de texte similaire, tel que OpenOffice.org Writer) et appuyez sur"Ctrl+V"sur votre clavier. Enregistrez le fichier sur votre disque dur ou votre clé USB, et le tour est joué: vous avez un enregistrement complet de votre historique de chat.

1
Wesley

Il existe une option pour exporter l'historique Skype au format CSV, etc., à partir de la page de votre compte sur Skype.com .

0
Daniel

Logiciel permettant d'enregistrer des appels et de stocker des appels enregistrés/l'historique des discussions/les transferts de fichiers dans votre messagerie électronique - http://skype2email.com

Skype2email est un programme commercial proposant un essai gratuit de 14 jours.
Disclaimer: J'ai travaillé sur ce programme.

0
Mehal

Je pense qu’il existe un moyen plus élégant de sauvegarder vos conversations et vos appels, puis de l’envoyer par courrier électronique. Par exemple, utiliser Skype Recorder vous permet de tout enregistrer sur le stockage en ligne, d’ajouter des fonctions telles que la recherche en texte intégral, de lire vos appels en ligne et de beaucoup d'autres fonctionnalités intéressantes. Je pense que cela va vraiment vous aider avec votre problème.

0
Zhenya

La meilleure chose à faire si vous souhaitez simplement transférer l'historique sur un autre ordinateur est de suivre les conseils de Skype ici: https://support.skype.com/fr/faq/FA10649/ Puis-je transférer mon historique de chat d'un ordinateur à un autre? Frompage = search & q = chat + historique & fromSearchFirstPage = false . Ce que vous faites est de marquer vos conversations comme non lues, et elles sont transférées vers un autre ordinateur lorsque vous vous y connectez la prochaine fois.

0
RyanTM

Cet outil peut exporter votre historique Skype au format HTML:

Vous pouvez trouver les exécutables pour Win et Mac ici:

0
asmaier