An automated Comic Book downloader (cbr/cbz) for use with SABnzbd, NZBGet and torrents

Related tags

Image Processingmylar
Overview

Mylar Logo Mylar

Note that feature development has stopped as we have moved to Mylar3.

EOL for this project is the end of 2020 and will no longer be supported. This repo will be archived as of Jan-1-2021.

Mylar is an automated Comic Book (cbr/cbz) downloader program for use with NZB and torrents written in python. It supports SABnzbd, NZBGET, and many torrent clients in addition to DDL.

It will allow you to monitor weekly pull-lists for items belonging to user-specific series to download, as well as being able to monitor story-arcs. Support for TPB's and GN's is also now available.

This program is considered an "Alpha release" but is in development still. It is not bug-free, but it does work!

Support & Discussion

You are free to join the Mylar support community on IRC where you can ask questions, hang around and discuss anything related to Mylar.

  1. Use any IRC client and connect to the Freenode server, irc.freenode.net.
  2. Join the #mylar channel.

The Mylar Forums are also online @ https://forum.mylarcomics.com

Issues can be reported on the Github issue tracker, provided that you:

  • Search existing recent OPEN issues. If an issue is open from a year ago, please don't add to it.
  • Always follow the issue template!
  • Close your issue when it's solved!

Requirements

  • At least Python version 2.7.9 (3.x is not supported)
  • ComicVine API key (found here - program will have limited to no functionality without it
  • UnRaR / RAR is required if metatagging is enabled within the program.

Usage

To start the program, type python Mylar.py inside the root of the Mylar directory. Typing python Mylar.py --help will give a list of available options.

Once it's started, navigate to http://localhost:8090 in your web browser (or whatever IP the machine that has Mylar is on).

Helpful hints:

  • Ensure Comic Location is specified in the configuration (Configuration --> Web Interface --> Comic Location)
    • Mylar auto-creates the Comic Series directories under the Comic Location. The directory is displayed on the Comic Detail page).
    • If you do not want directories to be created until there are issues present, set create_folders = False in the config.ini.
  • A search provider needs to be specified to perform any search-related functions
  • Enabling Automatically Mark Upcoming Issues as Wanted in settings will mark any NEW comic from the Pullist that is on your 'watchlist' as wanted
  • Add a comic (series) using the Search button or via the Pullist.
  • If you know the CV comicid, enter the full id into the search box (ie. 4050-XXXXX)
  • If adding a comic fails with "Error", submit a bug and it will be checked out (usually an easy fix)
  • Post-Processing is for adding new issues into existing series on your watchlist, Import is for adding files for series that don't exist on your watchlist into your watchlist
  • For the most up-to-date build, use the Development build
    • Master doesn't get updated as frequently (> month), and Development is usually stable

Post-processing

It is imperative that you enable the post-processing option if you require post-processing (Configuration --> Quality & Post-Processing --> Enable Post-Processing)

Newsgroups

There are 2 ways to perform post-processing within Mylar, however you cannot use both options simultaneously.

