Sign inSign up

itsankoff/gopro

By itsankoff

•Updated almost 2 years ago

A download tool for the GoPro Media Library. You can download more than 25 items at a time.

Image
API management
3

8.4K

itsankoff/gopro repository overview

⁠GoPro Plus Downloader

Github Repository: https://github.com/itsankoff/gopro-plus⁠

If you’re a GoPro Plus user, you’ve probably felt the frustration of trying to download your media in bulk, only to be stopped by the 25-file limit. This arbitrary restriction makes it tedious 😤😡 to migrate your content to other platforms like Google Drive, Dropbox, or your self-hosted NAS (e.g. Synology).

GoPro Plus is an open-source project designed to enable users to interact with the GoPro Plus media library from the command line. This project aims to provide a convenient way to access and manage your GoPro media without the need to use the web interface.

⁠Usage (Docker environment)

For <AUTH_TOKEN> and <USER_ID> check Environment Variables⁠

docker run --name gopro-downloader -e AUTH_TOKEN='<AUTH_TOKEN>' -e USER_ID='<USER_ID>' -v </path/to/download>:/app/download itsankoff/gopro:latest

or

docker run \
--name gopro-downloader
-e AUTH_TOKEN='<AUTH_TOKEN>' \
-e USER_ID='<USER_ID>' \
-v </path/to/download>:/app/download \
itsankoff/gopro:latest

Supported Docker ENV variable options:

  • -e AUTH_TOKEN=<gopro-auth-token> - (required) authentication token obtained from GoPro Media Library website. See Environment Variables⁠.
  • -e USER_ID=<gopro-user-id> - (required) user id obtained from GoPro Media Library website. See Environment Variables⁠.
  • -e ACTION=<list|download> - (optional) action to execute. The default is download.
  • -e START_PAGE=<number> - (optional) run the <action> from specific page (GoPro Media Library API is paginated). The default 1.
  • -e PAGES=<number> - (optional) run the <action> over the specified number of pages. Default 1000000 which should mean max and will download the all cloud assets.
  • -e PER_PAGE=<number> - (optional) specify number of items per page. Default 15.
  • -e PROGRESS_MODE=<inline|newline|noline> - (optional) specify printing mode for download progress. Default noline.

⁠Environment Variables

To set up AUTH_TOKEN as an environment variable, you'll need to retrieve your JWT token by logging into your GoPro Plus media library account.

  1. Open a browser of choice (Firefox/Chrome is prefered, for Safari you need to enable Developer Tools)
  2. Go to GoPro Plus Media Library⁠ (assuming that you are signed out. If you are not, please sing out)
  3. Open your browser's Developer Tools (Ctrl+Shift+I on most browsers or Cmd+Option+I on Mac).
  4. Go to the Network Tab on the Developer Tools console.
  5. In the Filter field enter - user
  6. Open the request and find the Cookies tab in the Sub Preview. You need to find the two mandatory cookies:
    • gp_access_token - usually starts with eyJhbGc.... Copy this long sequence of gibberish characters into the env variable AUTH_TOKEN
    • gp_user_id - the user ID. Copy this ID into the env variable USER_ID

Tag summary

Content type

Image

Digest

sha256:7e6be4f79…

Size

48.4 MB

Last updated

almost 2 years ago

docker pull itsankoff/gopro