I wrote a crude script that accomplishes this.
I'm really ashamed of how crude it is. It does what I need though (the "Skyperious" program is written in Python so I couldn't mod that... not a python enthusiast).
The script:
Takes source *.html exports from Skyperious and creates <filename>_output.txt files in history++ txt format (including a "fake" header ) which can then be imported using the ImportTXT plugin for miranda (History++ template). Note that this plugin only works with x86 version of miranda.
Actions, file transfers and other "extra" states are shown as regular messages, but are otherwise preserved.
Timestamps are preserved.
The script can take any number of files. It's not particularly fast but I wrote and ran it completely on my OpenWRT router because I was a bit bored :D
If I polish it a little bit more and make sure all is well, I may post it here, if someone wants it.
Reminder - I don't guarantee integrity; but it worked for me with a contact I have over 300 000+ messages with (~30MB text file)
Post Merge: 16 09 2014, 09:36:17
I present to you:
Skype-to-Miranda importer-helper-fixer-upper-thing
What does it do:
Acts as a middleman between skyperious' html export and miranda's ImportTXT's import.
What does it not do:
Print money
What is imported:
Everything (messages, links, /me actions, file transfers) - but everything appears as a generic chat message.
Not a big issue though, I think - you can search through the chat and when a file is sent, you can see "<contact> sent a file" so.. it's good enough.
Unicode characters etc -> preserved (even symbols such as € or japanese letters)
Guide:
DISCLAIMER:
This guide was written for: Windows 7 x64 + Ubuntu 14.04LTS and will only work with Miranda x86 (though you can simply temporarily use your profile with a 32bit miranda just for the imports and then just move the profile back to the 64bit miranda.) Don't sue me if it doesn't work. Tell me and I can do something to the script if needs be.
I highly recommend making a miranda db backup prior to doing anything with imports!On windows:
- http://suurjaak.github.io/Skyperious/ -> download (pref. 64bit but 32 is fine too, big histories may crash your program though), install.
- Shut down skype (seriously though, why do you still have it?) Open Skyperious, navigate (or auto-find) your skype DB files
- Once the DB file is opened, type "Single" into the "Filter Chats" option (the script is not made for importing group chats)
- Select all of the chats you wish to export
- Click "Export Chats" button and select "Export selected chats into individual files"
- Select your target folder and select "*.html" as the export format. Careful, if you have a lot of histories, the mass export may fail due a memory leak. It's best to export bigger histories (200-300k messages) one-by-one
- Wait until exporting is done
- Copy the exported *.html files into a LINUX machine to some folder, i.e. ~/Desktop/Convert/
- Download, save and copy the attached file "process.sh" to the same folder on the linux machine
on Linux (for the purposes of this procedure, I'm using a 32bit Ubuntu 14.04LTS in a virtual machine):
- Install the dos2unix extension: sudo apt-get install dos2unix
- Open the folder where you previously copied the *.html files to
- Make the processing file executable: sudo chmod a+x process.sh
- Run the conversion: ./process.sh
- Wait until you see a "Conversion Complete" message.. yes, it's slow, I know. Sorry.
- Copy all of the *_output.txt files to your windows machine
Back on Windows
- Get the importTXT plugin http://wiki.miranda-ng.org/index.php?title=Plugin:ImportTXT/en and unpack it into the x86 miranda folder
- Start your x86 miranda
- Right-click the target contact and select "Import history"
- Select "History++ pattern" and then use the ... to navigate to the text file you wish to import - please note it doesn't matter what the nicks are, miranda will automatically mod them to be the current miranda contact's nick
- I recommend you deselect "Check for duplicates" as that would remove messages which have the same timestamp (exactly the same, i.e. same second, happens when you spam messages too fast)
- Start the conversion
- ???
- Profit
:D
Don't forget to go back to your 64bit miranda afterwards (or stay with 32bit if you use that) :)
If you have any suggestions or need more help, let me know!
Please don't tell me the script is bad. I know, and I'm sorry. I just couldn't be buggered writing anything better. If anyone wants to write something better, please do so~ I'll only welcome it.