Migrating from Flickr to Picasaweb

First off.. if you have a digital camera and you are only storring your precious pictures on your computer, you need to get online quickly and make use of one of the many picture sharing sites, this is where the “cloud” really can have an impact, as your pictures will be storred on literally hundreds of separate computeres professionally managed, safe from fire, theft and dropping your macbook down the stairs!

You could of course use Facebook which actually has very good controls as to who you allow to see your photos, although as we are all aware these change frequently so there is a danger you may end up as the face of a protesting blogger.

I’ve been a happy user of Flickr professional for many years, and I still really like the service, however over the last month or so I’ve come to the conclusion that I want to move my digital memories to Picasaweb. It turns out that this is not a simple process and moving 1500 pictures could be very time consuming, because while there are many tools to bulk upload your images there are done to do the reverse and download them, but fortunately for the geek both systems have api’s, that with some effort, can make the migration of your pictures a viable proposition.

The key component to the migration was a python script I found developed by Nathan Van Gheem last year, which used both services api’s to migrate not just pictures but albums and much of their metadata between the services.

So here we go, these instructions are for  mac users who are in the lucky position of having python installed by default, but for windows are pretty similar are you have installed Python.

From a terminal window, install the two photo service api’s and the threadpool packages for Python

easy_install-2.6 gdata
easy_install-2.6 flickrapi
easy_install-2.6 threadpool


To use the python script you will need to authenticate against each of the services to access your pictures, for picassaweb this is your username and password, for Flickr because you are using in effect an external application to access your pictures you will  need a Flickr API Key and secret.

From your Flickr account go the App Garden and apply for your own non-commercial API key. You need to provide a few details, but will end up with the api key  string and a separate secret key string, something like..

Key: e97df11b147f9c46c2ec002b29f479df
Secret: 8fe34c331abbce32


Now you have all you need..

Remember to make your downloaded script executable

chmod +x 


And run it


You should be asked to enter firstly your picassweb details, then your flick api key and secret, you should then be taken to a flickr webpage to confirm you want the script to have access to your pictures.

This script will move all the photos and sets from flickr over to picasa.    
That will require getting authentication information from both services...    

Authenticating with Picasa...
Picasa Username(complete email)
Picasa Password:
Authenticating with Flickr..
Flickr API Key:e97df11b147f9c46c2ec002b29f479df
Flickr API Secret:8fe34c331abbce32
Press ENTER after you authorized this program


Confirm that it’s ok, go back to the terminal window and press enter for the script to continue.

The process will take some time, so go grab a coffee and look forward to seeing your pictures in picasweb !

Written and submitted from the Windsor Hotel Taichung, Taiwan (24.179N, 120.623E)

33 replies on “Migrating from Flickr to Picasaweb”

thank you for the informative post and the helpful hints. As a flickr user who is also pondering a change I’d kindly like to ask why you’ve decided to move from Flickr to Picasa?

Besides from the fact you’re working at Google… Something that perhaps answers my question…

For me there were two issues really, firstly I like using the Picasa application and it’s integration with picasaweb is nice, and the other reason less concrete is that I’m unsure about the long term viability of Flickr, look what happened to

Hi Ed,
Thanks for this hint. Just a little typo in the explanation : you chmod “” but the line after you run “”

I’ve been pondering the same problem. The one thing that PicasaWeb lacks is the awesome social environment of Flickr. But I haven’t been as active there lately. So it’s sort of a wash. Moving everything to PicasaWeb would mean I could stop paying for Flickr Pro. The same money spent with Google would give me quite a bit of storage.

Whilst I agree that the use of Flickr and Picasaweb are great for showing and sharing photos with friends and family, I am however concerned with using them as your single mechanism of cloud storage and backup. Even though as Ed mentioned “your pictures will be storred on literally hundreds of separate computeres professionally managed, safe from fire, theft and dropping your macbook down the stairs!” there is nothing stopping them (Flicker and Picasaweb) from just deleting your photos or even your account. Just ask Shéhérazade.

@swhui, of course this is an element of risk whenever you intrust anything with a third party, although I would still argue that cloud storage is on balance more secure than most peoples personal facilities. The comprehensive solution of course is to back up using at least two geographical locations and two different media types. Cloud based systems like picasaweb or flickr can only be part of the solution.

And now we know why you wanted to migrate to Picasaweb 😉

Actually I think richer photo sharing may be one of the main uses of Google+ (particularly among non-geeks). I can see it attracting those who have previously been facebook skeptics.

The Python application crashed with this error (below). I thought it might have been because I had a stale API key so I had Flickr generate another set. Same problem. After authorizing on Flickr I get:

Press ENTER after you authorized this program
Traceback (most recent call last):
File “./”, line 335, in
File “./”, line 157, in do_migration
token = flickr_token.value # force retrieval of authentication information…
File “./”, line 108, in value
self._value = self.input_retriever(self)
File “./”, line 135, in flickr_token_retriever
flickr_usernsid = FLICKR.auth_checkToken(auth_token=token).find(‘auth’).find(‘user’).get(‘nsid’)
File “/Library/Python/2.6/site-packages/flickrapi-1.4.2-py2.6.egg/flickrapi/”, line 349, in handler
File “/Library/Python/2.6/site-packages/flickrapi-1.4.2-py2.6.egg/flickrapi/”, line 435, in __wrap_in_parser
File “/Library/Python/2.6/site-packages/flickrapi-1.4.2-py2.6.egg/flickrapi/”, line 278, in parse_etree
flickrapi.exceptions.FlickrError: Error: 98: Invalid auth token

Never mind. I found the problem: Python’s tab sensitivity. I loaded it in a programming editor to check the code and saved it from there. Running the virgin script works.

Leave a Reply to Foton Cancel reply

This site uses Akismet to reduce spam. Learn how your comment data is processed.