Skip to main content

Utility for downloading large datasets from Synapse.

Project description

Build Status Coverage Status

Synapse Downloader

Utility for downloading large datasets from Synapse.

Dependencies

  • Python3.7
  • A Synapse account with a username/password. Authentication through a 3rd party (.e.g., Google) will not work, you must have a Synapse user/pass for the API to authenticate.

Install

pip install synapse-downloader

Configuration

Your Synapse credential can be provided on the command line (--username, --password) or via environment variables.

SYNAPSE_USERNAME=your-synapse-username
SYNAPSE_PASSWORD=your-synapse-password

Usage

usage: synapse-downloader [-h] [-u USERNAME] [-p PASSWORD] [-ll LOG_LEVEL]
                          [-ld LOG_DIR] [-dt DOWNLOAD_TIMEOUT] [-w] [-wc] [-c]
                          [-ci [COMPARE_IGNORE]]
                          entity-id download-path

positional arguments:
  entity-id             The ID of the Synapse entity to download or compare
                        (Project, Folder or File).
  download-path         The local path to save the files to or to compare.

optional arguments:
  -h, --help            show this help message and exit
  -u USERNAME, --username USERNAME
                        Synapse username.
  -p PASSWORD, --password PASSWORD
                        Synapse password.
  -ll LOG_LEVEL, --log-level LOG_LEVEL
                        Set the logging level.
  -ld LOG_DIR, --log-dir LOG_DIR
                        Set the directory where the log file will be written.
  -dt DOWNLOAD_TIMEOUT, --download-timeout DOWNLOAD_TIMEOUT
                        Set the maximum time (in seconds) a file can download
                        before it is canceled.
  -w, --with-view       Use an entity view for loading file info. Fastest for
                        large projects.
  -wc, --with-compare   Run the comparison after downloading everything.
  -c, --compare         Compare a local directory against a remote project or
                        folder.
  -ci [COMPARE_IGNORE], --compare-ignore [COMPARE_IGNORE]
                        Path to directories or files to ignore when comparing.

Development Setup

pipenv --three
pipenv shell
make pip_install
make build
make install_local

See Makefile for all commands.

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

synapse-downloader-0.0.2.tar.gz (16.6 kB view hashes)

Uploaded Source

Built Distribution

synapse_downloader-0.0.2-py2.py3-none-any.whl (19.8 kB view hashes)

Uploaded Python 2 Python 3

Supported by

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