Using this script you will be able to download the entire album of a user (uploads, likes or collections) or a just collection (by specifying Collection-ID) in any size you like.
Make sure you have Python installed and PATH variable set.
If you don't have pip
for Python:
sudo apt-get install python-pip
You will need modules requests
installed, which are in requirements.txt
pip install -r requirements.txt
Follow this guide to install pip
and configure PATH variable.
The rest is the same.
Before running the script, please assign an Access Key to ACCESS_KEY variable in the python script download_user_album.py. If you do not have one, you can create here. For downloading user albums, simply run:
python download_user_album.py [username] [albumtype] [size]
Username is mandatory and by default, if no flags are passed, the script will download all the uploads
of the user (If any) in a regular
size. To customize the nature of downloads, Please include following flags
albumtype
takes the following values -
uploads
to download all the photos uploaded by user
likes
to download all the photos liked by user
collections
to download all the collections of a user
all
to download all of the above uploads, likes, collections
size
takes the following values -
raw
to download the raw size
full
to download the full size
regular
to download the regular size
small
to download the small size
thumb
to download the thumb size
python download_user_album.py likes small
downloads all photos liked by user in small size.
For downloading a particular collection, simply run
python download_collection_album.py [collection-id] [curated flag] [size]
collection-id
is the id of the collection
size
is similar to above and takes the same values
Please include a -c
flag when it's a curated collection you are trying to download. For example,
python download_collection_album.py 160 -c full
downloads the collection with id #160 (which is a curated collection) in a full size. So, we have to include the -c
flag.
You can also include the access key in config.ini file. Make sure the file is in the same location as the above scripts. Inside the config.ini
file, access key should look like
[UNSPLASH]
ACCESS_KEY = <your-access-key>
All the photos will be downloaded in a separate folder with the name of the user and the type of download you requested.
yaswanth amara-unsplash-likes-full
Jakob Owens-unsplash-collection-Behind The Scenes-regular
Since there is a API limit for a public access application for Unsplash (50 requests per hour), if you are trying to download a large number of photos, you might want to run the same command again once you are out of requests. The above scripts will check the folder for the photos that were already downloaded and then will download ONLY the remaining photos.
This program would not be possible without UNSPLASH and their awesome photographers.
I sincerely appreciate if you give necessary credit to the Photographers and Unsplash whenever you use their photos.