Skip to content
AT0myks edited this page May 1, 2023 · 4 revisions

Downloading all the files

This guide assumes you are on Windows.

(If you know how to download a file on GitHub and run a command, or are on Linux, you probably don't need all of this guide).

Setup:

  • You will need Python 3.9+ and aiohttp (see below)
  • If you are installing Python for the first time, make sure to tick the Add Python to PATH option
  • Download the download.py script (go here, right click, save as)
  • In file explorer, go where you downloaded the script
  • There, open a terminal: with no file highlighted, shift+right click an empty space, and click open command prompt here (or PowerShell if you prefer, or you can also cd your way to it if you know how)
  • Run pip install aiohttp
  • Run python download.py -h to see if everything works. It should display the script's help

How to use the script:

  • -d to specify a target directory. By default a new directory reolink-archive will be created in the current one
  • The maximum number of simultaneous downloads for Google Drive links is limited to 1. This is to avoid getting 403 errors and you should probably leave it like that. If you get 403 errors, try again later. In case you really want to change the maximum, use the -g option
  • For other links the default is 20. Use the -m option for a different value
  • Files that already exist are not downloaded again. To override this, use the -f flag
  • To see which files have already been downloaded, increase verbosity with -v (higher levels don't display more for now)

You should be fine with leaving everything as default.

How it works:

  • If there are multiple links for a firmware, the ones provided by Reolink are tried first
  • The firmware files will be named according to the format <model>__<hardware_version>__<firmware_version>.<ext>
  • You can run the script again later when new firmwares are added to download them
  • There will be a folder per model and per hardware version. The directory tree looks like this:

example

Notes:

  • If the file type cannot be determined, the extension will default to pakorzip (this shouldn't happen anymore since v1.1.0 of the script)
  • If you change the name of a file or folder, it will be considered missing and will be downloaded again if you re run the script
  • Only firmwares will be downloaded, not the changelogs and notes
  • On Windows if you see a lot of RuntimeError: Event loop is closed errors you can ignore them, they are aiohttp bugs
  • At the time of writing there are 390 firmwares for a total of a little bit more than 7 gigabytes
Clone this wiki locally