Многие взволнованы, что архив дневника никак не придёт. Поэтому преходят к альтернативным методам сохранения дневников:
kxena.diary.ru/p214074272.htm .
Администрация же не рекомендует подобные методы, т.к. те создают нагрузку на сервер.
Мой метод создаёт минимальную нагрузку на сервер, но большую нагрузку на мозг! Не для средних умов. И с учётом требования по IQ -- это неподробная инструкция.
Требуется винда. Думаю, будет работать начиная с 2000-й.
Используйте данный метод на свой страх и риск. Если вас забанят -- я не виноват.
Уже четыре дневника так сохранил.
(линуксоидам понравится)1. Качаем wget. Это программа по скачиванию веб-страниц из командной строки.
sourceforge.net/projects/gnuwin32/files/wget/1....
2. Ставим его.
3. Добавляем его в переменную PATH.
Для этого (метод работает начиная с Висты):
а) нажимаем Win+Pause/Break.
б) нажимаем "Дополнительные параметры системы"->"Переменные среды..."->"Системные переменные".
в) находим Path, потом жмём "Изменить...".
г) в появившемся окошке в поле "Значение переменной" дописываем в конец";", а потом ту папку, куда вы поставили wget.
4. Делаем папку, где будет архив нужного дневника.
5. Создаём файл save.bat, в который пишем следующее:for /F %%a in (list.txt) do wget %%a --load-cookies cookies.txt && ping 127.0.0.1 -n 300
ren *.html* *.html*.html
pause
Первая команда пробегается по списку адресов в файле list.txt и скачивает эти адреса. 300 -- это пауза между скачиванием страниц в секундах. Можно уменьшить, например, до 60. Но к чему торопиться?
Вторая переименует файлы так, чтобы их можно было октрывать браузером без дополнительных вопросов.
Третья нужна, чтобы окно комнадной строки не закрылось после завершения.
Теперь надо подготовить файлы list.txt и cookies.txt
6. Готовим list.txt
а) идём на интересующий дневник и листаем его до конца, чтобы посмотреть номер последней страницы. Можно листнуть один раз, а потом в адресной строке вместо from=20 написать что-нибудь большое, например 20000. И посмотреть, будут ещё страницы или нет. Смотрим на номер последней страницы, вычитаем единицу, умножаем на 20 (это число постов на странице).
б) создаём файл list.txt.
в) пишем в нём: http://name.diary.ru/?from=число&oam . Вместо числа пишем то, что насчитали раньше. oam нужно, чтобы раскрыть все каты сразу. Да, эта опция работает на списке постов тоже! name -- имя дневника.
г) тиражируем эту строку много раз.
д) вручную уменьшаем на 20 в каждой строке число, пока не дойдём до нуля. Процесс можно ускроить с помощью Excel, но это уже расширенная техника. О ней: zhz00.diary.ru/p174430378.htm .
е) в конце последней строки на всякий случай нажимаем Enter.
7. Готовим cookies.txt. 手料理。 Если в том дневнике, что вы хотите сохранить, нет закрытых постов, и он доступен без логина, этот шаг можно пропустить.
Надеюсь, все знают, что такое кукисы. Файл кукисов позволит wget'у получать страницы с сайта так, как будто вы залогинены, поскольку дайари хранит сведения о текущем пользователе как раз в кукисах.
а) создаём файл cookies.txt
б) копируем туда вот это дерьмо:.diary.ru TRUE / FALSE 1541462400 user_id 0000
.diary.ru TRUE / FALSE 1541462400 user_login 0000
.diary.ru TRUE / FALSE 1541462400 user_ip 0000
.diary.ru TRUE / FALSE 1541462400 user_pass 0000
Важно: вот эти пропуски обязательно должны быть символами табуляции, а не пробелами.
Это страшное число в строках -- время истечения кукисов в формате unix time. Для примера я взял время примерно ноября 2018. Что будет, если указать время, которое уже прошло -- не знаю.
в) смотрим в браузере список кукисов. Дальше в качестве примера я привожу ФФ.
г) Tools -> Options -> Privacy&Security -> remove individual cookies.
д) открываем ветку diary.ru (перед этим вы должны залогиниться на сайте от пользователя, у которого есть доступ к нужному дневнику и его закрытым постам).
е) ищем поля, соответствующие тем, что указано в списке выше (второе значение справа).
ж) копируем содержимое соответствующих полей вместо 0000 в тексте выше.
8. Запускаем save.bat и идём заниматься своими делами. Общее время скачивания будет 5 минут * число страниц. Следить за ходом мероприятия можно будет по появлению новых файлов в назначенной папке.
9. Примечания
а) файлы cookies.txt и save.bat пригодны к повторному использованию.
б) содержимое Библиотеки изображений не сохраняется.
в) скачивание дополнительных файлов, помимо текста страниц, не производится.
г) пока diary работают, ваши скачанные страницы будут выглядеть прилично, однако если они выключатся, всё оформление слетит. Впрочем, текст прочитать будет можно.
д) комментарии не сохраняются.
е) если включена защита CloudFlare, ничего работать не будет. Её периодически включают-отключают. Когда создастся первый файл в папке, откройте его браузером и проверьте, что там то, что вам надо, а не привет от CloudFlare.
06.11.2017 в 23:52
06.11.2017 в 23:59
07.11.2017 в 00:09
07.11.2017 в 22:15
for /F %%a in (list.txt) do wget %%a --load-cookies cookies.txt && ping 127.0.0.1 -n 300
Вместо цикла можно использовать опцию --input-file, вместо пинга — --wait (см. также --random-wait). Причём --input-file я настоятельно советую, потому что у тебя сейчас на каждую страничку запускается новая копия wget, открывающая HTTP-соединение; будь копия одна, соединение бы переиспользовалось и нагрузка на сервер была бы ещё меньше.
г) тиражируем эту строку много раз.
д) вручную уменьшаем на 20 в каждой строке число, пока не дойдём до нуля
Пишут, что for поддерживает интервалы: ss64.com/nt/for_l.html Можно сделать что-то типа такого:
г) пока diary работают, ваши скачанные страницы будут выглядеть прилично, однако если они выключатся, всё оформление слетит. Впрочем, текст прочитать будет можно.
См. опции --page-requisites и --convert-links, а также --continue (чтобы не выкачивать одни и те же стили по сто раз), --recursive и --no-parent.
Зануда mode o--- O-- O-- Блин! Не выключается! Да и фиг с ним, все равно я его перед каждым комментарием включаю.
-- Minoru
07.11.2017 в 22:39
Что касается копий, тут ты не прав. Бат-файлы всё запускают по очереди, поэтому копия вгет всегда одна.
07.11.2017 в 22:48
-- Minoru
07.11.2017 в 22:57
31.01.2020 в 18:42
ПОТОМУШТО АРХИВ БЛЕВНИЧКА БОЛЬШЕ НЕЛЬЗЯ ЗОКАЗАДЬ!
31.01.2020 в 22:27
Ох ё, я и забыл, что я такую штуку придумал. Спасибо, что напомнил.
Данный метод всё ещё должен работать.
22.02.2020 в 15:20
19.11.2020 в 16:10
26.01.2021 в 18:52
27.01.2021 в 14:02
ее забанили и удалили, что-то такое.
так что скачивать либо вгетом, либо оффлайн эксплорером, либо методами, которые дыбр предлагает, они пока обновляют инфу по мере изменения дайров
29.01.2021 в 16:19
а если для дыбра качать их программкой, можно залить на дыбр и с дыбра сделать нормальный архив?
сразу он нормальным, как я поняла, не получается)
01.02.2021 в 18:27
вроде да, кто-то предлагал такой вариант