Code Monkey home page Code Monkey logo

flickrsmartsync's Introduction

I don't maintain this project anymore since Google Photos provides unlimited high quality photos/videos storage for free

flickrsmartsync - Sync/backup your photos to flickr easily

flickrsmartsync is a tool you can use to easily sync up or down your photos in a drive/folder to flickr since now it has a free 1TB storage you can probably sync all your photo collection.

Install

Simply run the following:

$ python setup.py install

or PyPi:

$ pip install flickrsmartsync

Example Usage

Both run from source and command line have same parameters:

start uploading all photos/videos under that folder
$ flickrsmartsync
ignore videos for others use --help
$ flickrsmartsync --ignore-videos

start downloading all photos on flickr to that folder
$ flickrsmartsync --download .

start downloading all paths starting with that path
$ flickrsmartsync --download 2008/2008-01-01

Generate custom set titles from YEAR/MONTH/DAY folder hierarchy:
$  flickrsmartsync --custom-set='(?:.*)((?:19|20)\d{2})/(\d{2})/(\d{2})' --custom-set-builder '{0}-{1}-{2}'

for direct python access
$ python flickrsmartsync

Change log

0.2.02 (2017-02-11)
  • added --fix-missing-description option (thanks jruusu)
  • added --dry-run option (thanks jruusu)
0.2.01 (2015-02-17)
  • added --custom-set-debug for testing custom sets output
  • added --ignore-ext comma separated extensions to ignore
0.2.00 (2015-02-15)
  • Refactor code into sync, local and remote classes
  • Add test cases that do a limited test of each class in isolation
  • Add a sync-from=all command line option that allows a download of any remote file not on local, and upload of any local file not on remote as discussed in #22
  • Add retries on uploads and downloads
  • Add a file extension on download if one doesn't exist
  • Incorporate pull request #32 which fixes #31 with slight changes
  • Thanks thomascobb
0.1.18 (2014-11-14)
  • browser-less authentication
0.1.17 (2014-08-12)
  • allow filtering files to upload by IPTC keyword (thanks ricardokirkner)
  • updated flickrapi 1.4.4
0.1.16 (2014-06-30)
  • flickr api changes use https
0.1.15 (2014-05-30)
  • monitor folder support (--monitor)
0.1.14.3 (2014-05-18)
  • encoding bug
0.1.14.2 (2014-04-15)
  • send script output to syslog for headless convience (thanks dahlb)
0.1.14 (2014-02-25)
  • added --starts-with param
  • added --version param
  • bug fix not uploading files properly
0.1.12 (2014-02-15)
  • added custom set title
  • character encoding bugs
  • skip failures

0.1.11 (2013-07-09)

  • added mts video
  • added folder utf8 encoding to avoid dups
  • added sorting for each folders

0.1.10 (2013-07-07)

  • sorted photo sets
  • ignore files > 1gb

0.1.9 (2013-06-28)

  • added --sync-path param

0.1.8 (2013-06-25)

  • ignore hidden folders/folders
  • added video support
  • added new params for skipping video/images

0.1.7 (2013-06-15)

  • added run from source

0.1 (2013-06-13)

Links

flickrsmartsync's People

Contributors

acdha avatar dahlb avatar faisalraja avatar jruusu avatar pejobo avatar ricardokirkner avatar thomascobb avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

flickrsmartsync's Issues

Daemon mode?

Hi there,

Thanks a lot for this excellent sync tool!

I was wondering if it would be possible to add a daemon that automatically syncs the photos of a specific folder in the background?

Let me know what you think!

Thanks

Propagate deletions

Right now it doesn't seem the tool propagates deletions. Are you planning to do so?

Deletions

Does FSS delete from Flickr where the file is not available locally?
Also, if I change a file but the name is the same, will it update on Flickr?

Upload not working...receiving error message: "Error: 3: General upload failure"

Hi,

First off: thanks for this awesome script. I can't tell you how much I appreciate it.

