How to save your Windows Live Blog!

NOTE: if you did not choose to back up your Windows Live Space Blog before migrating to WordPress you can do it by going to http://myspaceurl/migration/ where you replace myspaceurl with the your space address. It should look something like If you don’t know or remember your space address you can log in to and use the first part of the url that should be cid-{numbers and letters} The url to download your space should then be something like: http://cid-{numbersandletters} where you replace lettersandnumbers with the actual letters and numbers from your profile url.

If you are one of the individuals who are frustrated by Windows Live Teams move to force every Windows Live blog to WordPress, then you are not alone!

Follow these few simple steps to migrate your blog to instead:

  1. Download your Windows Live Blog using the backup option they provide to make a local copy of your blog (See note above)
  2. Extract the downloaded archive to a folder
  3. Create your account
  4. Make one new blog post at your new account where you attach all the images from your exported Windows Live blog (will be in the «img» folder in the folder you extracted to in step 2)
  5. Export your blog using Settings->Basic->export
  6. Download, extract/install and start my program and show it where your exported file from step 5 is, the folder you extracted to in step 2, and finally give a location to save the results, the output dir (anywhere you like)
  7. Hit the start button
  8. Go to Settings->basic->import blog  and select the output.xml file that my program generated in the output location of your choosing in step 6.

A little more background information and details of the migration process for those that may be interested…

I was using my Live Space Blog as a private blog for friends and family, and this worked well since my friends and family could authenticate using Windows Live ID when logging in to read my blog. This however is NOT possible in WordPress blog. Even though there exists a Windows Live ID SDK which someone has made a plugin for in the open source version of WordPress. You would think that the Windows Live Team would have thought about the private bloggers, but no, that was not the case. If you had a private blog, everyone who wants to read your blog would now have to create their own WordPress account.

To top that off, WordPress offers a maximum of 35 private readers. If you want more than 35 you need to pay a yearly fea.

I do not give up that easily. Luckily I took a backup using the download my blog option the Windows Live Team offered, so I decided to try and make my own option for blog migration!

I took a look at, which offers Google account for authentication. Lets face it, most people today have a Google account already, just like they have a Live ID, at least we can say that a LOT more people have Google accounts compared to WordPress accounts. also offers 100 private readers, which is also a lot better than 35. has functionality to both export and import your blog, using an XML format. The first thing I did was to make a blog entry on my new account, uploaded pictures and made some comments. Then I proceeded to export the blog, and got to work dissecting the xml file.

I split it up into three different templates:

  1. EmptyBlogTemplate.xml
  2. BlogEntryTemplate.xml
  3. BlogCommentTemplate.xml

In each of these files I replaced different text that refereed to the blog, names, ids and such with FIELDS I could search and replace with the content I wanted, and that would be data from my old blog.

I then proceeded to make a C# program that would parse my old blog, given the backup format Windows Live Team provided, which basically was just a bunch of HTML and JPG files. My C# program would have to read these html files, pick up the blog post names, text, images, post times, comments, comments time stamps, names and so forth, and produce a XML file that would import successfully.

One of the bigger challenges was to get the images across, and I opted for a manual step in this regard, because the images you post does not have a predeterminable url, but it has random parts. What I did was that I made a new blogpost on where I uploaded all the images from my old blog. This was rather easy to do because all the images from the old blog was in one folder called img in the backup. I tried to do them all in one go at first, but the image uploaded of the blog editor seemed to hit some limitation around 200 pictures, but if you added 200 at a time, it seemed to be ok.

Once all the images was uploaded I would post this blog entry and then go to Settings->Basic->Export blog, and save the file on my computer. Lets call it export.xml for the remainder of this article.

My C# program goes through export.xml and picks out all http url’s, and while parsing old blog entries (html files) that contains pictures the program will compare the image filename with the url’s from the export.xml. Luckily the url’s end with the exact filename, so it is possible to translate the old images into the new «random» url provided after uploading them. The formating of the image insertion in the blog is also taken care of by my program, as it differs quite a bit from the old blog format.

Comments in each old blog entry must also be parsed one by one, and a counter for the number of comments for a given blog entry must be added to the blog entry it self in the new xml format. The comments them self are also added to the xml file as entries of a sligltly different format, and contain references to the blog entry in which they are a comment to.

My program takes care of all this parsing, and the end result is that all your blog posts, along with images and comments are exported into a xml format that can be imported in your account.

My program will try to exteract the following information from the export.xml file:

  • Domain; typically
  • Blogtitle
  • Blog ID
  • Blog author profile URI
  • Blog author name
  • Blog author email
  • Image urls

After parsing the export.xml file the program will ask you to verify the correctness of this information. If the program failed to extract the information correctly, here is your chance to correct those mistakes before continuing.

When the program is finished you will find two files in the output directory that you choose:

  1. output.xml
  2. report.txt

output.xml is the file you may use to import your blog at, while report.txt is a file you can use for troubleshooting if something went wrong, it will contain some debugging information.

So now all you need to do to migrate to is to go to settings->basic->Import blog and browse to output.xml.

I provide precompiled version of this program, and also post the full source code, it is not pretty, it’s not polished…I admit..It’s only a few hours of work, but it works for me, and I hope it can be of use to someone else as well…

NOTE: Requires .NET framework installed. Also make sure you keep the 3 template files in the same directory as the executable file.

Known limitatons:

PS. I can not guarantee this program will work for you. It is provided as is, use at your own risk.

If you have any questions, pelase feel free to leave a comment!

