Skip to main content

Python API for fetching PRIDE Archive dataset files.

Project description

PrideFetch

PrideFetch is a Python API package for discovering and downloading PRIDE Archive dataset files. It wraps the PRIDE REST API, resolves file download URLs, and provides parallel downloads with resume support.

Installation

pip install pridefetch

Quick Start

from pridefetch import list_raw_files, download_files

accession = "PXD032067"
files = list_raw_files(accession)

results = download_files(
    accession,
    files,
    output_dir="./downloads/PXD032067",
    overwrite=False,
    resume=True,
    workers=4,
    show_progress=False,
    verify_checksums=True,
)

print(results)

Authenticated Access

PrideFetch supports API key authentication using a configurable header.

from pridefetch import AuthConfig, PrideFetchClient

auth = AuthConfig(api_key="your-token", header_name="X-API-Key")

with PrideFetchClient(auth=auth) as client:
    files = client.list_raw_files("PXD032067")
    results = client.download_files("PXD032067", files)

You can also load credentials from environment variables:

export PRIDEFETCH_API_KEY="your-token"
export PRIDEFETCH_API_KEY_HEADER="X-API-Key"
from pridefetch import PrideFetchClient, load_auth_from_env

with PrideFetchClient(auth=load_auth_from_env()) as client:
    project = client.fetch_project("PXD032067")
    print(project["title"])

API Overview

  • fetch_project(accession)
  • list_files(accession)
  • list_raw_files(accession)
  • filter_files(files, ...)
  • build_download_tasks(accession, files, ...)
  • download_files(accession, files, ...)
  • PrideFetchClient for session reuse and auth

User Guide

See the full user guide in DEV.md.

License

MIT License

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

pridefetch-0.5.1.tar.gz (11.5 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

pridefetch-0.5.1-py3-none-any.whl (11.8 kB view details)

Uploaded Python 3

File details

Details for the file pridefetch-0.5.1.tar.gz.

File metadata

  • Download URL: pridefetch-0.5.1.tar.gz
  • Upload date:
  • Size: 11.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.14.2

File hashes

Hashes for pridefetch-0.5.1.tar.gz
Algorithm Hash digest
SHA256 52a7fc31a1c60f2cf87a74c90ae6ae7ec1a25d879c89c5a5e984ad68218b2619
MD5 3d213cd968500486849c28a7f5cc6e40
BLAKE2b-256 638b161193988ce047464b9373afdfa74daa3bad6eaa592faf764083f9340e81

See more details on using hashes here.

File details

Details for the file pridefetch-0.5.1-py3-none-any.whl.

File metadata

  • Download URL: pridefetch-0.5.1-py3-none-any.whl
  • Upload date:
  • Size: 11.8 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.14.2

File hashes

Hashes for pridefetch-0.5.1-py3-none-any.whl
Algorithm Hash digest
SHA256 ab02e85f4b254fe150cf2bbac90277a1a61ff0874cabfa6d68b8e3eea9646413
MD5 b1006c7661d137bee211c52a7c393a88
BLAKE2b-256 0c8b16af9600f3156285253a103a99425f49fb4e087b1506f88dd28968525deb

See more details on using hashes here.

Supported by

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