I changed my Yahoo password due to the whole Heartbleed thing, and now whenever I attempt to use Flickrsmartsync it fails when it attempts to upload files, with the error message:

Error: 3: General upload failure

I'm attaching a screenshot, too.

I've tried the following:

  • Uninstalling and reinstalling flickrsmartsync
  • Destroying the flickr auth token and re-authenticating with Flickr

Please let me know what additional info I can provide...

Thanks!

error

Re-creates existing sets

I have a set called "2013-01" upon first run flickrsmartsync created another one called "2013-01" and started uploading all to it again. Have I missed something?

Album detection changed?

All my albums uploaded with version up to 0.18 have

album name = folder name (e.g. 2015-06)
album comment = folder path (e.g. 2015/2015-06)

With 0.2.01 album name and album comment both are only folder name. With this name scheme folder to album matching no longer works and flickrsmartsync wants to upload my whole photos again :(

(This is on linux of course.)

Windows

Hi, I'm not a real computer literate, so I get really lost here.
I just want this uploader to work in windows and to make sure everything is synced between flickr and my "pictures" folder, including subfolders.
I don't have any idea how to accomplish this.
Can you help?
KR

pkg_resources.DistributionNotFound: IPTCInfo

Hi there,

I cannot longer run flickrsmartsync. I seem to miss a dependency here:

~ flickrsmartsync 
Traceback (most recent call last):
  File "/usr/bin/flickrsmartsync", line 5, in <module>
    from pkg_resources import load_entry_point
  File "/usr/lib/python2.7/site-packages/pkg_resources.py", line 2872, in <module>
    working_set = WorkingSet._build_master()
  File "/usr/lib/python2.7/site-packages/pkg_resources.py", line 449, in _build_master
    ws.require(__requires__)
  File "/usr/lib/python2.7/site-packages/pkg_resources.py", line 745, in require
    needed = self.resolve(parse_requirements(requirements))
  File "/usr/lib/python2.7/site-packages/pkg_resources.py", line 639, in resolve
    raise DistributionNotFound(req)
pkg_resources.DistributionNotFound: IPTCInfo

Any idea which package I need to install to provide IPTCInfo?

Thanks ahead!

Memory consumption for larger files

I use this great tool to backup images automatically.
This is done on a Raspberry Pi in two steps (first copy from SD-Card to local USB-Drive, then upload to flickr). The second step fails for larger files (e.g. movies) because main memory is very limited on a pi. Each movie upload is retried a few times:

WARNING:flickrsmartsync:Retrying upload of 2015/2015-04/DJI00080.MP4 after error:
WARNING:flickrsmartsync:Retrying upload of 2015/2015-04/DJI00080.MP4 after error:
WARNING:flickrsmartsync:Retrying upload of 2015/2015-04/DJI00080.MP4 after error:
WARNING:flickrsmartsync:Retrying upload of 2015/2015-04/DJI00080.MP4 after error:
WARNING:flickrsmartsync:Retrying upload of 2015/2015-04/DJI00080.MP4 after error:
ERROR:flickrsmartsync:Failed upload of 2015/2015-04/DJI00080.MP4 after 5 retries

[Windows] Chinese file name uploaded set name encoding problem

The set name "test - 複製" becomes "test - ½Æ»s".

How can I deal with the encoding problem from the Chinese file/directory name?

Thanks a lot.


flickrsmartsync --starts-with t --custom-set (?:.)(.)$ --custom-set-builder {0}

INFO:flickrsmartsync:Getting photosets page 1
INFO:flickrsmartsync:Getting photosets page 2
INFO:flickrsmartsync:Found 2 photo sets
INFO:flickrsmartsync:Set Title: [test] Path: [C:\myPath\t1\test]
INFO:flickrsmartsync:Set Title: [test - 複製] Path: [C:\myPath\t1\test - 複製]
INFO:flickrsmartsync:Getting photos in set [test]
INFO:flickrsmartsync:Found 0 photos
INFO:flickrsmartsync:Uploading [a.PNG] to set [test]
INFO:flickrsmartsync:Created set [test] and added photo
INFO:flickrsmartsync:Getting photos in set [test - 複製]
INFO:flickrsmartsync:Found 0 photos
INFO:flickrsmartsync:Uploading [b.PNG] to set [test - 複製]
INFO:flickrsmartsync:Created set [test - 複製] and added photo
INFO:flickrsmartsync:Upload done

Not able to authorize the app

python flickrsmartsync
Please authorized this app then hit enter:
ERROR:flickrsmartsync:Please authorized to use

A web browser is opening on flickr.com but not asking for authorization.

Is the app still working ?

Thanks

2 way sync

I've been looking for a python project that will let me do a 2 way sync with Flickr for a while. I started writing my own, but then found your project. Is this something you're actively working on? If not, would you mind if I did some refactoring so I can add it?

--ignore-videos not respected

See exact command syntax below, perhaps it's the MP4 extension or it's the combination with "--sync-from all"?

flickrsmartsync --sync-path /mnt/photos/ --starts-with 2015 --sync-from all --ignore-videos
..
WARNING:flickrsmartsync:Retrying upload of 2015/2015-04/DJI00080.MP4 after error:
..

just sync a single folder

awesome script, really like it.
unfortunately it takes a long time to check all existing folders before actually syncing a fresh one. can i, e.g. with --starts-with tell it to only sync 2015/11/06 ?

Thanks ;)

