Skip to content

Instantly share code, notes, and snippets.

@drakeguan
Created February 8, 2019 15:34
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save drakeguan/d35eb9e9bbebfc20be62c98c85ebf5b4 to your computer and use it in GitHub Desktop.
Save drakeguan/d35eb9e9bbebfc20be62c98c85ebf5b4 to your computer and use it in GitHub Desktop.
Extract upload datetime from flickr and rename it according to the datetime
import os
import re
from time import gmtime
# ref: https://stuvel.eu/flickrapi-doc/
import flickrapi
api_key = 'OOOOOOOOOOOOOOOOO'
api_secret = 'XXXXXXXXXXXXX'
flickr = flickrapi.FlickrAPI(api_key, api_secret)
flickr.authenticate_via_browser(perms='read')
pattern = re.compile('^.*(\d{8}).*$')
for f in filter(lambda x: x.endswith('.jpg'), os.listdir('.')):
m = pattern.match(f)
if m:
photo_id = int(m.groups()[0])
print(f, photo_id)
try:
for photo in flickr.photos.getInfo(photo_id=photo_id):
for info in photo.items():
if info[0] == 'dateuploaded':
timestamp = int(info[1])
date = '{:4d}{:02d}{:02d}'.format(*gmtime(timestamp))
tgt = date + '_' + f
print(f, photo_id, date, ':', tgt)
#os.rename(f, '_organized/'+tgt)
break
break
except:
pass
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment