Melon – это модульная система управления парсерами манги и ранобэ, способная получать информацию о тайтлах, сохранять её в формате JSON, запрашивать обновления и собирать контент в удобный для ознакомления формат.
Мы уважаем труд сотрудников сайтов, и потому не поставляем никаких решений, связанных с нелегальным получением доступа к платному контенту, а также для снижения нагрузки на эти ресурсы задаём небольшую задержку между запросами.
Проект приветствует добавление парсеров сторонними разработчиками. Для этого создана и постоянно актуализируется подробная документация:
git -v
python3 -V
- Клонируйте репозиторий Melon рекурсивно (для автоматического включения подмодулей) и перейдите в его каталог.
git clone https://github.com/Otaku-Melons/Melon --recursive
cd Melon
- Создайте вирутальное окружение Python, после чего активируйте его и установите зависимости.
python3 -m venv .venv
source .venv/bin/activate
pip install -r requirements.txt
- Запустите модуль помощи по установке Melon.
python main.py install
deactivate
- После этого вы сможете использовать систему управления парсерами Melon внутри виртуального окружения, не захламляющего вашу систему ненужными пакетами. Для ознакомления с доступными командами выполните:
source .venv/bin/activate
melon help
Warning
На Windows используйте .venv\Scripts\activate
вместо source .venv/bin/activate
. Кроме того некоторые функции, например использование алиаса melon
вместо python main.py
, не поддерживаются.
Для каждого парсера поставляется файл settings.json. Melon ищет его сразу в директории Configs, а потом в каталоге самого модуля. Настоятельно рекомендуем редактировать этот файл только внутри Configs, это позволит избежать утраты данных при переустановке парсеров, а также поддерживает неизменяемое состояние модулей.
Структура файла настроек унифицирована, последний обязан содержать следующие разделы: common, proxy, filters, custom.
Данный раздел содержит обязательные базовые параметры парсера.
"archives_directory": ""
Указывает, куда сохранять построенный контент. При пустом значении будет создана директория Output/[PARSER_NAME]/archives
в каталоге запуска Melon. Рекомендуется оформлять в соответствии с принципами путей в Linux.
"covers_directory": ""
Указывает, куда сохранять обложки тайтлов. При пустом значении будет создана директория Output/[PARSER_NAME]/covers
в каталоге запуска Melon (для каждого тайтла создаётся дополнительный вложенный каталог с названием в виде используемого имени описательного файла). Рекомендуется оформлять в соответствии с принципами путей в Linux.
"titles_directory": ""
Указывает, куда сохранять описательные файлы. При пустом значении будет создана директория Output/[PARSER_NAME]/titles
в каталоге запуска Melon. Рекомендуется оформлять в соответствии с принципами путей в Linux.
"bad_image_stub": ""
Указывает путь к изображению, которое будет заменять содержимое загружаемого слайда, по определённым критериям не являющегося валидным (битый файл, очень малый размер, неверный формат).
"pretty": false
Включает обработку контента для улучшения качества. Например, удаляет точки в конце названий глав манги или пустые абзацы из ранобэ.
"use_id_as_filename": false
Указывает способ именования описательных файлов и зависимых каталогов. При активации будет использоваться целочисленный идентификатор, по умолчанию – алиас.
"sizing_images": false
Указывает, следует ли пытаться найти данные о разрешении изображений и заносить их в описательный файл.
"retries": 1
Указывает количество повторов запроса при неудачном выполнении.
"delay": 1
Задаёт интервал в секундах, выжидаемый между последовательными запросами к серверу.
Здесь указываются опциональные фильтры контента. Поддерживается два типа данных: текст и изображение (это отображается в названиях ключей). Сама секция является опциональной и может быть удалена из настроек.
"text_regexs": []
Список регулярных выражений для поиска удаляемых строк.
"text_strings": []
Список удаляемых строк.
"image_md5": []
Список MD5-хэшей игнорируемых изображений.
"image_min_height": null
Минимальная высота валидного изображения.
"image_min_width": null
Минимальная ширина валидного изображения.
"image_max_height": null
Максимальная высота валидного изображения.
"image_max_width": null
Максимальная ширина валидного изображения.
Данный раздел описывает данные прокси-сервера, использующегося для установки соединения с ресурсом.
"enable": false
Переключает использование прокси-сервера.
"host": ""
Указывает IP-адрес прокси-сервера.
"port": ""
Указывает порт прокси-сервера.
"login": ""
Указывает логин для авторизации на прокси-сервере. Необязательный параметр для публичных серверов.
"password": ""
Указывает пароль для авторизации на прокси-сервере. Необязательный параметр для публичных серверов.
Данный раздел содержит параметры отдельных парсеров, не поддающиеся унификации. Такие опции должны быть описаны в README.md файле, находящемся в домашнем каталоге парсера.
Copyright © DUB1401. 2024-2025.