{"id":25155133,"url":"https://github.com/dub1401/rulateparser","last_synced_at":"2025-04-03T11:17:05.385Z","repository":{"id":231616576,"uuid":"772050303","full_name":"DUB1401/RulateParser","owner":"DUB1401","description":"Парсер Tl.Rulate.ru в формат JSON.","archived":false,"fork":false,"pushed_at":"2024-04-04T22:15:03.000Z","size":23,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-02-09T00:39:58.455Z","etag":null,"topics":["novels","parser"],"latest_commit_sha":null,"homepage":"","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"apache-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/DUB1401.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null}},"created_at":"2024-03-14T12:49:04.000Z","updated_at":"2024-04-01T15:54:13.000Z","dependencies_parsed_at":"2024-04-04T23:25:43.901Z","dependency_job_id":null,"html_url":"https://github.com/DUB1401/RulateParser","commit_stats":null,"previous_names":["dub1401/rulateparser"],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/DUB1401%2FRulateParser","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/DUB1401%2FRulateParser/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/DUB1401%2FRulateParser/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/DUB1401%2FRulateParser/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/DUB1401","download_url":"https://codeload.github.com/DUB1401/RulateParser/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":246989754,"owners_count":20865331,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["novels","parser"],"created_at":"2025-02-09T00:40:11.610Z","updated_at":"2025-04-03T11:17:05.360Z","avatar_url":"https://github.com/DUB1401.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"# RulateParser\n**RulateParser** – это кроссплатформенный скрипт для получения данных с сайта [Tl.Rulate.ru](https://tl.rulate.ru/) в формате JSON. Он позволяет записать всю информацию о конкретной новелле, а также её главах и содержании глав.\n\n## Порядок установки и использования\n1. Загрузить последний релиз. Распаковать.\n2. Установить Python версии не старше 3.10. Рекомендуется добавить в PATH.\n3. В среду исполнения установить следующие пакеты: [BeautifulSoup4](https://www.crummy.com/software/BeautifulSoup/), [dublib](https://github.com/DUB1401/dublib), [lxml](lxml).\n```\npip install BeautifulSoup4\npip install dublib\npip install lxml\n```\nЛибо установить сразу все пакеты при помощи следующей команды, выполненной из директории скрипта.\n```\npip install -r requirements.txt\n```\n4. Настроить скрипт путём редактирования _Settings.json_.\n5. Открыть директорию со скриптом в терминале. Можно использовать метод `cd` и прописать путь к папке, либо запустить терминал из проводника.\n6. Указать для выполнения главный файл скрипта `main.py`, передать ему команду вместе с параметрами, нажать кнопку ввода и дождаться завершения работы.\n\n# Консольные команды\n```\nparse [TARGET*] [FLAGS] [KEYS]\n```\nПроводит парсинг тайтла с указанным алиасом в JSON формат и загружает его обложки. В случае, если файл тайтла уже существует, дополнит его новыми данными. \n\n**Описание позиций:**\n* **TARGET** – задаёт цель для парсинга. Обязательная позиция.\n\t* Аргумент – алиас тайтла для парсинга.\n\t* Флаги:\n\t\t* _**-collection**_ – указывает, что список тайтлов для парсинга необходимо взять из файла _Collection.txt_;\n\t\t* _**-local**_ – указывает для парсинга все локальные файлы.\n\t\t\n**Список специфических флагов:**\n* _**-f**_ – включает перезапись уже загруженных обложек и существующих JSON файлов.\n\n**Список специфических ключей:**\n* _**--from**_ – указывает алиас тайтла, с момента обнаружения которого в коллекции тайтлов необходимо начать парсинг.\n\n## Неспецифические флаги\nДанный тип флагов работает при добавлении к любой команде и выполняет отдельную от оной функцию.\n* _**-s**_ – выключает компьютер после завершения работы скрипта.\n\n# Settings.json\n```JSON\n\"login\": \"\"\n```\nЛогин для авторизации на сайте.\n___\n```JSON\n\"password\": \"\"\n```\nПароль для авторизации на сайте.\n___\n```JSON\n\"mature-book-id\": 6860\n```\nID книги, классифицируемой как 18+ произведение. С помощью её страницы будет отключаться предупреждение о возрастном ограничении.\n___\n```JSON\n\"noveld-directory\": \"\"\n```\nУказывает, куда сохранять JSON-файлы тайтлов. При пустом значении будет создана папка _Novels_ в исполняемой директории скрипта.\n___\n```JSON\n\"images-directory\": \"\"\n```\nУказывает, куда сохранять иллюстрации новелл. При пустом значении будет создана папка _Images_ в исполняемой директории скрипта.\n___\n```JSON\n\"covers-directory\": \"\"\n```\nУказывает, куда сохранять обложки тайтлов. При пустом значении будет создана папка _Covers_ в исполняемой директории скрипта.\n___\n```JSON\n\"link-to-images-directory\": false\n```\nЕсли включено, корнем для ссылок иллюстраций будет считаться указанный в настройке `images-directory` каталог.\n___\n```JSON\n\"prettifier\": true\n```\nВключает набор готовых решений для повышения качества получаемого контента:\n* очистка небуквенных абзацев в конце глав;\n* удаление дублирующихся названий из текста глав;\n* замена трёх точек символом многоточия в названиях глав;\n* удаление лишних точек из названий глав.\n___\n```JSON\n\"filters\": true\n```\nВключает удаление подстрок из текста глав и описания новеллы по регулярным выражениям из файла _Filters.txt_. В файле поддерживается комментирование при помощи спецсимвола `#`.\n___\n```JSON\n\"proxy\": {\n\t\"enable\": false,\n\t\"host\": \"\",\n\t\"port\": \"\",\n\t\"login\": \"\",\n\t\"password\": \"\"\n}\n```\nУказывает HTTP-прокси для выполнения запросов.\n___\n```JSON\n\"delay\": 0\n```\nУстанавливает интервал в секундах между последовательными запросами к серверу.\n\n_Copyright © DUB1401. 2024._\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdub1401%2Frulateparser","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fdub1401%2Frulateparser","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdub1401%2Frulateparser/lists"}