Как скачать новеллу с RanobeLib и залить ее на читалку
Подробный гайд, созданный для тех, кто предпочитает читать новеллы с электронной книги, а не с телефона. Создано вместе с DeepSeek, так как я полный 0 в программировании.
Меня уже несколько месяцев мучал вопрос “как же скачать новеллу с Ranobelib”, да еще и запихну полученный текст в электронную книгу. Самым неприятным было то, что на сайте возможно «скачать» новеллу для оффлайн чтения, но эта функция работает только на сайте и в приложении. То есть мне в любом случае приходилось читать с сайта на телефоне. В ходе поисков и бесконечных запросов в гугле, я нашла только 2 варианта решения проблемы:
Использовать бота в телеграмм (ссылку потеряла)
Немного сомнительный вариант, поскольку необходимо дать боту данные учетки SocialLib, и скачать одним файлом не всегда возможно, так как бот периодически лежит. А также самое важное – если новелла 18+ или же не доступна в вашем регионе, то бот выдаст ошибку и в принципе все. Дальше никак.
Использовать скрипт с GitHub и подключить его через Tampermonkey
Этот вариант более универсален, но также не может скачать новеллу, если она не доступна в вашей стране. Даже если вы используете сторонние сервисы чтобы открыть страницу, которая не доступна, вы все равно не сможете ее скачать. Увы, такие ограничения пока что.
С предисловием закончили, так что разбираем пошагово рабочий вариант.
Первым делом ставим расширение Tampermonkey в браузер. Оно есть как в Google Chrome, так и в Opera, про остальные браузеры ничего сказать не могу. Для тех, кто не знает, Tampermonkey – это браузерное расширение, которое позволяет подключать и использовать пользовательские скрипты в браузере. В принципе, это все, что необходимо знать. Идем дальше.
Когда вы подключили расширение в ваш браузер, идем на GitHub и скачиваем скрипт Archive ranobelib.me. После скачивания достаем из архива файл Archive ranobe.user.js
Этот скрипт добавляет в правый нижний угол браузера иконку, при нажатии на которую скачивает архив, в котором все имеющиеся главы новеллы на сайте в формате .txt и .html.
После этого подключаем скрипт в Tampermonkey. В правом верхнем углу щелкаем на нужное нам расширение и в появившемся окне выбираем «Панель управления», после чего откроется вкладка расширения. Переходим в окно «Утилиты» и добавляем скрипт в строку «Импортировать из файла”. После этого в окне «Установленные скрипты» появится наш скрипт, готовый к использованию.
Стоит отметить, что в браузере Opera, для того, чтоб расширение Tampermonkey могло использовать пользовательские скрипты, необходимо включить режим разработчика. Он включается в окне расширений в верхнем правом углу.
Все. Скрипт подключили, вы прекрасны, но это только половина пути. Теперь переходим в RanobeLib и открываем нужную вам новеллу. В правом нижнем углу будет значок скачивания, если его там нет, то обновите страницу и он появится.
Важно! Скрипт работает только на новеллах, доступных в вашем регионе, то есть, даже если вы обходите блокировку, используя сторонние сервисы, скрипт не будет работать. Он скачает пустой архив.
В качестве примера возьмем новеллу «Точка зрения Всеведущего читателя», где в общей сложности 553 главы и формат публикации глав представлен по частям.
Когда вы скачаете новеллу (процесс может занять несколько минут), внутри архива увидите три папки, вам нужна именно chapters_txt, в которой хранятся все главы новеллы в .txt формате. Однако, мы не может просто взять и объединить все в один файл, поскольку командная строка упорядочивает файлы не так, как нам надо.
Для начала необходимо переименовать файлы в папке, чтобы все работало корректно. Конечно, если у вас короткая новелла, то сделать это можно и вручную, однако, в большинстве новелл более сотни глав, поэтому проще прибегнуть к автоматизации этого процесса.
Создаем в папке chapters_txt файл формата .bat и вписываем туда:
Что делает этот скрипт?
Он переименовывает текстовые файлы в папке, удаляя v*_ из названии, а остальные цифровые значения переводит из формата 1.12 в 001_120, который командная строка в дальнейшем считает правильно и главы не перемешаются.
v1_0.txt → 000_000.txt
v1_1.1.txt → 001_100.txt
v1_1.12.txt → 001_120.txt
v3_51.8.txt → 051_800.txt
v5_104.10.txt → 104_100.txt
Скрипт рассчитан на дробную часть до трех цифр, если в исходном названии указано большее значений, то дробная часть сократится до трех знаков. Названия файлов сортируются сначала по целой части, а затем по дробной.
Если в новелле более 999 глав, то нужно исправить в скрипте:
!integer:~-3! → !integer:~-4!
Если дробная часть более .99, то нужно исправить:
!decimal:~0,3! → !decimal:~0,5!
P.S. Указанный скрипт спокойно работает и с обычными новеллами, где нет дробной части в главах.
После запуска файла bat, в который ранее был вписан скрип, откроется командная строка и автоматически переименует названия файлов, оставляя исходный порядок.
Перейдем к объединению всех текстовых файлов в один. Для этого вбиваем в поиск “Командная строка” и появившемся окне пишем cd и указываем путь в папку с нашими txt файлами и нажимаем Enter.
Например:
Когда вы указали путь, вставляем короткий скрипт и снова ждем Enter.
После завершения работы скрипта, в папке с файлами появится combined.txt.
Готово! Переименовываем готовый файл как вам нужно и используем любой конвертер чтобы получить новеллу в необходимом формате (fb2, epud, mobi и пр.) для вашей вашей электронной книги или читалки.
Спасибо за прочтение! Это гайд, который мне был бы нужен, но я его просто не нашла, поэтому решила написать его сама.