# torboost
> Download utility for Tor
## About
This tool was designed specifically for downloading large files from onion services for analysis. It does so by retrieving chunks using multiple circuits, so the server must support byte ranges (`Accept-Ranges`, most of them do). If a given part fails (connection issues, chunk smaller than expected), it is being put back to the queue. Once all bits and pieces are ready they are combined, and the final result is saved in the `./downloads` directory.
## Warning
**This way of utilizing Tor network reduces your anonymity!**
## Requirements
* `tor`
## Installation
`$ pip install torboost`
## Usage
Basic usage, you may need to wait a while until all circuits are established:
`$ torboost -u 'http://example.onion/data.zip'`
If you want to combine the files before download is finished:
`$ torboost -u 'http://example.onion/data.zip' --combine`
In case you experience delays, or there is a problem establishing circuits you can reset workers using:
`$ torboost -u 'http://example.onion/data.zip' --reset`
### Custom configuration file
You can create a custom configuration file for Tor (JSON-based), for example:
```
{
"ExitNodes": "{se},{no},{be},{hr},{cz},{fi},{dk},{lu},{nl}",
"StrictNodes": "1"
}
```
And then apply it with:
`$ torboost -u 'http://example.onion/data.zip' --config custom.json`
### Arguments
```
usage: torboost [-h] -u URL [-p TOR_PROCESSES] [--control-port-start CONTROL_PORT_START] [--socks-port-start SOCKS_PORT_START] [--timeout TIMEOUT] [--chunk-size CHUNK_SIZE] [--user-agent USER_AGENT] [--config CONFIG] [--debug] [--combine] [--reset] [-v]
Utility for downloading files from onion services using multiple Tor circuits
options:
-h, --help show this help message and exit
-u URL, --url URL Download URL (default: None)
-p TOR_PROCESSES, --tor-processes TOR_PROCESSES
Number of Tor processes (default: 5)
--control-port-start CONTROL_PORT_START
First port for Tor control (default: 10080)
--socks-port-start SOCKS_PORT_START
First port for SOCKS (default: 9080)
--timeout TIMEOUT Timeout for Tor relay connection (default: 300)
--chunk-size CHUNK_SIZE
Size of a single download block (in bytes) (default: 50MB)
--user-agent USER_AGENT
User-Agent header (default: python-requests/2.27.1)
--config CONFIG Custom Tor configuration file (JSON)
--debug Enable debugging mode (verbose output) (default: INFO)
--combine Combine all chunks downloaded so far
--reset Remove data directories and rebuild circuits
-v, --version show program's version number and exit
```
Raw data
{
"_id": null,
"home_page": "https://github.com/tasooshi/torboost/",
"name": "torboost",
"maintainer": "",
"docs_url": null,
"requires_python": "",
"maintainer_email": "",
"keywords": "Tor,onion,download",
"author": "tasooshi",
"author_email": "tasooshi@pm.me",
"download_url": "https://files.pythonhosted.org/packages/7b/f2/f06a60361b5cd6027cbd4efa1fe3d45cbda225b3c4aaadd15d1acafdf154/torboost-0.9.5.tar.gz",
"platform": null,
"description": "# torboost\n\n> Download utility for Tor\n\n## About\n\nThis tool was designed specifically for downloading large files from onion services for analysis. It does so by retrieving chunks using multiple circuits, so the server must support byte ranges (`Accept-Ranges`, most of them do). If a given part fails (connection issues, chunk smaller than expected), it is being put back to the queue. Once all bits and pieces are ready they are combined, and the final result is saved in the `./downloads` directory.\n\n## Warning\n\n**This way of utilizing Tor network reduces your anonymity!**\n\n## Requirements\n\n* `tor`\n\n## Installation\n\n`$ pip install torboost`\n\n## Usage\n\nBasic usage, you may need to wait a while until all circuits are established:\n\n`$ torboost -u 'http://example.onion/data.zip'`\n\nIf you want to combine the files before download is finished:\n\n`$ torboost -u 'http://example.onion/data.zip' --combine`\n\nIn case you experience delays, or there is a problem establishing circuits you can reset workers using:\n\n`$ torboost -u 'http://example.onion/data.zip' --reset`\n\n### Custom configuration file\n\nYou can create a custom configuration file for Tor (JSON-based), for example:\n\n```\n{\n \"ExitNodes\": \"{se},{no},{be},{hr},{cz},{fi},{dk},{lu},{nl}\",\n \"StrictNodes\": \"1\"\n}\n```\n\nAnd then apply it with:\n\n`$ torboost -u 'http://example.onion/data.zip' --config custom.json`\n\n### Arguments\n\n```\nusage: torboost [-h] -u URL [-p TOR_PROCESSES] [--control-port-start CONTROL_PORT_START] [--socks-port-start SOCKS_PORT_START] [--timeout TIMEOUT] [--chunk-size CHUNK_SIZE] [--user-agent USER_AGENT] [--config CONFIG] [--debug] [--combine] [--reset] [-v]\n\nUtility for downloading files from onion services using multiple Tor circuits\n\noptions:\n -h, --help show this help message and exit\n -u URL, --url URL Download URL (default: None)\n -p TOR_PROCESSES, --tor-processes TOR_PROCESSES\n Number of Tor processes (default: 5)\n --control-port-start CONTROL_PORT_START\n First port for Tor control (default: 10080)\n --socks-port-start SOCKS_PORT_START\n First port for SOCKS (default: 9080)\n --timeout TIMEOUT Timeout for Tor relay connection (default: 300)\n --chunk-size CHUNK_SIZE\n Size of a single download block (in bytes) (default: 50MB)\n --user-agent USER_AGENT\n User-Agent header (default: python-requests/2.27.1)\n --config CONFIG Custom Tor configuration file (JSON)\n --debug Enable debugging mode (verbose output) (default: INFO)\n --combine Combine all chunks downloaded so far\n --reset Remove data directories and rebuild circuits\n -v, --version show program's version number and exit\n```\n",
"bugtrack_url": null,
"license": "MIT License",
"summary": "Download utility for Tor",
"version": "0.9.5",
"project_urls": {
"Homepage": "https://github.com/tasooshi/torboost/"
},
"split_keywords": [
"tor",
"onion",
"download"
],
"urls": [
{
"comment_text": "",
"digests": {
"blake2b_256": "7bf2f06a60361b5cd6027cbd4efa1fe3d45cbda225b3c4aaadd15d1acafdf154",
"md5": "0154ba7aa0b6d3deacc220a9e99f23ee",
"sha256": "158c9d2bd90c1f722d851c460c306025244078d7d62c6b73937262a08a7f93e9"
},
"downloads": -1,
"filename": "torboost-0.9.5.tar.gz",
"has_sig": false,
"md5_digest": "0154ba7aa0b6d3deacc220a9e99f23ee",
"packagetype": "sdist",
"python_version": "source",
"requires_python": null,
"size": 6293,
"upload_time": "2023-08-19T13:01:24",
"upload_time_iso_8601": "2023-08-19T13:01:24.150471Z",
"url": "https://files.pythonhosted.org/packages/7b/f2/f06a60361b5cd6027cbd4efa1fe3d45cbda225b3c4aaadd15d1acafdf154/torboost-0.9.5.tar.gz",
"yanked": false,
"yanked_reason": null
}
],
"upload_time": "2023-08-19 13:01:24",
"github": true,
"gitlab": false,
"bitbucket": false,
"codeberg": false,
"github_user": "tasooshi",
"github_project": "torboost",
"travis_ci": false,
"coveralls": false,
"github_actions": false,
"lcname": "torboost"
}