Como eu exporto a história do Skype?

31

É possível exportar o histórico de bate-papo do Skype v4 em algum formato legível de texto simples?
( .txt, .xml, .html )

Como alternativa, é possível fazer backup / restaurar o histórico do bate-papo do Skype?
(Eu não me importaria de backup para o Gmail, ou para o formato de texto simples legível).

Eu encontrei várias ferramentas na internet e até tentei algumas delas, mas elas não parecem funcionar.

    
por Peter Štibraný 07.11.2009 / 14:20

14 respostas

11

Veja o roteiro apresentado aqui: Salve o histórico de bate-papo do Skype .

Aqui está o código:

' 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

Basta salvá-lo como .vbs file e executá-lo. Então, pela primeira vez, o Skype perguntará a você sobre a permissão para conectar a API do Skype, portanto, basta clicar em OK. Depois disso, ele criará uma pasta chamada SkypeChatHistory e alguns arquivos que devem ter seu histórico de bate-papo.

    
por 07.11.2009 / 19:28
10

Skype Historian , pode exportar para texto simples, json, csv e xml; também é capaz de agrupar dados.

A partir de 2013, funcionou para mim fora da caixa (meu skype é 6.0.0.126 ). No entanto, o seu sucessor parece ser o open-source skyninja , que ainda não experimentei.

System Requirements: Windows 7 / Windows XP with .NET Framework 3.5

Encontrouolinkparaesteprojetono blog na resposta da harrymc.

    
por 21.01.2013 / 15:01
3

essa é a razão pela qual eu ainda uso o Skype 3.

o que eles estavam pensando quando removeram o comando / htmlhistory ???

com o Skype 4, tenho medo de que as únicas opções sejam programas especiais, como Pamela para Skype (a gravação de bate-papo não está disponível na versão gratuita).

como para backup e restauração do histórico de bate-papo, é muito fácil:

Locate the folder Application Data\Skype\ (your username) and copy it to another location such as a CD or DVD-ROM.

To restore the history files just copy the files back to that folder.

    
por 07.11.2009 / 15:41
3

Respostas rápidas

  1. É possível exportar o histórico de bate-papo do Skype v4 (.txt, .xml, .html)?
    Sim, é com programas como o Skyperious [ 1 ] , escritos em phyton e open source, < strong> ou mais diretamente com cada programa que permite ler o formato de banco de dados sqlite3 [ 3 ] (veja abaixo para detalhes).

  2. Como alternativa, é possível fazer backup / restaurar o histórico do bate-papo do Skype?
    Sim, é [ 2 ] . O histórico de bate-papo é salvo em um arquivo de banco de dados, o arquivo main.db .
    Você pode fazer backup e restaurar o arquivo main.db . quando você precisa / quer.

Algumas palavras mais sobre como exportar em um formato humano utilizável:

  • Não é o caso de reinventar o weel :-) Existem muitos programas desenvolvidos para isso.
    Gostaria de sugerir Skyperious [ 1 ] , escrito em python, disponível para download como código-fonte e em versão binária para Windows, para que possa funcionar em cada sistema operacional . É capaz de exportar em html , txt ou csv .
    Esta linha de comando para o Linux criará um arquivo html para cada outro parceiro de bate-papo em um subdiretório:

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

    No Windows, há o arquivo de lote análogo skyperious.bat . Html com um bom formato.

  • Para ser honesto, você não precisa de um programa de 3ª parte : mas você pode fazer uma academia com um banco de dados.
    O chat está dentro do arquivo main.db [ 2 ] . isto é um banco de dados sqlite3 [ 3 ], [ 4 ] .
    Com sqlite3 ou com qualquer outra ferramenta gráfica ou não gráfica, você pode fazer uma consulta como

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

    (em apenas uma linha e com o nome de usuário skype das segundas pessoas em vez de <OTHER_SKYPENAME> )

    Observe que é possível SELECT de cada coluna do banco de dados em que você está interessado.
    Com uma interface gráfica como sqliteman [ 3b ] , pode-me ser mais simples, você pode selecionar a coluna em uma maneira gráfica, em seguida, colocar um filtro no valor de um campo ... e ele irá compor novamente uma linha como

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

