-
Notifications
You must be signed in to change notification settings - Fork 17
Home
AT0myks edited this page May 1, 2023
·
4 revisions
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 directoryreolink-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:
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