Skip to main content

A Python-based Google Photos downloader built with Selenium.

Project description

Google Photos Downloader

A Python-based Google Photos downloader built with Selenium.

This tool automates the process of downloading photos from Google Photos albums by simulating user interaction with the web interface. It uses Selenium to open shared album links, click the "Download all" button, and extract the images to your local system.

Features

  • Accepts link-shared Google Photos album URLs
  • Accepts your own Google Photos album URLs if you supply the profile directory.
  • Automatically extracts downloaded .zip files into organized folders
  • Works without needing any API keys or OAuth setup
  • Supports batch downloading of multiple album links

Why not use the Google Photos API?

The original Google Photos API is deprecated. While the Google Picker API is still available, it comes with several major limitations:

  • You must select each photo manually, no "select all" option, meaning it can not be automated.
  • Limited to a maximum number of items
  • It requires setting up a Google Cloud project and API credentials, which is pretty hard.

Disclaimer

  • Be aware of Google’s Terms of Service before using this tool.
  • It simulates human actions, but Google might not be happy about someone using this.
  • Selenium auto-downloads the Chrome driver if not found, which can take up space.

Installation

pip install gp-dl

Usage

CLI

gp-dl --album-urls ALBUM_URL ALBUM_URL2 --output-dir test

As a module

from gp_dl import download_albums
successful_albums, failed_albums, album_times = download_albums(["ALBUM_URL", "ALBUM_URL2"], output_dir="test")

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

gp_dl-0.4.0.tar.gz (18.8 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

gp_dl-0.4.0-py3-none-any.whl (19.7 kB view details)

Uploaded Python 3

File details

Details for the file gp_dl-0.4.0.tar.gz.

File metadata

  • Download URL: gp_dl-0.4.0.tar.gz
  • Upload date:
  • Size: 18.8 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.11.15

File hashes

Hashes for gp_dl-0.4.0.tar.gz
Algorithm Hash digest
SHA256 a08f7d6c8f3a7f8fec427de8c3e207ea70a55c4b14311f0306590681ed85bc8b
MD5 a8abc99ce3982ebd1915912d97ad1d03
BLAKE2b-256 b92e3a4be3e7a831c5026d4c31742073bbada2920febace058880276d868e232

See more details on using hashes here.

File details

Details for the file gp_dl-0.4.0-py3-none-any.whl.

File metadata

  • Download URL: gp_dl-0.4.0-py3-none-any.whl
  • Upload date:
  • Size: 19.7 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.11.15

File hashes

Hashes for gp_dl-0.4.0-py3-none-any.whl
Algorithm Hash digest
SHA256 ba09155b285b1e81352a045364c407eaac5278b245fbac2bcf008c1b0b64f754
MD5 07e75f0aed2bdda80f5611de15e2a791
BLAKE2b-256 485ab24846307e12aa39baae4aa6717dc97620204a9f9b5497921d69efb4d45d

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page