ENA Smart Workflow and Acquisition Network — fast parallel FASTQ downloader for the European Nucleotide Archive
Project description
🦢 enaswan
ENA Smart Workflow and Acquisition Network
A fast, parallel command-line toolkit to fetch metadata, download FASTQ files, and verify integrity from the European Nucleotide Archive (ENA).
---
Installation
Via pip (PyPI)
pip install enaswan
Via conda (Bioconda)
conda install -c bioconda enaswan
---
Workflow
Run the three steps in order:
Step 1 — Fetch Metadata
enaswan --meta SRR12345678
enaswan --meta SRR12345678 ERR000001 PRJNA123456 # multiple IDs
enaswan --meta SRR12345678 --outdir ./results # custom output folder
Saves a <ID>\_metadata.csv file containing run accession, sample info,
instrument model, file sizes, FTP links, and MD5 checksums.
---
Step 2 — Download FASTQ Files
enaswan --dl SRR12345678
enaswan --dl SRR12345678 ERR000001 # multiple IDs
enaswan --dl SRR12345678 --threads 8 --outdir ./data # parallel + custom dir
- Downloads are parallel (default: 4 threads)
- Resumes interrupted downloads automatically
- Shows a real-time progress bar
📶 Note: Download speed will vary depending on the internet connection and ENA server load.
---
Step 3 — Verify Integrity
enaswan --check SRR12345678_metadata.csv
Computes MD5 checksums for each downloaded file and compares against ENA's expected values. Reports PASS ✅, MISSING ⚡, or CORRUPTED ❌.
---
Full Options
usage: enaswan \[-h] (--meta ID \[ID ...] | --dl ID \[ID ...] | --check metadata.csv)
\[--threads N] \[--outdir DIR]
options:
--meta ID \[ID ...] Fetch metadata CSV for accession IDs
--dl ID \[ID ...] Download FASTQ files for accession IDs
--check metadata.csv Verify MD5 checksums using metadata CSV
--threads N Parallel download threads (default: 4)
--outdir DIR Output directory (default: current directory)
---
Supported Accession Types
| Type | Example | Description |
|---|---|---|
| Run | SRR*, ERR*, DRR* | Single sequencing run |
| Project | PRJNA*, PRJEB* | All runs in a project |
| Sample | SAMN*, SAME* | All runs for a sample |
---
License
MIT © Bandari Bharathwaj
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file enaswan-0.1.1.tar.gz.
File metadata
- Download URL: enaswan-0.1.1.tar.gz
- Upload date:
- Size: 9.2 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.13.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
a66cc55072305f9ffa1b97509ef9d25c5544f261bc25dbeac5c9132605e3ba14
|
|
| MD5 |
4b13061b4aa9aecff7e1279841e27b82
|
|
| BLAKE2b-256 |
f0615f102cb1738c82a38d3e0095de0f3d4bad15741579933bcdc13577be04d8
|
File details
Details for the file enaswan-0.1.1-py3-none-any.whl.
File metadata
- Download URL: enaswan-0.1.1-py3-none-any.whl
- Upload date:
- Size: 10.0 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.13.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
5f0cd786a8bb065462dba558541f1d6ca5fb53c634510e197ed949619508aec2
|
|
| MD5 |
7e0d7c94836080326afaa196db7120fd
|
|
| BLAKE2b-256 |
149d7e1c0c6fce2a6a52ef808d09893211971da22fcd663dfe6ed16033190912
|