Skip to content

mewforest/google-art-downloader

Repository files navigation

Google Art Downloader

Cross-platform utility allows you to save all images from Google Art Project in high quality (up to 4K).

screenshot

⭐ It works perfectly from 2018 year till today, thanks for stars!


Usage

  1. Just download a zip archive with binaries from releases, unzip it to any folder and run google-art-downloader.exe.
  2. Use button "Paste url" or CTRL+V to paste your url and click "Download" to start the image processing.

See Running with Python section, if are running on Linux or macOS.

Requirements

Compiled release requires just connection to the Internet and Chrome installed (should be added in PATH).

Running from the source

Running with Python

This method is also suit for you if you don't use Windows.

If you want co compile your own version or use it without downloading compiled files:

  1. Install Python 3.8+ and add interpreter to PATH
  2. Install Google Chrome or Chromium and add executable to PATH
  3. Install all project dependencies:
    python -m pip install -r requirements.txt
  4. Only for Linux and MacOS: be sure you make webdrivers from bin executables.
    • Linux:
    chmod +x bin/chromedriver_linux64/chromedriver
    • MacOS:
    chmod +x bin/chromedriver_mac64/chromedriver
  5. Done! You have to just run a script:
    python GoogleArtDownloader.py

Compiling to executable

If you need to compile it with PyInstaller for Windows, follow this instructions:

  1. Change source code of installed Selenium to disable Selenium terminal showing (it's a common bug by the way):

    • Open file: <your-path-to-python>\Lib\site-packages\selenium\webdriver\common\service.py.
    • In opened file override method placed in selenium.webdriver.common.service.Service:
      self.process = subprocess.Popen(cmd, env=self.env,
                                             close_fds=platform.system() != 'Windows',
                                             stdout=self.log_file,
                                             stderr=self.log_file,
                                             stdin=PIPE,
                                             )
      To this:
      self.process = subprocess.Popen(cmd, stdin=PIPE, stdout=PIPE, stderr=PIPE, creationflags=0x08000000)
  2. After changes above, execute commands below to compile it:

python -m pip install pyinstaller --upgrade
python -m PyInstaller --onefile --noconsole --icon=favicon.ico .\GoogleArtDownloader.py
  1. Copy bin folder to dist.
  2. Done! Congratulations, your compiled script is ready to use in dist folder.

Status of project

This utility doesn't download a maximum possible resolution of the image you provide. It's because of webdriver screenshot limitation. If you really need the maximum possible quality, see alternatives section or feel free to improve this script with pull request.

Alternatives

If you are interested in more highest image resolution or Selenium webdriver isn't starting well, you could use alternatives: