https://github.com/dub1401/hentaichanparser
Парсер HentaiChan в формат JSON.
https://github.com/dub1401/hentaichanparser
beautifulsoup4 hentai manga parser requests
Last synced: 8 months ago
JSON representation
Парсер HentaiChan в формат JSON.
- Host: GitHub
- URL: https://github.com/dub1401/hentaichanparser
- Owner: DUB1401
- License: apache-2.0
- Created: 2022-11-22T13:33:59.000Z (over 3 years ago)
- Default Branch: main
- Last Pushed: 2024-02-03T17:34:43.000Z (over 2 years ago)
- Last Synced: 2025-02-09T00:39:58.864Z (over 1 year ago)
- Topics: beautifulsoup4, hentai, manga, parser, requests
- Language: Python
- Homepage:
- Size: 5.22 MB
- Stars: 1
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# HentaiChan Parser
**HentaiChan Parser** – это кроссплатформенный скрипт для получения данных с сайта [HentaiChan](https://hentaichan.live) в формате JSON. Он позволяет записать всю информацию о конкретной манге, а также её главах и содержании глав в формате [DMP-V1](Examples/DMP-V1.md).
## Порядок установки и использования
1. Загрузить последний релиз. Распаковать.
2. Установить Python версии не старше 3.10. Рекомендуется добавить в PATH.
3. В среду исполнения установить следующие пакеты: [BeautifulSoup4](https://launchpad.net/beautifulsoup), [PyEnchant](https://github.com/pyenchant/pyenchant), [dublib](https://github.com/DUB1401/dublib), [Pillow](https://github.com/python-pillow/Pillow).
```
pip install BeautifulSoup4
pip install PyEnchant
pip install dublib
pip install Pillow
```
Либо установить сразу все пакеты при помощи следующей команды, выполненной из директории скрипта.
```
pip install -r requirements.txt
```
4. Настроить скрипт путём редактирования _Settings.json_.
5. Открыть директорию со скриптом в терминале. Можно использовать метод `cd` и прописать путь к папке, либо запустить терминал из проводника.
6. Указать для выполнения главный файл скрипта `hcp.py`, передать ему команду вместе с параметрами, нажать кнопку ввода и дождаться завершения работы.
# Консольные команды
```
collect
```
Помещает список алиасов тайтлов, обновлённых на сайте за указанный в настройках период поиска обновлений, в файл _Collection.txt_.
___
```
getcov [MANGA_SLUG*] [FLAGS]
```
Загружает обложки конкретного тайтла.
**Описание позиций:**
* _**MANGA\_SLUG**_:
* Аргумент – алиас тайтла. Обязательная позиция.
**Список специфических флагов:**
* _**-f**_ – включает перезапись уже загруженных обложек.
___
```
parce [MANGA_SLUG*] [FLAGS] [KEYS]
```
Проводит парсинг тайтла с указанным алиасом в JSON формат и загружает его обложки. В случае, если файл тайтла уже существует, дополнит его новыми данными.
**Описание позиций:**
* _**MANGA\_SLUG**_:
* Аргумент – алиас тайтла. Обязательная позиция.
* Флаги:
* _**-collection**_ – указывает на то, что список тайтлов для парсинга необходимо взять из файла _Collection.txt_.
**Список специфических флагов:**
* _**-f**_ – включает перезапись уже загруженных обложек и существующих JSON файлов.
**Список специфических ключей:**
* _**--from**_ – указывает, с момента обнаружение какого алиаса необходимо начать парсинг коллекции.
___
```
update [FLAGS] [KEYS]
```
Проводит парсинг тайтлов, обновлённых за интервал времени, указанный в _Settings.json_.
**Список специфических флагов:**
* _**-f**_ – включает перезапись уже загруженных обложек и существующих JSON файлов;
* _**-local**_ – обновляет все локальные файлы JSON.
**Список специфических ключей:**
* _**--from**_ – указывает алиас тайтла, с момента обнаружения которого в списке обновляемых тайтлов необходимо начать обработку обновлений, а eсли таковой не был обнаружен, скрипт пропустит все обновления.
## Неспецифические флаги
Данный тип флагов работает при добавлении к любой команде и выполняет отдельную от оной функцию.
* _**-s**_ – выключает компьютер после завершения работы скрипта.
# Settings.json
```JSON
"sizing-covers": true
```
Указывает, нужно ли определять и записывать в JSON разрешение обложки.
___
```JSON
"use-webp": false
```
Если включить, расширения изображений в ссылках на слайды будут заменены на _*.webp_.
___
```JSON
"use-id-instead-slug": false
```
При включении данного параметра файлы JSON и директория обложек тайтла будут названы по ID произведения (коим считается ID первой главы тайтла), а не по алиасу.
___
```JSON
"auto-branches-merging": false
```
Определяет режим распределения глав по ветвям. Если параметр отключён, то каждая ветвь будет соответствовать переводчику; при включении же оного в первую ветвь будут помещены все доступные главы, номера которых не дублируются, а дублирующиеся главы распределятся по другим ветвям согласно их переводчикам.
___
```JSON
"check-updates-period": 2
```
Указывает, обновления за сколько дней необходимо получить.
___
```JSON
"covers-directory": ""
```
Указывает, куда сохранять обложки тайтлов. При пустом значении будет создана папка _Covers_ в исполняемой директории скрипта. Рекомендуется оформлять в соответствии с принципами путей в Linux, описанными [здесь](http://cs.mipt.ru/advanced_python/lessons/lab02.html#cd).
___
```JSON
"titles-directory": ""
```
Указывает, куда сохранять JSON-файлы тайтлов. При пустом значении будет создана папка Titles в исполняемой директории скрипта. Рекомендуется оформлять в соответствии с принципами путей в Linux, описанными [здесь](http://cs.mipt.ru/advanced_python/lessons/lab02.html#cd).
___
```JSON
"genres": {
"название тега": "название жанра",
"название тега": null
}
```
В данном разделе можно указать список тегов, которые будут помечены как жанры, а также, при необходимости, задать для них новые названия. Переопределённые теги удаляются из оригинального списка.
_Copyright © DUB1401. 2022-2024._