https://github.com/skyme5/magzdb
magzdb.org Downloader
https://github.com/skyme5/magzdb
downloader magazine magazines magzdb
Last synced: 5 months ago
JSON representation
magzdb.org Downloader
- Host: GitHub
- URL: https://github.com/skyme5/magzdb
- Owner: skyme5
- License: mit
- Created: 2020-07-02T19:34:09.000Z (almost 6 years ago)
- Default Branch: master
- Last Pushed: 2024-12-07T08:17:45.000Z (over 1 year ago)
- Last Synced: 2025-09-09T07:51:39.414Z (9 months ago)
- Topics: downloader, magazine, magazines, magzdb
- Language: Python
- Homepage:
- Size: 205 KB
- Stars: 50
- Watchers: 3
- Forks: 10
- Open Issues: 15
-
Metadata Files:
- Readme: README.md
- Contributing: CONTRIBUTING.md
- License: LICENSE
Awesome Lists containing this project
README
### Installation
Install using pip
```bash
$ pip install -U magzdb
```
### Usage
```text
usage: magzdb [-h] [-V] -i MAGAZINE_ID [-e [EDITION [EDITION ...]]]
[-f FILTER] [-l] [-P DIRECTORY_PREFIX] [--downloader DOWNLOADER]
[--debug]
Magzdb.org Downloader
required arguments:
-i MAGAZINE_ID, --id MAGAZINE_ID
ID of the Magazine to Download. eg. http://magzdb.org/j/.
optional arguments:
-h, --help show this help message and exit
-V, --version Print program version and exit
-e [EDITION [EDITION ...]], --editions [EDITION [EDITION ...]]
Select Edition
-f FILTER, --filter FILTER
Use filter. See README#Filters
-l, --latest Download only latest edition.
-P DIRECTORY_PREFIX, --directory-prefix DIRECTORY_PREFIX
Download directory.
--downloader DOWNLOADER
Use External downloader (RECOMMENDED). Currently supported: aria2, wget, curl
--debug Print debug information.
--skip-download Don't download files.
```
### Usage Examples
#### Docker
```bash
docker build . -t magzdb
docker run -v $(PWD):/tmp magzdb -h
# Add alias to shell
alias magzdb="docker run -v $(PWD):/tmp magzdb"
magzdb -h
```
#### Download all editions
```bash
$ magzdb -i 1826
```
#### Filters
You can supply filter using `-f`, for example to download issues between
`4063895` and `4063901`, you can write as
```bash
$ magzdb -i 1826 -f "eid > 4063895 and eid < 4063901"
```
You can use `eid`, `year` in the filter expression.
##### More examples of filter expression
- `eid > 4063895 and eid < 4063901` or `eid >= 4063895 and eid <= 4063901`
- `eid >= 4063895` or `eid != 4063895`
- `year >= 2018`, `year <= 2018`, `year == 2018` or even `year != 2018`
#### Download only latest edition
```bash
$ magzdb -i 1826 -l
```
#### Download only latest edition with custom location `magazine`
```bash
$ magzdb -i 1826 -l -P magazine
```
#### Use external downloader
```bash
$ magzdb -i 1826 -l -P magazine --downloader wget
```
> This is recommended since internal downloader does not support resuming interrupted downloads.
### Python Installation Recommendation
If you don't want to install official [Python](https://www.python.org/downloads/) to your system (global).
You can install [pyenv installer](https://github.com/pyenv/pyenv-installer) environment under your specific account. It's prefered method for macOS users, because High Sierra and later macOS ships with old Python 2.7.10.
## Contributing
Found a bug or missing a feature you are more than welcome to contribute.
## License
MIT