v0.2 bug fix release

  • If old space blog «title» contained characters not suitable for a hyper link, that and all subsequent blog entries would not be imported by blogger.
  • Had a second go at detecting date formating. Now the program will attempt to find a date formating that works for all both blog and comment dates. If the date scheme is consistent throughout the blog it will succeed, giving you correct dates for all blog entries. If there is inconsistencies, it will use the windows default, and replace those dates that it can not parse with current date.

v0.1 first bug fix release

  • PostIDs would in some cases go negative adding a – sign in the file because I was not using unsigned variable
  • Date formating can be different in the space backup data. Application will now try to first use the windows default formating on the running computer, and if that does not work it tries a number of different formats
  • files that are not html files, and index.html is now excluded from the list of files the application tries to parse
Dette innlegget ble publisert i Computers and Internet og merket med , , , , , , , , , . Bokmerk permalenken.

16 svar til How to save your Windows Live Blog!

  1. st185cs sier:

    Since uses google account for authentication, any user email can be used for logging on to read your blog.

    All they need to do is
    * Go to
    * Hit login
    * Hit signup

    Now you can add them with their wanted email address, and they can log in using that email address and password they used when creating the Google account i.e. their windows live ID mail address!! Amazing stuff!! 🙂

  2. adamissogay sier:

    Hi Kenneth,
    We’ve had a conversation on the Spaces forum and I successfully used your program to successfully move the spaces blogs of my grandson and three friends to blogspot. These were all fairly small and had no graphics of any sort. However, I’m stuck on the latest one I’ve tried to move. When I run your program the progress bar quickly goes halfway but then stops. No matter how long it’s left it goes no further. The output and report files are both produced and seem fully populated but if I try to import the file into the blogspot account it says it’s writing the posts but all that happens is a small green square goes back and forwards on the progress bar. Once again, this goes on and on. Nothing at all gets written to the blog posts. Sorry to take the liberty to ask if you have any suggestions but this program is such a blessing and I’ve got four or five others who want me to help move their blogs and I still have to move mine which has been running about two years. Many thanks – Frustrated John

    • st185cs sier:


      I’m very glad my work has helped someone else in the same situvation. If you email me the zip file from the space that is not working I can debug it and see if I can spot the problem 🙂 send it to kenneth.ellefsen at gmail 🙂

  3. st185cs sier:

    Thank you John for submitting your files for debugging. The problems are now solved in the v0.1 release, and you may proceed to migrate your blog to blogspot 🙂 Happy blogging!

  4. Karel sier:

    It seems to me Blogger XML import doesn’t have to contain entry/author/uri for the comments at all, it imports just fine if you omit the tag completely. (BTW it also accepts any URI as a value, even the original from, but it’s no option for your tool since the backup from Live Spaces doesn’t contain them.)
    Nice tool, BTW (tho I didn’t try it).

  5. st185cs sier:

    New version up!! Thanks to Candace for providing me with space data to debug with!

    And today is the big closure date for spaces. I wonder how many people still are unable to download their spaces…

  6. Oh, Thank you so much! I was able to transfer my posts to blogger. No pics transferred with, so I have a big project ahead of me to individually upload them all, but still I am so happy to have all the posts there! Our family memories are not lost forever! Thanks so much for sharing!!!

    • st185cs sier:

      If you follow the procedure, the pictures should be appearing in your posts. Take note that the pictures them self has to be manually posted on blogspot in a new post before you export the blogspot xml. That way the application will find the pictures on blogspot, and link them correctly to the posts that gets imported from live spaces.

      If you did follow the procedure carefully, and it still didn’t work, I’de be interested in taking a look at your to see what the problem is.

      cheers 🙂

  7. I remember now that my pictures were mostly in a slideshow and not really in my posts. So, that is probably why they didn’t come through. Thankfully I labeled them the same as my posts so I can manually upload all of them (when I have time 🙂 There wasn’t an image file that I could find and that is maybe why. Windows Live did keep all of my pictures, so at least I can piece it all together. Again, thanks for the download for all my posts!

  8. benryanau sier:

    Thanks for this tool mate!
    I’m now thinking I’ll use WordPress after all, as it offers more advanced tools etc than blogger/blogspot.
    Q: Can you suggest a method to import the into WordPress?

  9. benryanau sier:

    I’ve just tried to use the tool to upload into Blogger.
    After sending the XML to Blogger, it goes to a page with a rolling green square saying «Writing blog posts» and just stays there.
    I found a bug in the tool where no title parameter or /title.html URL is entered into the output.xml, despite the title being present in the source files. I’ve tried editing the XML manually but it hasn’t fixed the problem with importing.
    I’m not a developer but I’m competent, if I can help debug it at all (and you have the time) I’m happy to help. I’ve got a lot of entries to migrate 🙂

    • st185cs sier:

      I found some problems that I corrected, and emailed you a test version on your hotmail.I was hoping you could test it before I put it up on this page.

  10. st185cs sier:

    if you email me the I can debug through it to see what goes wrong. My email is kenneth.ellefsen at gmail 🙂

  11. Erick sier:

    What’s up, just wanted to mention, I enjoyed this blog post. It was funny. Keep on posting!

  12. Appreciating the commitment you put into your blog and detailed
    information you offer. It’s awesome to come across a blog every once in a while that isn’t the same
    out of date rehashed material. Fantastic read! I’ve bookmarked your site and I’m adding your RSS feeds to my
    Google account.

Legg igjen en kommentar

Fyll inn i feltene under, eller klikk på et ikon for å logge inn:

Du kommenterer med bruk av din konto. Logg ut /  Endre )


Du kommenterer med bruk av din Twitter konto. Logg ut /  Endre )


Du kommenterer med bruk av din Facebook konto. Logg ut /  Endre )

Kobler til %s