flickrsmartsync doesnt download *.MOV files from flickr

When i using command:
/usr/local/bin/flickrsmartsync --sync-path /nfs/flickr/flickr/ --download .

It download all content from flickr except videos (*.MOV) files.

Is there something wrong with my command? I only want to download ALL (sync daily) videos and photos from flickr to my NAS.

UnicodeEncodeError: 'ascii' codec can't encode character u'\xfc' in position 1: ordinal not in range(128)

Upon any sync I try.

INFO:flickrsmartsync:Getting photosets page 1
Traceback (most recent call last):
File "/usr/local/bin/flickrsmartsync", line 9, in
load_entry_point('flickrsmartsync==0.1.14.2', 'console_scripts', 'flickrsmartsync')()
File "/usr/local/lib/python2.7/dist-packages/flickrsmartsync/init.py", line 318, in main
start_sync(args.sync_path.rstrip(os.sep) + os.sep, args)
File "/usr/local/lib/python2.7/dist-packages/flickrsmartsync/init.py", line 124, in start_sync
desc = html_parser.unescape(set['description']['_content']).decode('utf-8')
File "/usr/lib/python2.7/encodings/utf_8.py", line 16, in decode
return codecs.utf_8_decode(input, errors, True)
UnicodeEncodeError: 'ascii' codec can't encode character u'\xfc' in position 1: ordinal not in range(128)