ComicRN

  • You need to enable the Mylar APIKey for this to work (Configuration --> Web Interface --> API --> Enable API --> Generate --> Save Configuration).
  • Within the post-processing/ folder of Mylar there are 2 files (autoProcessComics.py and autoProcessComics.cfg.sample)
  • Within the post-processing/ folder of Mylar there are 2 directories (nzbget, sabnzbd) and within each of these client folders is a ComicRN.py script that is to be used with the respective download client.
  • Edit (put in your Mylar host, port, apikey (generated from above), and ssl(0 for no, 1 for yes) and rename the autoProcessComics.cfg.sample to autoProcessComics.cfg.
  • Copy autoProcessComics.py, autoProcessComics.cfg and the respective ComicRN.py into your SABnzbd/NZBGet scripts directory (or wherever your download client stores its scripts).
  • Make sure SABnzbd/NZBGet is setup to have a 'comic-related' category that points it to the ComicRN.py script that was just moved.
  • Ensure in Mylar that the category is named exactly the same.

Completed Download Handling (CDH)

  • For the given download client (SABnzbd / NZBGet) simply click on the Enable Completed Download Handling option.
  • For SABnzbd to work, you need to make sure you have a version > 0.8.0 (use the Test Connection button for verification)

Torrents

There is no completed processing for torrents. There are methods available however:

Torrent client on same machine as Mylar installation

  • Configuration tab --> Quality & Post-Processing --> Post-Processing
  • set the post-processing action to copy if you want to seed your torrents, otherwise move
    • Enable Folder Monitoring
    • Folder location to monitor: set to the full location where your finished torrents are downloaded to.
    • Folder Monitor Scan Interval: do NOT set this to < 1 minute. Anywhere from 3-5 minutes should be ample.

Torrent client on different machine than Mylar

  • Use harpoon to retrieve items back to your local install as soon as they are completed and have post-processing occur immediately (also works with other automated solutions).
  • Any other method that involves having the files localized and then have Folder Monitor monitor the location for files.

Torrent client (rtorrent/deluge) on different machine than Mylar

  • a built-in option for these clients that will monitor for completion and then perform post-processing on the given items.
  • files are located in the post-processing/torrent-auto-snatch location within the mylar directory.
  • read the read.me therein for configuration / setup.

DDL

When using DDL, post-processing will be initiated immediately upon successful completion. By default the items are downloaded to the cache directory location and removed after post-processing. However, if you wish to change the default directory location, specify the full directory location in the config.ini ddl_location field.

Renaming files and folders

You can specify how Mylar renames files during post-processing / import in addition to the folders.

Folder Format

  • If left blank or as the default value of ComicName-(Year), it will create subdirectories in the format ComicName-(Year)
  • You can do multiple directory hiearchies as well - so you could do $Publisher/$Series/$Year to have it setup like DC Comics/Wildman/2011 (as an example)
  • Folder Format is used on every Add Series / Refresh Series request
    • Enabling Renaming has no bearing on this, so make sure if you're not using the default, that it's what you want.

File Format

  • To enable renaming for files, you need to enable the Rename Files option, otherwise, Mylar will use the original file and not rename at all
    • This includes replacing spaces, lowercasing and zero suppression (all renaming features)

You can contribute by sending in your bug reports / enhancement requests.
Telling us what's working helps too!

Extract the ISO 11146 beam size from an image file

laserbeamsize Simple and fast calculation of beam sizes from a single monochrome image based on the ISO 11146 method of variances. Some effort has bee

Scott Prahl 21 Jan 06, 2023
Extracts random colours from an image

EXTRACT COLOURS This repo contains all the project files. Project Description A Program that extracts 10 random colours from an image and saves the rg

David .K. Danso 3 Dec 13, 2021
Manipulate EXIF and IFD metadata.

Tyf Copyright Distribution Support this project Buy Ѧ and: Send Ѧ to AUahWfkfr5J4tYakugRbfow7RWVTK35GPW Vote arky on Ark blockchain and earn Ѧ weekly

16 Jan 21, 2022
Imutils - A series of convenience functions to make basic image processing operations such as translation, rotation, resizing, skeletonization, and displaying Matplotlib images easier with OpenCV and Python.

imutils A series of convenience functions to make basic image processing functions such as translation, rotation, resizing, skeletonization, and displ

PyImageSearch 4.3k Jan 01, 2023
Semi-hash-based Image Generator

pixel-planet Semi-hash-based Image Generator Utilizable for NFTs Generation Process Input is salted and hashed Colors (background, planet, stars) are

Bill Ni 3 Sep 01, 2022
Python script to generate vector graphics of an oriented lattice unit cell

unitcell Python script to generate vector graphics of an oriented lattice unit cell Examples unitcell --type hexagonal --eulers 12 23 34 --axes --crys

Philip Eisenlohr 2 Dec 10, 2021
A Python package implementing various HDRI / Radiance image processing algorithms.

Colour - HDRI A Python package implementing various HDRI / Radiance image processing algorithms. It is open source and freely available under the New

colour-science 111 Dec 06, 2022
Blue noise image stippling in Processing (requires GPU)

Blue noise image stippling in Processing (requires GPU)

Mike Wong 141 Oct 09, 2022
OctoPrint is the snappy web interface for your 3D printer!

OctoPrint OctoPrint provides a snappy web interface for controlling consumer 3D printers. It is Free Software and released under the GNU Affero Genera

OctoPrint 7.1k Jan 03, 2023
PyGtk Color - A couple of python scripts to select a color (for scripting usage)

Selection Scripts This repository contains two scripts to be used within a scripting project, to aquire a color value. Both scripts requir

Spiros Georgaras 1 Oct 31, 2021
Image histogram remapping

Hmap An image histogram remapping script written in Python 2.7 by Anthony Kesich and Ross Goodwin. Changes source image so that source image's histogr

Ross Goodwin 199 Nov 19, 2022
Detecting haze image with hazer.

hazer-py Detecting haze image with hazer. What is hazer Hazer is a lib for getting "haze degree". This repository is python version of hazer: https://

Joey777210 2 Dec 27, 2021
Quickly 'anonymize' all people in an image. This script will put a black bar over all eye-pairs in an image

Face-Detacher Quickly 'anonymize' all people in an image. This script will put a black bar over all eye-pairs in an image This is a small python scrip

Don Cato 1 Oct 29, 2021
3D Model files and source code for rotating turntable. Raspberry Pi, DC servo and PWM modulator required.

3DSimpleTurntable 3D Model files and source code for rotating turntable. Raspberry Pi, DC servo and PWM modulator required. Preview Construction Print

Thomas Boyle 1 Feb 13, 2022
A small Python module for BMP image processing.

micropython-microbmp A small Python module for BMP image processing. It supports BMP image of 1/2/4/8/24-bit colour depth. Loading supports compressio

Quan Lin 4 Nov 02, 2022
Me cleaner - Tool for partial deblobbing of Intel ME/TXE firmware images

me_cleaner me_cleaner is a Python script able to modify an Intel ME firmware image with the final purpose of reducing its ability to interact with the

Nicola Corna 4.1k Jan 08, 2023
LSB Image Steganography Using Python

Steganography is the science that involves communicating secret data in an appropriate multimedia carrier, e.g., image, audio, and video files

Mahmut Can Gönül 2 Nov 04, 2021
pix2tex: Using a ViT to convert images of equations into LaTeX code.

The goal of this project is to create a learning based system that takes an image of a math formula and returns corresponding LaTeX code.

Lukas Blecher 2.6k Dec 30, 2022
Change the image one color channel at a time.

Building-a-Contact-Sheet This hands-on Project is in Python 3 Programming Specialization offered by University of Michigan via Coursera. change the im

Eszter Pai 1 Jan 03, 2022
QR-Generator - An awesome QR Generator to create or customize your QR's

QR Generator An awesome QR Generator to create or customize your QR's! Table of

Tristán 1 Jan 28, 2022