A manga download script written in python.

Related tags

Downloadermanga-dlp
Overview

manga-dlp

python script to download mangas


Build Status

Quality Gate Status


Description

A manga download script written in python. It only supports mangadex.org for now. But support for other sites is planned.

Before downloading a new chapter, the script always checks if there is already a chapter with the same name in the download directory. If found the chapter is skipped. So you can run the script on a schedule to only download new chapters without any additional setup.

The default behaiviour is to pack the images to a cbz archvie. If you just want the folder with all the pictures use the flag --nocbz.

Currently Supported sites

Usage

With GitHub

git clone https://github.com/olofvndrhr/manga-dlp.git # clone the repository

cd manga-dlp # go in the directory

pip install -r requirements.txt # install required packages

# on windows
python manga-dlp.py <options>
# on unix
python3 manga-dlp.py <options>

With pip (pypi)

(not yet done)

With docker

See the docker README

Options

/downloads" -l LANG, --language LANG Manga language. Defaults to "en" --> english --read READ Path of file with manga links to download. One per line --list List all available chapters. Defaults to false --nocbz Dont pack it to a cbz archive. Defaults to false --forcevol Force naming of volumes. For mangas where chapters reset each volume --wait WAIT Time to wait for each picture to download in seconds(float). Defaults 0.5 --verbose Verbose logging. Defaults to false">
usage: manga-dlp.py [-h] [-u URL] [-c CHAPTERS] [-p PATH] [-l LANG] [--read READ] [--list] [--nocbz] [--forcevol] [--wait WAIT]
[--verbose]

optional arguments:
-h, --help                          Show this help message and exit
-u URL, --url URL                   URL of the manga
-c CHAPTERS, --chapters CHAPTERS    Chapters to download
-p PATH, --path PATH                Download path. Defaults to "
    
     /downloads"
-l LANG, --language LANG            Manga language. Defaults to "en" --> english
--read READ                         Path of file with manga links to download. One per line
--list                              List all available chapters. Defaults to false
--nocbz                             Dont pack it to a cbz archive. Defaults to false
--forcevol                          Force naming of volumes. For mangas where chapters reset each volume
--wait WAIT                         Time to wait for each picture to download in seconds(float). Defaults 0.5
--verbose                           Verbose logging. Defaults to false

    

Downloads file-structure

.
└── 
   
    /
    └── 
    
     /
        └── 
     
      /

     
    
   

Example:

./downloads/mangatitle/chaptertitle(.cbz)

Read list of links from file

With the option --read you can specify a file with links to multiple mangas. They will be parsed from top to bottom one at a time. Every link will be matched for the right api to use. It is important that you only have one link per line, otherwise they can't be parsed.

Example:

# mangas.txt
link1
link2
link3

python3 manga-dlp.py --read mangas.txt --list

This will list all available chapters for link1, link2 and link3.

Set download path

With the option -p/--path you can specify a path to download the chapters to. The default path is /downloads . Absolute and relative paths are supported.

Example:

python3 manga-dlp.py --path /media/mangas

This will save all mangas/chapters in the path /media/mangas/ /

Contribution / Bugs

For suggestions for improvement, just open a pull request.

If you want to add support for a new site, there is an api template file which you can use.

Otherwise you can open a issue with the name of the site which you want support for. (not guaranteed to be implemented)

If you encounter any bugs, also just open a issue with a description of the problem.

TODO's

  • Make docker container for easy distribution --> Dockerhub
  • Make pypi package
  • Add more supported sites
You might also like...
A Python script to download PDB files associated with a Portable Executable (PE)
A Python script to download PDB files associated with a Portable Executable (PE)

A Python script to download PDB files associated with a Portable Executable (PE)

Simple Python script to download images and videos from public subreddits without using Reddit's API 😎
Simple Python script to download images and videos from public subreddits without using Reddit's API 😎

Subreddit Media Downloader Download images and videos from any public subreddit without using Reddit's API Made with ❤ by Nico 💬 About: This script a

Download your bandcamp collection using this python script.

bandcamp-downloader Download your Bandcamp collection using this python script. It requires you to have a browser with a logged in session of bandcamp

Script that allows to download portable installers of different versions Adobe software for macOS

What is this and for what This is a script that allows you to download portable installers of programs from Adobe for macOS with different versions. T

The sole purpose of this script is to download any NFT collection from OpenSea

OpenSea NFT Stealer The sole purpose of this script is to download any NFT collection from OpenSea. Setup Prerequisites: Python 3 Python requests libr