(trying on https://www.flickr.com/photos/tacoekkel/ )

Error in code

Not realy an error but in remote.py you say :
line 111:

# add missing extension if not present (take a guess as api original_format argument not working)

You have the correct extension in the path of the media, in the "url_o" attribute :

ext = photo['url_o'].split('.').pop().lower()

need to handle flickr media without title

My scenario is attempting to use flickrsmartsync to export all photos from my spouse's flickr account.

'.mp4': u'https://www.flickr.com/photos/julessilver/5573200688/play/orig/9213a03c04/

in get_photos_in_set.

[Windows] UTF encoding not working

UTF Encoding is neither working for file names nor for folder names. Every file/folder containing a special character is duplicated everytime I run the script.

Using Windows XP, character "ü" is stored in Flickr as "\xfc" (which seems to be correct), but local files/folders show a "superscript 3", so comparison of remote and local names fails

Script does not work anymore

Hey Faisal,

I've been using this script for a while now, thanks for building it, it's been a great help backing up my extensive photo collection!

This morning I found that it doesn't work anymore, though. I get the same result from my Windows PC and my Linux server. I don't know much about scripting so I can't tell what's up, but I'm afraid Flickr has changed it's API...

Below this message I've posted the traceback I receive after I try to run the script. I hope it's a simple issue that you can resolve, it's great to have an automated way to back my photos up :)

Kind regards, Thomas.

Traceback (most recent call last):
File "/usr/local/bin/flickrsmartsync", line 9, in
load_entry_point('flickrsmartsync==0.1.15', 'console_scripts', 'flickrsmartsync')()
File "/usr/local/lib/python2.7/dist-packages/flickrsmartsync-0.1.15-py2.7.egg/flickrsmartsync/init.py", line 346, in main
start_sync(args.sync_path.rstrip(os.sep) + os.sep, args)
File "/usr/local/lib/python2.7/dist-packages/flickrsmartsync-0.1.15-py2.7.egg/flickrsmartsync/init.py", line 48, in start_sync
(token, frob) = api.get_token_part_one(perms='write')
File "/usr/local/lib/python2.7/dist-packages/flickrsmartsync-0.1.15-py2.7.egg/flickrapi/init.py", line 730, in get_token_part_one
rsp = self.auth_checkToken(auth_token=token, format='xmlnode')
File "/usr/local/lib/python2.7/dist-packages/flickrsmartsync-0.1.15-py2.7.egg/flickrapi/init.py", line 349, in handler
parse_format=args['format'], *_args)
File "/usr/local/lib/python2.7/dist-packages/flickrsmartsync-0.1.15-py2.7.egg/flickrapi/init.py", line 427, in __wrap_in_parser
data = wrapped_method(_args, *_kwargs)
File "/usr/local/lib/python2.7/dist-packages/flickrsmartsync-0.1.15-py2.7.egg/flickrapi/init.py", line 402, in __flickr_call
flicksocket = urllib2.urlopen(url, post_data)
File "/usr/lib/python2.7/urllib2.py", line 127, in urlopen
return _opener.open(url, data, timeout)
File "/usr/lib/python2.7/urllib2.py", line 410, in open
response = meth(req, response)
File "/usr/lib/python2.7/urllib2.py", line 523, in http_response
'http', request, response, code, msg, hdrs)
File "/usr/lib/python2.7/urllib2.py", line 448, in error
return self._call_chain(_args)
File "/usr/lib/python2.7/urllib2.py", line 382, in _call_chain
result = func(*args)
File "/usr/lib/python2.7/urllib2.py", line 531, in http_error_default
raise HTTPError(req.get_full_url(), code, msg, hdrs, fp)
urllib2.HTTPError: HTTP Error 403: Forbidden

need to handle flickr media with duplicate title

Depending on the flickr uploader it is common for all images in a set to have the same title. It seems that flickrsmartsync --download doesn't account for this as I'm missing numerous images.

Note: no error is logged.

My scenario is attempting to use flickrsmartsync to export all photos from my spouse's flickr account.

Use albums as folder names

At the moment Album descriptions are used as folder names - this leads to long paths and probably to errors handling those...

SSL error on download in Ubuntu

I'm getting irregular errors like this while doing a large download:

WARNING:flickrsmartsync:Retrying download of /home/francis/keep/photos/2012-giants-in-liverpool/IMG_1263.MOV after error: [SSL: DECRYPTION_FAILED_OR_BAD_RECORD_MAC] decryption failed or bad record mac (_ssl.c:1752)

Rather than retrying, or giving up, I end up with corrupted half-downloaded files. This is annoying, as they do not get download on my next (incremental) download run, so end up corrupted indefinitely.

Versions:

francis@fox:~/keep/photos$ flickrsmartsync --version
INFO:flickrsmartsync:0.2.01
francis@fox:~/keep/photos$ cat /etc/lsb-release 
DISTRIB_ID=Ubuntu
DISTRIB_RELEASE=15.04
DISTRIB_CODENAME=vivid
DISTRIB_DESCRIPTION="Ubuntu 15.04"
francis@fox:~/keep/photos$ dpkg -l | grep libssl
ii  libssl-dev:amd64         1.0.1f-1ubuntu11. amd64             Secure Sockets Layer toolkit - development files
ii  libssl-doc               1.0.1f-1ubuntu11. all               Secure Sockets Layer toolkit - development documentat
ii  libssl1.0.0:amd64        1.0.1f-1ubuntu11. amd64             Secure Sockets Layer toolkit - shared libraries
ii  libssl1.0.0:i386         1.0.1f-1ubuntu11. i386              Secure Sockets Layer toolkit - shared libraries
francis@fox:~/keep/photos$ 

