Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Appearance settings
This repository was archived by the owner on Mar 24, 2024. It is now read-only.

Zebradil/Gimme-iPhotos

Open more actions menu

Repository files navigation

Gimme-iPhotos

🪦 Discontinued

This project is no longer maintained. Check https://github.com/icloud-photos-downloader/icloud_photos_downloader instead.

I have not been using iCloud and Apple devices since 2021 and I do not plan to. This project was started to first off-load my photos from iCloud and then migrate out of iCloud completely.

Probably, it doesn't make sense to fork or attempt to recover it, as https://github.com/picklepete/pyicloud, on which Gimme-iPhotos relies is not maintained for a couple of years as well.

Overview

PyPI PyPI

Download media files from iCloud.

This tool uses pyicloud to synchronize photos and videos from iCloud to your local machine.

Features

  • Downloads media files from iCloud in parallel (might be beneficial on small files and wide bandwidth)
  • Keeps local collection in sync with iCloud by:
    • skipping files which exist locally
    • removing local files which were removed from the cloud
  • Reads configuration from ini-file
  • Stores password in the keychain (provided by pyicloud)
  • Supports two-factor authentication
  • Shows nice progress bars (thanks to tqdm)

Installation

$ pip3 install gimme-iphotos

or

$ docker pull zebradil/gimme-iphotos

Usage

$ gimme-iphotos --help
usage: gimme-iphotos [-h] [-c CONFIG] [-v] [-u USERNAME] [-p PASSWORD] [-d DESTINATION] [-o] [-r] [-n PARALLEL] [-g] [--zero-pad]

Downloads media files from iCloud

optional arguments:
  -h, --help            show this help message and exit
  -c CONFIG, --config CONFIG
                        Configuration file.
                        It's ini-like file (see configparser module docs), must contain [main] section.
                        Keys are fully-named arguments, except help, config and verbose.
                        Values specified using command line arguments take precedence over values from a provided config file.
  -v, --verbose         Increase verbosity. Can be specified multiple times.
                        Use -vvvv to get maximum verbosity.
  -u USERNAME, --username USERNAME
                        iCloud username (email). Can be specified interactively if not set.
  -p PASSWORD, --password PASSWORD
                        iCloud password. Can be specified interactively if not set.
  -d DESTINATION, --destination DESTINATION
                        Destination directory. Can be specified interactively if not set.
  -o, --overwrite       Overwrite existing files. Default: false.
  -r, --remove          Remove missing files. Default: false.
  -n PARALLEL, --num-parallel-downloads PARALLEL
                        Max number of concurrent downloads.
                        Increase this number if bandwidth is not fully utilized. Default: 3
  -g, --group           Group the photos into year and month directories.
  --zero-pad            Zero pad months when grouping photos.

Using config file:

$ cat john.cfg
[main]
username = john.doe@example.com
password = not-secure123
destination = /home/john/Photos
remove = True

$ gimme-iphotos -c john.cfg

Overriding config file:

$ gimme-iphotos -c john.cfg --destination /tmp/icloud

Without config file:

$ # Password will be requested interactively
$ gimme-iphotos -u john.doe@rexample.com --destination /tmp/icloud
Enter iCloud password for john.doe@rexample.com:

Docker

The CLI is the same but requires mounting the destination directory and config file (if needed).

$ docker run --interactive --tty \
    -v <destination>:/somedir \
    -v ${PWD}/john.cfg:/app/john.cfg \
    zebradil/gimme-iphotos -c john.cfg

License

Licensed under the MIT License.

By German Lashevich.

About

Download media files from iCloud.

Topics

Resources

License

Stars

Watchers

Forks

Sponsor this project

  •  

Packages

No packages published

Contributors 5

Morty Proxy This is a proxified and sanitized view of the page, visit original site.