मैं Skype का इतिहास कैसे निर्यात करूं?


31

क्या Skype v4 चैट इतिहास को कुछ पठनीय सादे-पाठ प्रारूप में निर्यात करना संभव है?
( .txt, .xml, .html)

वैकल्पिक रूप से, क्या स्काइप चैट इतिहास का बैकअप / पुनर्स्थापना संभव है?
(मैं जीमेल, या पठनीय सादे पाठ प्रारूप के लिए बैकअप के लिए बुरा नहीं होगा)।

मुझे इंटरनेट पर कई उपकरण मिले हैं और उनमें से कुछ को आजमाया है, लेकिन वे काम नहीं करते हैं।


आजकल केवल फ़ाइल की प्रतिलिपि बनाने वाले चैट का बैकअप लेना / पुनर्स्थापित करना main.dbसंभव है, और एक अजगर प्रोग्राम के साथ या सीधे डेटाबेस sqlite3 को पढ़ने में सक्षम प्रोग्राम को निर्यात करना, क्वेरी करना या ग्राफ़िकल इंटरफ़ेस के विकल्प के माध्यम से चयन करना संभव है। । मैंने नीचे दिए गए उत्तर में अधिक विस्तार से लिखा है।
हस्त्तूर

जवाबों:


11

यहां प्रस्तुत स्क्रिप्ट देखें: स्काइप चैट इतिहास सहेजें

यहाँ कोड है:

' 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'" त्रुटि का पता नहीं लगा सका। मैं यह पता लगाने की कोशिश करूंगा कि इसे कैसे काम किया जाए।
पीटर 9tibraný

1
मुझे यह काम कर रहा है ... मुझे स्काइप 4COM को डेवलपर. skype.com/Download (regsvr32.exe Skype4COM.dll से cmdline का उपयोग करके) स्थापित करने की आवश्यकता है , और फिर स्क्रिप्ट फिर से चलाएँ।
पीटर attibraný

यह पता चला है कि चैट इतिहास प्राप्त करने के लिए Skype API का उपयोग करना बहुत आसान है। मुझे सही दिशा में इशारा करने के लिए धन्यवाद।
पीटर attibraný

1
मुझे याद है कि मैंने एक बार इसका इस्तेमाल किया था और इसने उस समय काम किया था। अब यह मुझे यह त्रुटि देता है i53.tinypic.com/zmd3lf.png
IsmailS

1
डाउनलोड यहां ले जाया गया: developer.skype.com/accessories
sjbotha

10

नहीं है स्काइप इतिहासकार , यह सादा पाठ, json, CSV और XML के लिए निर्यात कर सकते हैं; समूह डेटा के लिए भी सक्षम है।

2013 तक, इसने मेरे लिए बॉक्स से बाहर काम किया (मेरा स्काइप है 6.0.0.126)। हालाँकि यह उत्तराधिकारी ओपन-सोर्स स्किनिन्जा लगता है , जिसे मैंने अभी तक आज़माया नहीं है।

सिस्टम आवश्यकताएँ: .NET फ्रेमवर्क 3.5 के साथ विंडोज 7 / विंडोज एक्सपी

निर्यात विकल्प

Harrymc के उत्तर में ब्लॉग पर इस परियोजना का लिंक मिला ।


ऐसा प्रतीत नहीं होता है कि स्काइप-निंजा की कोई भी बिल्ड उपलब्ध है।
लक्रव

@lkraav में स्किनिन्जा की 20150318 v0.1 रिलीज़ हुई है। इसके लिए
डॉटनेट

3

यही कारण है कि मैं अभी भी स्काइप 3 का उपयोग कर रहा हूं।

जब वे / htmlhistory कमांड हटाते हैं तो वे क्या सोच रहे थे ???

स्काइप 4 के साथ मुझे डर है कि केवल विकल्प ही कम्प्रैक्टिव प्रोग्राम हैं जैसे स्काइप के लिए पामेला (चैट रिकॉर्डिंग फ्री वर्जन में उपलब्ध नहीं है)।

बैकअप के लिए और चैट इतिहास को पुनर्स्थापित करने के लिए, यह काफी आसान है:

फ़ोल्डर अनुप्रयोग डेटा \ Skype \ (अपना उपयोगकर्ता नाम) ढूंढें और इसे किसी अन्य स्थान जैसे CD या DVD-ROM पर कॉपी करें।

इतिहास फ़ाइलों को पुनर्स्थापित करने के लिए बस फ़ाइलों को उस फ़ोल्डर में वापस कॉपी करें।


3