All say "uploading" - nothing is uploading.

Hi there, since an upgrade to the latest .12 build I have a problem with uploads. When I run flickrsmartsync on a folder it lists all files as uploading but quickly spins through them without uploading anything. Is there anything I can provide to help identify the issue? This is on Ubuntu 13.10 and also Debian 6. Same outcome. Thanks for this excellent tool.

Cannot download photo uploaded manually

Hi,

I'm not a Python wizard and I don't really know the Flickr API you used.
I forked your code and added a couple features (see here : https://github.com/kenijo/flickrsmartsync/commit/0d648c364f8c1922b925c26a1d91271bf32e7102)

However I'm struggling with two issues:

  • First, if I upload a photo with a file name containing a accented character (é or è for exemple) then the next time the script is executed, it fails to retrieve it from flickr and I can't figure out why.

Here is the error message I get:
Traceback (most recent call last):
File "/usr/local/lib/python2.7/runpy.py", line 162, in _run_module_as_main
"main", fname, loader, pkg_name)
File "/usr/local/lib/python2.7/runpy.py", line 72, in _run_code
exec code in run_globals
File "/usr/local/scripts/flickrsmartsync/flickrsmartsync/main.py", line 12, in
flickrsmartsync.main()
File "/usr/local/scripts/flickrsmartsync/flickrsmartsync/init.py", line 310, in main
start_sync(args.sync_path.rstrip(os.sep) + os.sep, args)
File "/usr/local/scripts/flickrsmartsync/flickrsmartsync/init.py", line 113, in start_sync
title = get_custom_set_title(sync_path + desc)
UnicodeDecodeError: 'ascii' codec can't decode byte 0xc3 in position 22: ordinal not in range(128)

There is an issue retrieving the file names I guess.
Maybe we can work on that?
Thanks

  • Second, if I upload and create sets manually; I can't download them using your script.
    Not really a big deal in my use case but it would be nice if it worked (or maybe I dind't understand how it works)

Not working anymore

Hi.

After certain update flickrsmartsync stopped working.

Traceback (most recent call last):
  File "/usr/bin/flickrsmartsync", line 9, in <module>
    load_entry_point('flickrsmartsync==0.2.1.post0', 'console_scripts', 'flickrsmartsync')()
  File "/usr/lib/python2.7/site-packages/flickrsmartsync/__init__.py", line 71, in main
    remote = Remote(args)
  File "/usr/lib/python2.7/site-packages/flickrsmartsync/remote.py", line 24, in __init__
    token = self.auth_api()
  File "/usr/lib/python2.7/site-packages/flickrsmartsync/remote.py", line 37, in auth_api
    (token, frob) = self.api.get_token_part_one(perms='delete')
  File "/usr/lib/python2.7/site-packages/flickrapi/__init__.py", line 759, in get_token_part_one
    rsp = self.auth_getFrob(auth_token=None, format='xmlnode')
  File "/usr/lib/python2.7/site-packages/flickrapi/__init__.py", line 357, in handler
    parse_format=args['format'], **args)
  File "/usr/lib/python2.7/site-packages/flickrapi/__init__.py", line 436, in __wrap_in_parser
    data = wrapped_method(*args, **kwargs)
  File "/usr/lib/python2.7/site-packages/flickrapi/__init__.py", line 410, in __flickr_call
    flicksocket = urllib2.urlopen(url, post_data)
  File "/usr/lib/python2.7/urllib2.py", line 154, in urlopen
    return opener.open(url, data, timeout)
  File "/usr/lib/python2.7/urllib2.py", line 431, in open
    response = self._open(req, data)
  File "/usr/lib/python2.7/urllib2.py", line 449, in _open
    '_open', req)
  File "/usr/lib/python2.7/urllib2.py", line 409, in _call_chain
    result = func(*args)
  File "/usr/lib/python2.7/urllib2.py", line 1240, in https_open
    context=self._context)
  File "/usr/lib/python2.7/urllib2.py", line 1197, in do_open
    raise URLError(err)