Arxiv2Kindle is a simple script written in python that converts LaTeX source downloaded from Arxiv and recompiles it to better fit a Kindle or other similar reading devices.
Arxiv2Kindle is a simple script written in python that converts LaTeX source downloaded from Arxiv and recompiles it to better fit a Kindle or other similar reading devices.

Arxiv2Kindle is a simple script written in python that converts LaTeX source downloaded from Arxiv and recompiles it to better fit a read

FireDM is a python open source (Internet Download Manager) with multi-connections, high speed engine, it downloads general files and videos from youtube and tons of other streaming websites .
FireDM is a python open source (Internet Download Manager) with multi-connections, high speed engine, it downloads general files and videos from youtube and tons of other streaming websites .

python open source (Internet Download Manager) with multi-connections, high speed engine, based on python, LibCurl, and youtube_dl https://github.com/firedm/FireDM

This is a python based web scraping bot for windows to download all ACCEPTED submissions of any user on Codeforces
This is a python based web scraping bot for windows to download all ACCEPTED submissions of any user on Codeforces

CODEFORCES DOWNLOADER This is a python based web scraping bot for windows to download all ACCEPTED submissions of any user on Codeforces Requirements

Comments
  • Files downloaded have no extension

    Files downloaded have no extension

    Hello,

    I've just installed manga-dlp in a docker instance and started downloading some manga. The download is working but files are saved without extension. When the program creates the CBZ file the readers I've tried cannot open it, probably because of this reason. (the files are generated correctly as I can unzip them without any issue).

    I've noticed that the files in the mangadex server do not have any extension, not sure if this is something recent or not.

    I've also tried to generate PDF but the extension is not included in the image so I cannot see if PDF would work anyway.

    Docker file

    version: "3"
    services:
      manga-dlp:
        image: olofvndrhr/manga-dlp:latest
        container_name: manga-dlp
        security_opt:
          - no-new-privileges:true
        networks:
          - proxy
        volumes:
          - ************/Comics:/app/downloads/ # default manga download directory
          - ************/manga-dlp/config/mangas.txt:/app/mangas.txt # default file for manga links to download
          #- ./crontab:/etc/cron.d/mangadlp # path to default crontab
          #- ./schedule:/app/schedules/daily # path to the default schedule which is run daily
        environment:
          - TZ=Europe/************
          - PUID=1000 # custom userid - defaults to 4444
          - PGID=1000 # custom groupid - defaults to 4444
        restart: unless-stopped
    
    networks:
      proxy:
        external: true
    

    Mangas.txt

    https://mangadex.org/title/f7888782-0727-49b0-95ec-a3530c70f83b/hajime-no-ippo
    [...]
    
    bug enhancement 
    opened by kn-f 3
  • Not working with Mangadex API >= 5.4.1

    Not working with Mangadex API >= 5.4.1

    From Mangadex:

    ⚠️  Deprecated
    Deprecate Chapter.data.attributes.{hash, data, dataSaver} fields
    They will be accessible only through /at-home/server endpoint after the transition period.
    We will keep it present on /chapter based endpoints for 1 week from today after which that information will be entirely gone from any other endpoint.
    

    Since this changes breaks the current script, i need to rewrite it to use the new "at-home" endpoint. I will also overhaul the whole script to remove unnecessary pieces.

    Expect the script not to work for a few days until i fix everything.

    bug enhancement 
    opened by olofvndrhr 1
  • [FEATURE] Volume support for all apis (future proofing)

    [FEATURE] Volume support for all apis (future proofing)

    Is your feature request related to a problem? Please describe. Most manga-dl things do not support making volume folders, due to the fact a lot of sites don't support showing information of what chapters are in what volume.

    Describe the solution you'd like I'm going to PR so more sites, your implementation and organization of supporting multiple sites is amazing, to just have a callable class is a great way to do this.

    In order to support multiple sites with full meta and sorting, it should have a fallback to the mangadex api to get the missing information.

    Describe alternatives you've considered I made a kind of wrapper for mangodl which barely worked and was not automated.

    Additional context The api fallback to mangadex may need a login, I haven't looked through everything you've done but I'm glad to find an active, usable project.

    feature-request 
    opened by BitterSweetcandyshop 0
Releases(2.2.16)
Owner
Ivan Schaller
DevOps Engineer / Network Engineer
Ivan Schaller
A Celery application to collect data, download media and extract information from social media APIs

Project IBEX A Celery application to collect data, download media and extract information from social media APIs. Requirements You must have a Redis D

ibex 4 Dec 15, 2022
Simple avogadr.io batch downloader python script

Simple avogadr.io batch downloader python script

2 Jan 19, 2022
A modern CLI to download animes automatically from Twist

Kurby Kurby is a nice and simple CLI that use Twist website, and their huge collection to download animes for free and automatically Animes from Twist

Alain BERRIER 48 Dec 22, 2022
Download a large file from Google Drive (curl/wget fails because of the security notice).

gdown Download a large file from Google Drive. Description Download a large file from Google Drive. If you use curl/wget, it fails with a large file b

Kentaro Wada 2.7k Jan 09, 2023
code for paper"3D reconstruction method based on a generative model in continuous latent space"

PyTorch implementation of 3D-VGT(3D-VAE-GAN-Transformer) This repository contains the source code for the paper "3D reconstruction method based on a g

Tong 5 Apr 25, 2022
Shit-fetch - Shitpost fetcher (downloader)

shit-fetch Download shitpost (random) from https://random-shitpost.com/ Usage ./shitfetch.py --nsfw (true/false) --output ~/Downloads (default : ./)

Pinokaille 1 Jan 02, 2022
抖音去水印视频批量下载,完全使用抖音官方接口

TikTokDownload 抖音去水印视频下载,使用抖音官方接口 使用教程(Win7) Win10环境暂时没测,bug情况应该比Win7少 运行软件前先打开目录下 conf.ini 文件按照要求进行配置 批量下载可直接修改配置文件,单一视频下载请直接打开粘贴视频链接即可

JohnserfSeed 2k Jan 04, 2023
A program that can download animations from myself website

MYD A program that can download animations from myself website 一個可以用來下載Myself網站上動漫的程式 Quick Start [無GUI版本] 確定電腦內包含 ffmpeg 並設為環境變數 (Environment Variabl

Patrick_star 1 Nov 07, 2021
Search & download music from a certain streaming service

Search & download music from a certain streaming service

mat 2 Mar 11, 2022
Download images where login is required using har python and js

이미지 다운로드(har, python, js 사용) 로그인이 필요한 사이트에서 DevTools로 이미지를 다운받는 방법은 조금 까다로웠다. 가장 쉽게 할 수 있는 방법을 찾아보았다. 사용법 F12를 눌러 DevTools를 실행 Network 탭으로 이동 페이지 새로고침

0 Jul 22, 2022
Stremio addon for fetching videos from your google drive.

stremio-gdrive Instructions: There are two ways to go about: Method 1 is hard and long but might give you better performance and you need to make your

72 Dec 31, 2022
Convert BMS songs to osu! With options to convert keysounds and convert to 7key.

bmx2osu Convert BMS to osu! With options to: convert keysounds to one song file using BMX2WAV include 7k version change Overall Difficulty and HP Drai

7 Nov 28, 2022
Open Source application for downloading and playing music.

Musifre Greetings For HackHeist(Wartex) Judges: Synopsis, Promotion Video & Product Functioning Video are present in Documentation Folder. A Star woul

Yash Dhingra 9 Mar 22, 2022
Youtube list to mp3 - Youtube list to mp3 downloader

Youtube list to mp3 downloader Tiny script to convert a list of youtube videos t

Papi Diagne 3 Feb 11, 2022
ComicDownloader - Downloads Comics from readcomiconline.li

ComicDownloader Downloads Comics from readcomiconline.li To use this script from

2 Nov 08, 2022
YT-Downloader is a Tool to download youtube video.

YT-Downloader YT-Downloader is a Tool to download youtube video.If you are looking for a simple video downloader tool Than This YT-Downloader may be u

Pradip Thapa 7 May 11, 2022
ImageScraper is a cross-platform tool for downloading a specified count from xkcd, Astronomy Picture of the Day and Existential Comics

ImageScraper The ImageScraper is a cross-platform tool for downloading a specified count from xkcd, Astronomy Picture of the Day and Existential Comic

1amnobody 1 Jan 25, 2022
A simple python script and it's used for mp4 type video downloading from youtube.

This is a simple python script and it's used for mp4 type video downloading from youtube. also, it's used inbuilt python module pytube. Furthermore, I know we have so many apps and online websites to

Yousaf K Hamza 1 Jan 10, 2022
Noto fonts go universal! Download Noto fonts combined to suit your region (South Asia, SE Asia, Africa-MiddleEast, Europe-Americas).

Go Noto Universal Noto fonts go universal! Download Noto fonts combined to suit your region (South Asia, SE Asia, East Asia, Africa-MiddleEast, Europe

Satish B 67 Jan 06, 2023
TikTok - TikTok Bot to download video or audio from TikTok

TikTok - TikTok Bot to download video or audio from TikTok

JMTHON 51 Mar 04, 2022