Algumaspalavrasmaissobrebackup/restauração

Épossívelfazerbackup/restauraroarquivodebate-papodiretamente[ 2 ] .

All chat history is saved in one database file, the main.db file.
If you make regular copies of this file, then it will always be possible to restore the chat history.
Make sure that Skype is not running on the computer.

Você só precisa descobrir onde ele está armazenado no seu computador:

  • No Windows, é relatado [ 2b ] estar em %appdata%\Skype\YourSkypeName , onde normalmente %appdata%\Skype é traduzido como: C:\Users\YourUserName\AppData\Roaming\Skype
  • No Linux, em vez de /home/LinuxUsername/.Skype/SkypeUserName/
    ou logo ~/.Skype/SkypeUserName/ .
  • No Mac, deve estar abaixo de ~/Library/Application\ Support/Skype/<YOUR SKYPENAME>/
por 10.12.2015 / 16:49
3

Se você quer a maneira mais fácil de exportar seu histórico para um formato legível, seria skypebrowser.com , que pode ler o seu main.db file.

Mas como é um serviço de terceiros, você obviamente deve pensar duas vezes antes de usá-lo se tiver dados confidenciais em seus bate-papos. Nesse caso, sua única opção segura é um navegador SQLite (você precisará da tabela messages ).

    
por 21.04.2016 / 10:03
1

O G-Recorder do Skype funciona muito bem para os chats de backup.

    
por 28.12.2009 / 22:22
1

Você pode usar isso para exportar dados do histórico de bate-papo:

link

    
por 18.12.2010 / 18:40
1

Você só precisa acessar a pasta principal do usuário como no win7: C: \ Usuários [seu_usuário] \ AppData \ Roaming \ Skype

Lembre-se de que a pasta "AppData" está oculta, por isso, talvez seja necessário selecionar a opção para mostrar pastas ocultas.

Em seguida, encontre a pasta com o nome de usuário da sua conta do skype e copie-a para o novo pc ... todos os seus bate-papos e ícones de contatos e etc serão copiados para o novo computador.

    
por 13.02.2011 / 05:59
1

Basta abrir uma nova janela de bate-papo com o contato para o qual você deseja salvar o histórico de bate-papo. Digite "/ history" (sem as aspas) na janela de bate-papo. Quando o histórico estiver preenchido, selecione / realce uma parte do texto com o cursor do mouse. Então, (no Windows) pressione " Ctrl + A " no seu teclado. Quando tudo estiver realçado, pressione " Ctrl + C ." Abra o Microsoft Word (ou um software de processamento de texto semelhante, como o OpenOffice.org Writer) e pressione " Ctrl + V " no teclado. Salve o arquivo no seu disco rígido ou na unidade USB e voila: Você tem um registro completo do seu histórico de bate-papo.

    
por 14.04.2011 / 02:46
0

Software que permite gravar chamadas e armazenar registros / históricos de bate-papo / transferências de arquivos para seu e-mail - link

Skype2email é um programa comercial com 14 dias de teste gratuito.
Disclaimer: Eu trabalhei neste programa.

    
por 27.05.2010 / 16:05
0

A melhor coisa a fazer se você quiser apenas transferir o histórico para outro computador é seguir o conselho da Skype aqui: link . O que você faz é marcar suas conversas como Não lidas e elas serão transferidas para outro computador quando você fizer login na próxima vez.

    
por 18.11.2010 / 00:48
0

Há uma opção para exportar o histórico do Skype em CSV, etc. a partir da página da sua conta no Skype.com .

    
por 08.11.2009 / 02:28
0

Acho que existe uma maneira mais elegante de salvar seus bate-papos e chamadas e enviá-lo para o e-mail. Por exemplo, usar o Skype Recorder permite que você salve tudo isso no armazenamento on-line, além de adicionar funções como pesquisa de texto completo, tocar suas chamadas on-line e muitos outros recursos interessantes. Eu acho que isso realmente vai ajudar você com o seu problema.

    
por 04.11.2010 / 21:55
0

Esta ferramenta pode exportar seu histórico do Skype para HTML:

Você pode encontrar arquivos executáveis para Win e Mac aqui:

por 11.01.2016 / 15:00