urllib2.URLError: <urlopen error [Errno 104] Connection reset by peer>

I use Arch Linux and this package: https://aur.archlinux.org/packages/python2-flickrsmartsync-git/

Canceling sync process

Hi there,

Am I correct that there is no way to cancel the sync process?

I tried CTRL C as well as D but they do not successfully abort the process.

Partial download

Hi,
during download the consolle stop to log messages about the downlaoding photo and stack on the last downloaded.. if i open the folder and search for these photo i can see that the photo is partially downloaded and the script is in freez mode.. after if i restart the script, when it check for downloaded photo, it find the filename of the partial photo in the folder and check the photo as downloaded and skip the file (but the photo is partial !! and must be redownloaded)

There is a fix for this problem?

Tnx

need to truncate long set description before passing to makedirs

My scenario is attempting to use flickrsmartsync to export all photos from my spouse's flickr account.

Traceback (most recent call last):
  File "/usr/local/bin/flickrsmartsync", line 9, in <module>
    load_entry_point('flickrsmartsync==0.2.01', 'console_scripts', 'flickrsmartsync')()
  File "/usr/local/lib/python2.7/dist-packages/flickrsmartsync-0.2.01-py2.7.egg/flickrsmartsync/__init__.py", line 73, in main
    sync.start_sync()
  File "/usr/local/lib/python2.7/dist-packages/flickrsmartsync-0.2.01-py2.7.egg/flickrsmartsync/sync.py", line 27, in start_sync
    self.download()
  File "/usr/local/lib/python2.7/dist-packages/flickrsmartsync-0.2.01-py2.7.egg/flickrsmartsync/sync.py", line 89, in download
    self.remote.download(photos[photo], path)
  File "/usr/local/lib/python2.7/dist-packages/flickrsmartsync-0.2.01-py2.7.egg/flickrsmartsync/remote.py", line 203, in download
    os.makedirs(folder)   
  File "/usr/lib/python2.7/os.py", line 157, in makedirs
    mkdir(name, mode)
OSError: [Errno 36] File name too long: '/root/flickrsmartsync/We had two parties for William, one with extended family at Easter, and this one with friends. This one was originally scheduled for April 4th, but postponed to April 18th (actual birthday Aprtil 7th), due to William coming down with the stomach flu before the first one. Everyone was very gracious and still came to his party and we got a lovely surprise from out of town guests who made a day trip down! William sure has many people who love him. As you will see friends of all ages came to celebrate! THANK YOU EVERYONE!'

In my case, my workaround will likely to use set title instead of description.

Fails on a 504 Gateway timeout which seems to be common

I get the following error while trying to my fairly large library.Unfortunately this means I have to have a script that runs flickrsmartsync until it does not error, but there is a lot of traffic checking photos that have already been uploaded so it would be good to either have some kind of argument such as --continue or maybe keep track of progress or just a few attempts at the request before failing.