हाजिर जवाब

  1. क्या Skype v4 चैट इतिहास (.txt, .xml, .html) को निर्यात करना संभव है?
    हाँ, यह स्काईपरियस [ 1 ] जैसे कार्यक्रमों के साथ है, जो फाइटन और ओपन सोर्स में लिखा गया है, या सीधे प्रत्येक प्रोग्राम के साथ है जो sqlite3डेटाबेस प्रारूप [ 3 ] (विवरण के लिए नीचे देखें) को पढ़ने की अनुमति देता है

  2. वैकल्पिक रूप से, क्या स्काइप चैट इतिहास का बैकअप / पुनर्स्थापना संभव है?
    हां, यह [ 2 ] है । चैट इतिहास एक डेटाबेस फ़ाइल, फ़ाइल में सहेजा गया है main.db
    आप बैकअप और main.dbफ़ाइल को पुनर्स्थापित कर सकते हैं । जब आप की जरूरत है / चाहते हैं।


मानव उपयोगी प्रारूप में निर्यात करने के बारे में कुछ शब्द:

  • यह मूत को मजबूत करने के लिए मामला नहीं है इसके लिए :-) कई कार्यक्रम विकसित किए गए हैं।
    मैं सुझाव देना चाहता हूं कि आकाशवाणी [ 1 ] , जो अजगर में लिखा गया है, स्रोत कोड के रूप में डाउनलोड करने योग्य है और विंडोज के लिए द्विआधारी संस्करण में है ताकि यह प्रत्येक ऑपरेटिंग सिस्टम के तहत काम कर सके
    यह है निर्यात करने में सक्षम में html, txtया csv
    लिनक्स के लिए यह कमांड लाइन एक उपनिर्देशिका में एक दूसरे के चैट पार्टनर के लिए एक html फाइल बनाएगी:

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

    विंडोज के लिए वहाँ अनुरूप बैच फ़ाइल है skyperious.bat। एक अच्छा प्रारूप के साथ एचटीएमएल।

  • ईमानदार होने के लिए आपको तीसरे भाग के कार्यक्रम की आवश्यकता नहीं है : लेकिन आप डेटाबेस के साथ कुछ जिम कर सकते हैं।
    चैट फ़ाइल [ 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
    

    (केवल एक पंक्ति में और दूसरे व्यक्तियों के स्काइप यूज़रनेम के बजाय <OTHER_SKYPENAME>)

    ध्यान दें कि SELECTआपके द्वारा रुचि रखने वाले डेटाबेस के प्रत्येक कॉलम के लिए संभव है ।
    GUI जैसे कि sqliteman [ 3b ] के साथ , यह मुझे और अधिक सरल बना सकता है, आप कॉलम को चित्रमय तरीके से चुन सकते हैं, फिर उसके मान पर एक फ़िल्टर लगाएं एक क्षेत्र ... और यह फिर से एक पंक्ति के रूप में रचना करेगा

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

    यहाँ छवि विवरण दर्ज करें


बैकअप / पुनर्स्थापना के बारे में कुछ शब्द

चैट फ़ाइल को सीधे [ 2 ] बैकअप / रिस्टोर करना संभव है ।

सभी चैट इतिहास एक डेटाबेस फ़ाइल, main.db फ़ाइल में सहेजा जाता है।
यदि आप इस फ़ाइल की नियमित प्रतियां बनाते हैं, तो चैट इतिहास को पुनर्स्थापित करना हमेशा संभव होगा।
सुनिश्चित करें कि Skype कंप्यूटर पर नहीं चल रहा है।

आपको केवल यह पता लगाना है कि यह आपके कंप्यूटर पर कहाँ संग्रहीत है:

  • विंडोज में यह बताया गया है कि [ 2 बी ] में होना चाहिए %appdata%\Skype\YourSkypeName, जहां आमतौर पर %appdata%\Skypeइसका अनुवाद होता है:C:\Users\YourUserName\AppData\Roaming\Skype
  • लिनक्स में इसके बजाय /home/LinuxUsername/.Skype/SkypeUserName/
    या शीघ्र ही है ~/.Skype/SkypeUserName/
  • मैक पर होना चाहिए ~/Library/Application\ Support/Skype/<YOUR SKYPENAME>/

1
मैं सहमत हूं, github.com/suurjaak/Skyperious सबसे अच्छा उपकरण उपलब्ध है। यहां तक ​​कि यह आपकी चैट के आंकड़े भी बना सकता है, जैसे प्रति उपयोगकर्ता संदेश, प्रति उपयोगकर्ता इमोटिकॉन्स, चैट में सबसे अधिक उपयोग किए जाने वाले शब्द आदि।
asmaier

3

यदि आप अपने इतिहास को पढ़ने योग्य प्रारूप में निर्यात करने का सबसे आसान तरीका चाहते हैं, तो वह skypebrowser.com होगा , जो आपकी main.dbफ़ाइल को पढ़ सकता है।

लेकिन चूंकि यह एक तृतीय-पक्ष सेवा है, इसलिए आपको स्पष्ट रूप से इसका उपयोग करने से पहले दो बार सोचना चाहिए कि क्या आपके चैट में कोई गोपनीय डेटा है। इस मामले में आपकी एकमात्र सुरक्षित पसंद एक SQLite ब्राउज़र है (आपको messagesतालिका की आवश्यकता होगी )।


1

Skype प्लगइन G- रिकॉर्डर मेरे लिए बैकअप चैट के लिए बहुत अच्छा काम करता है।


मैंने पाया कि, लेकिन यह मेरे लिए काम नहीं करता था :-(
पीटर .tibraný

@ पेटर: मैं जी-रिकॉर्डर का सह-लेखक हूं, क्या आपने "रिपोर्ट ए प्रॉब्लम" मेनू आइटम द्वारा आपको समस्या बताई है? कम से कम बस यह जांचने के लिए कि हमारी सहायता टीम कैसे काम करती है :)
एंड्री टाइलेचको


1

आपको सिर्फ win7 में अपने उपयोगकर्ता मुख्य फ़ोल्डर में जाना है: C: \ Users [your_user] \ AppData \ Ro \ \ Skype

याद रखें कि "AppData" फ़ोल्डर छिपा हुआ है, इसलिए आपको छिपे हुए फ़ोल्डर दिखाने के विकल्प का चयन करना पड़ सकता है।

फिर अपने स्काइप खाते के उपयोगकर्ता नाम के साथ फ़ोल्डर ढूंढें और इसे नए पीसी पर कॉपी करें ... आपके सभी चैट और संपर्क आइकन और आदि नए कंप्यूटर पर कॉपी हो जाएंगे।


1

जिस चैट को आप चैट हिस्ट्री को सेव करना चाहते हैं, उसके साथ ही एक नई चैट विंडो खोलें। चैट विंडो में "/ इतिहास" (उद्धरण चिह्नों के बिना) टाइप करें। इतिहास के पॉप्युलेट होने के बाद, टेक्स्ट के एक हिस्से को अपने माउस कर्सर से चुनें / हाइलाइट करें। फिर, (विंडोज पर) अपने कीबोर्ड पर " Ctrl+ A" दबाएं। एक बार जब सब कुछ उजागर हो जाए, तो " Ctrl+ " दबाएं C। Microsoft Word (या OpenOffice.org लेखक की तरह एक समान शब्द संसाधन सॉफ़्टवेयर) खोलें और अपने कीबोर्ड पर " Ctrl+ V" दबाएं। फ़ाइल को अपनी हार्डडिस्क या यूएसबी ड्राइव, और वॉइला पर सहेजें: आपके पास अपने चैट इतिहास का पूरा रिकॉर्ड है।


0

सॉफ्टवेयर जो रिकॉर्ड किए गए कॉल / चैट इतिहास / फ़ाइल को आपके ईमेल पर स्थानांतरित करने की अनुमति देता है - http://skype2email.com

Skype2email 14 दिनों के निःशुल्क परीक्षण के साथ एक व्यावसायिक कार्यक्रम है।
अस्वीकरण: मैंने इस कार्यक्रम पर काम किया।


हाय मेहल। मैंने आपके कार्यक्रम की कोशिश की, लेकिन जब मैं इसे शुरू करता हूं तो यह दुर्घटनाग्रस्त हो जाता है। यदि आप मुझे बताएं कि आपको कहां देखना है या आपको क्या भेजना है, तो मैं इसे और कोशिश करूंगा।
पीटर 15:tibraný

0

सबसे आसान काम अगर आप सिर्फ दूसरे कंप्यूटर में इतिहास को स्थानांतरित करना चाहते हैं, तो स्काइप द्वारा सलाह का पालन करना है: https://support.skype.com/en/faq/FA10649/Can-I-transfer-my-chat -history-from-one-computer-to-another? Frompage = search & q = chat + history और fromSearchFirstPage = false । आप जो भी करते हैं, वह आपकी बातचीत को अपठित के रूप में चिह्नित करता है, और जब आप अगली बार इसमें साइन इन करते हैं, तो वे दूसरे कंप्यूटर पर स्थानांतरित हो जाते हैं।


0

Skype.com पर आपके खाता पृष्ठ से CSV आदि में Skype इतिहास निर्यात करने का विकल्प है ।


7
क्या आप कृपया लिख ​​सकते हैं कि वास्तव में मैं इसे कहां पा सकता हूं? मैंने पूरे स्काइप खाते को देखा, लेकिन इसे कहीं भी नहीं पाया :-(
पीटर 9tibraný


0

मुझे लगता है कि आपके चैट और कॉल को बचाने के लिए एक और अधिक सुंदर तरीका है, फिर इसे ईमेल पर भेजें। उदाहरण के लिए स्काइप रिकॉर्डर का उपयोग करने से आप इसे ऑनलाइन स्टोरेज में सहेज सकते हैं और साथ ही फुल-टेक्स्ट सर्च जैसे कार्यों को जोड़ सकते हैं, अपने कॉल को ऑनलाइन चला सकते हैं, और कई अन्य अच्छे फीचर्स। मुझे लगता है कि यह वास्तव में आपकी समस्या के साथ मदद करेगा।


हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.