Uploading [dscf1695.jpg] to set [2004_11_06_london]
Traceback (most recent call last):
  File "/usr/local/bin/flickrsmartsync", line 9, in <module>
    load_entry_point('flickrsmartsync==0.1.2', 'console_scripts', 'flickrsmartsync')()
  File "/usr/local/lib/python2.7/dist-packages/flickrsmartsync-0.1.2-py2.7.egg/flickrsmartsync/__init__.py", line 276, in main
    start_sync(args.sync_path.rstrip(os.sep) + os.sep, args)
  File "/usr/local/lib/python2.7/dist-packages/flickrsmartsync-0.1.2-py2.7.egg/flickrsmartsync/__init__.py", line 254, in start_sync
    upload = api.upload(file_path, None, **upload_args)
  File "/usr/local/lib/python2.7/dist-packages/flickrsmartsync-0.1.2-py2.7.egg/flickrapi/__init__.py", line 538, in upload
    filename, callback, **kwargs)
  File "/usr/local/lib/python2.7/dist-packages/flickrsmartsync-0.1.2-py2.7.egg/flickrapi/__init__.py", line 606, in __upload_to_form
    url, body, callback)
  File "/usr/local/lib/python2.7/dist-packages/flickrsmartsync-0.1.2-py2.7.egg/flickrapi/__init__.py", line 427, in __wrap_in_parser
    data = wrapped_method(*args, **kwargs)
  File "/usr/local/lib/python2.7/dist-packages/flickrsmartsync-0.1.2-py2.7.egg/flickrapi/__init__.py", line 624, in __send_multipart
    response = urllib2.urlopen(request)
  File "/usr/lib/python2.7/urllib2.py", line 127, in urlopen
    return _opener.open(url, data, timeout)
  File "/usr/lib/python2.7/urllib2.py", line 407, in open
    response = meth(req, response)
  File "/usr/lib/python2.7/urllib2.py", line 520, in http_response
    'http', request, response, code, msg, hdrs)
  File "/usr/lib/python2.7/urllib2.py", line 445, in error
    return self._call_chain(*args)
  File "/usr/lib/python2.7/urllib2.py", line 379, in _call_chain
    result = func(*args)
  File "/usr/lib/python2.7/urllib2.py", line 528, in http_error_default
    raise HTTPError(req.get_full_url(), code, msg, hdrs, fp)
urllib2.HTTPError: HTTP Error 504: Gateway Timeout

Video downloads can now work

I needed to download original videos from flickr, but saw that the download video part was commented out. So I looked into seeing if I could enable it and have been successful in doing so.

It's essentially what was already there, just a couple of tweaks for the filtering of json:

Uncommented it all, changed "startswith('Site')" to "startswith('Video Original')" and removed ".replace('/site/', '/orig/')", and commented out the "continue"

if is_download and photo.get('media') == 'video':
    photo_args = args.copy()
    photo_args['photo_id'] = photo['id']
    sizes = json.loads(api.photos_getSizes(**photo_args))
    if sizes['stat'] != 'ok':
        continue

    original = filter(lambda s: s['label'].startswith('Video Original') and s['media'] == 'video', sizes['sizes']['size'])
    if original:
        photos[photo['title']] = original.pop()['source']
        #     print photos
        # Skipts download video for now since it doesn't work
        #continue

It downloaded all the videos in their original format for me, and MD5 checksums matched.

I can do a pull request if you want, or unless you want to do some testing yourself?

Unable to authorize

Hi,

I've been trying all kinds of things to authorize, and now I've given up! :(
Both using a text-based browser (w3m) and no browser (w3m uninstalled), I get the following messages:

root@server:/some/image/path# flickrsmartsync
# When no browser installed, validation URL is displayed here
Please authorized this app then hit enter:
ERROR:flickrsmartsync:Please authorized to use

The application shows up under my "Applications you use", and pasting the link generated with no browser installed, into another browser, correctly prompts for validation.
But it just fails after I hit enter..

Am I doing something wrong??

System: Debian 7.6, headless

[Windows] Set title includes sync_path

When running the script under Windows, the set titles include the full sync path, e. g.
D:\foto\20150101 New Year Day

When I change in remote.py
title = path.split('/').pop()
to
title = path.split(os.sep).pop()
everything works fine.

Found 0 photos in a album

Hi!
Recently I have a problem to sync 1 folder. Your script find the album but everytime it say me that is empty:
INFO:flickrsmartsync:Getting photos in set [2014-05 CUNADI]
INFO:flickrsmartsync:Found 0 photos
It happens only with that album (that contains 204 picture...).
I didn't edit the description or other stuff.
Any idea?
s.

PS
I run the 0.1.17 version on ubuntu 12.04

Sync Unit tests do not pass.

gnuton@david:~/GIT/FLICKRSMARTSYNC/flickrsmartsync/test$ sudo ./test_sync.py
test_download (main.syncTest) ... ERROR
test_sync (main.syncTest) ... ERROR
test_upload (main.syncTest) ... ERROR

ERROR: test_download (main.syncTest)

Traceback (most recent call last):
File "./test_sync.py", line 55, in setUp
self.sync = Sync(args(), self.local, self.remote)
File "/home/gnuton/GIT/FLICKRSMARTSYNC/flickrsmartsync/test/../flickrsmartsync/sync.py", line 19, in init
if self.cmd_args.ignore_ext:
AttributeError: args instance has no attribute 'ignore_ext'

ERROR: test_sync (main.syncTest)

Traceback (most recent call last):
File "./test_sync.py", line 55, in setUp
self.sync = Sync(args(), self.local, self.remote)
File "/home/gnuton/GIT/FLICKRSMARTSYNC/flickrsmartsync/test/../flickrsmartsync/sync.py", line 19, in init
if self.cmd_args.ignore_ext:
AttributeError: args instance has no attribute 'ignore_ext'

ERROR: test_upload (main.syncTest)

Traceback (most recent call last):
File "./test_sync.py", line 55, in setUp
self.sync = Sync(args(), self.local, self.remote)
File "/home/gnuton/GIT/FLICKRSMARTSYNC/flickrsmartsync/test/../flickrsmartsync/sync.py", line 19, in init
if self.cmd_args.ignore_ext:
AttributeError: args instance has no attribute 'ignore_ext'


Ran 3 tests in 0.001s

FAILED (errors=3)

Error on broken symlinks

In case there is broken symlink (a link without a target) the script just stops with this error:

Traceback (most recent call last):
File "/usr/bin/flickrsmartsync", line 9, in
load_entry_point('flickrsmartsync==0.2.1.post0', 'console_scripts', 'flickrsmartsync')()
File "/usr/lib/python2.7/site-packages/flickrsmartsync-0.2.1.post0-py2.7.egg/flickrsmartsync/init.py", line 73, in main
sync.start_sync()
File "/usr/lib/python2.7/site-packages/flickrsmartsync-0.2.1.post0-py2.7.egg/flickrsmartsync/sync.py", line 33, in start_sync
self.upload()
File "/usr/lib/python2.7/site-packages/flickrsmartsync-0.2.1.post0-py2.7.egg/flickrsmartsync/sync.py", line 118, in upload
photo_sets = self.local.build_photo_sets(only_dir, EXT_IMAGE + EXT_VIDEO)
File "/usr/lib/python2.7/site-packages/flickrsmartsync-0.2.1.post0-py2.7.egg/flickrsmartsync/local.py", line 48, in build_photo_sets
file_stat = os.stat(file_path)
OSError: [Errno 2] No such file or directory: '/media/FOO'


Is it possible to just surround it with a try catch?

Remove windows drive letter from ablum/set name?

Hello,

I just got your python program working on win7 using python27. My directory layout looks something like this:

G:\My Pictures\2001
G:\My Pictures\2001\January
G:\My Pictures\2001\January\photo1.jpg
...

The uploaded set on flickr contains the "G:" in the album name. My concern is if I move the "My Pictures" folder to another drive letter, it won't recognize that they have already been uploaded. Can you update the code to strip the drive letter?

Thanks in advance,
John

Monitor option not uploading

Its says :
Uploading [Copie de IMG_20140829_123842_64.jpg] to set [F:\test\test]
But in reality its not uploading anything

should warn if same media name but different letter case

should warn if same media name but different letter case

William 12 - 13 months/After the haircut.jpg
William 12 - 13 months/after the haircut.jpg

I discovered this when trying to copy the export from linux to mac where the default filesystem is not case sensitive, only case preserving.

My scenario is attempting to use flickrsmartsync to export all photos from my spouse's flickr account.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.