Как нынче можно сделать локальную копию части сайта?

Для новичков как вообще в Linux, так и в конкретной теме, к которой относится вопрос.

Модератор: Bizdelnick

Ответить
QWERTYASDF
Сообщения: 989
Статус: Чайник со свистком
ОС: GNU/Linux

Как нынче можно сделать локальную копию части сайта?

Сообщение QWERTYASDF »

Доброе время суток, господа. А как Вы сохраняете сайты для оффлайн-просмотра? Мне вот хочется некоторые важные для меня страницы (которые по закону бутерброда в мой выходной будут недоступны и/или у меня вообще не будет инета) сохранить себе на компутер, чтоб потом с этого компутера их просматривать в браузере и чтоб они отображались также как и при онлайн-просмотре т.е. чтобы вместе со страницей загрузились все необходимые ей для корректного отображения файлы. При этом я не хочу тянуть лишнее и закачивать 50-250 Мбайт вместо 2-3 вполне достаточных чтоб я могла почитать эту свою треклятую страницу у себя на компутере при отключенном интернете.

Несколько лет назад я думала, что это задача практически не требует никаких специальных знаний - можно в браузере нажать "сохранить как вэб-архив" или "сохранить с картинками", а потом из браузера открыть этот самый архив. И я так делала. Потом обнаружилось, что браузеры не хотят отображать свои сохраненки, а если и отображают после полчаса бубнов - то явно криво. Потом, когда меня в очередной раз стукнуло пыльным мешком стала везде по возможности использовать консоль - сохраняла wget-ом. Вроде директива такая (Вы извините, опций не помню и сейчас лень разбираться, просто копирую сохранившийся у меня элиас для <wgetwww>):

Код: Выделить всё

wget -p --convert-links -nH -nd -P


Результат - на поверку оказался практически такой-же, как и в случае сохранения через гуи вэб-броузера. Поверка эта была давно и я пробовала мучить wget по разному. Все комбинации, найденные на резонных сайтах (в том числе и на данном форуме) так и не привели к выполнению поставленной задачи.

Пробовала httrack. На данный момент для меня это наиболее адекватная программа для выполнения поставленной задачи т.к. она хоть корректно локализирует все нужные ссылочки на странице, пусть во многих случаях и приходится качать раз в 100 больше необходимого.

Я понимаю, что для программы не ясно что мне надо а что нет, и я должна явно указать то, что мне надо. Но ведь когда речь о том, чтоб просто просматривать одну какую-то страничку в оффлайне - неужели нет какого-то простого синтаксиса/умолчания, при котором указав адрес только этой странички, качальщик сам бы закачал все что надо закачать для нее?? Ну вот например хочу эту страницу себе на компутер, чтоб ее в оффлайне смотреть. Будете смеяться, но уже часа полтора не могу сохранить ее по требованиям, описанным выше.

Ну, если Вы дочитали таки эту мою не очень здоровую простыню мысленного потока, то может чего посоветуте? Надо все-таки учить html сотоварищей, вэб-программирование, и тогда я наконец смогу закачать ровно то, что мне надо?
Спасибо сказали:
Аватара пользователя
drBatty
Сообщения: 8735
Статус: GPG ID: 4DFBD1D6 дом горит, козёл не видит...
ОС: Slackware-current
Контактная информация:

Re: Как нынче можно сделать локальную копию части сайта?

Сообщение drBatty »

QWERTYASDF писал(а):
27.02.2015 02:13
Будете смеяться

не буду. Странички сейчас не статические как раньше, а динамические. Т.е. создаются по запросу пользователя. Мало того, к пользователю приезжает "полуфабрикат", который в дальнейшем разворачивается локально. Причём в процессе разворачивания браузер что-то ещё стягивает из Сети.

Т.о. даже закачка "полуфабриката" не даст результата. Странички off-line попросту не существует.

Несколько лет назад на долю JS и прочего приходились разные мелочи вроде проверки стойкости пароля, и на эту ерунду можно было не обращать внимания. Сегодня на JS делаются ключевые эл-ты сайта, и потому без JS уже ничего не видно. А с JS необходимо ещё что-то докачивать из Сети.

NoWay.
http://emulek.blogspot.ru/ Windows Must Die
Учебник по sed зеркало в github

Скоро придёт
Осень
Спасибо сказали:
Аватара пользователя
bormant
Сообщения: 1354

Re: Как нынче можно сделать локальную копию части сайта?

Сообщение bormant »

QWERTYASDF писал(а):
27.02.2015 02:13
Ну вот например хочу эту страницу себе на компутер, чтоб ее в оффлайне смотреть
Про странички конкретно с этого сайта: в левой колонке есть раздел "Печать/экспорт", а в нём ссылка "Скачать как PDF".
Спасибо сказали:
Аватара пользователя
alv
Бывший модератор
Сообщения: 7275
Статус: Пенсионер в законе
ОС: Cintu
Контактная информация:

Re: Как нынче можно сделать локальную копию части сайта?

Сообщение alv »

bormant писал(а):
27.02.2015 09:52
QWERTYASDF писал(а):
27.02.2015 02:13
Ну вот например хочу эту страницу себе на компутер, чтоб ее в оффлайне смотреть
Про странички конкретно с этого сайта: в левой колонке есть раздел "Печать/экспорт", а в нём ссылка "Скачать как PDF".

Там вроде как и пункт скачать html есть, гд кнопка Опиции.
А общего решения - да, нету: если конкретный движок не предусматривает экспорта статики, то пожалуй что и никак.
Спасибо сказали:
Аватара пользователя
Hephaestus
Сообщения: 3729
Статус: Многоуважаемый джинн...
ОС: Slackware64-14.1/14.2
Контактная информация:

Re: Как нынче можно сделать локальную копию части сайта?

Сообщение Hephaestus »

QWERTYASDF писал(а):
27.02.2015 02:13
Доброе время суток, господа. А как Вы сохраняете сайты для оффлайн-просмотра?
По-разному. Когда много утянуть надо - wget, отдельную страницу - браузер.

QWERTYASDF писал(а):
27.02.2015 02:13
Несколько лет назад я думала, что это задача практически не требует никаких специальных знаний - можно в браузере нажать "сохранить как вэб-архив" или "сохранить с картинками", а потом из браузера открыть этот самый архив.

Потом обнаружилось, что браузеры не хотят отображать свои сохраненки, а если и отображают после полчаса бубнов - то явно криво.
Насколько я помню "сохранить как веб-архив" - это делал IE. Архив получался в формате *.mht и таки да - Firefox такой архив открывать не хотел.
Я как-то что-то с этим делал, но уже не помню. А Вы какой браузер имеете в виду?
Firefox может сохранить страницу целиком, если выбрать "веб-страница полностью". Вместе с файлом страницы сохраняется каталог с аналогичным именем, в котором картинки, скрипты и пр. Это уже довольно давно так. Единственное - там могут быть ссылки на другие ресурсы (баннеры какие-нибудь или полноразмерные рисунки) - вот это, разумеется, не сохранится и тогда при локально открытой странице, клик по такому элементу приведёт к попытке перехода на внешний ресурс. Но это не проблема - это всегда так было.

QWERTYASDF писал(а):
27.02.2015 02:13
Ну вот например хочу эту страницу себе на компутер, чтоб ее в оффлайне смотреть. Будете смеяться, но уже часа полтора не могу сохранить ее по требованиям, описанным выше.
А в чём проблема конкретно с этой страницей?
Я сохранил браузером, выбрав "веб-страница полностью", всё сохранилось. Страница в файл, всё остальное - в спец. каталог.
Я, правда, сейчас на работе, здесь винда. Но Firefox - он везде Firefox.
Пускай скрипят мои конечности.
Я - повелитель бесконечности...
Мой блог
Спасибо сказали:
QWERTYASDF
Сообщения: 989
Статус: Чайник со свистком
ОС: GNU/Linux

Re: Как нынче можно сделать локальную копию части сайта?

Сообщение QWERTYASDF »

drBatty писал(а):
27.02.2015 09:23
Т.о. даже закачка "полуфабриката" не даст результата. Странички off-line попросту не существует.

NoWay.


alv писал(а):
27.02.2015 11:23
Там вроде как и пункт скачать html есть, гд кнопка Опиции.
А общего решения - да, нету: если конкретный движок не предусматривает экспорта статики, то пожалуй что и никак.


Печалька.

Ну а вообще я все-таки не понимаю, почему качальщик не может сделать локальную копию страницы (со всем необходимым для ее отображения окружением). Пусть и придется для этого скачать даже с десяток мегабайт, но не под несколько ж сотен...Серверу то все-равно технически, кто качает - браузер или какой-нибудь wget/httrack, дык в чем проблема?

bormant писал(а):
27.02.2015 09:52
Про странички конкретно с этого сайта: в левой колонке есть раздел "Печать/экспорт", а в нём ссылка "Скачать как PDF".

Я этой возможностью воспользовалась. Но хочется именно общего решения.

Hephaestus писал(а):
27.02.2015 11:32
Насколько я помню "сохранить как веб-архив" - это делал IE. Архив получался в формате *.mht и таки да - Firefox такой архив открывать не хотел.
Я как-то что-то с этим делал, но уже не помню. А Вы какой браузер имеете в виду?

Во времена использования винды на своем десктопе - пробовала сохранять из Opera и уже не помню точно, но вроде и из-под IE и может быть из-под Firefox-а. При подключенном инете странички вроде бы всегда отображались нормально и я по наивности верила что также будет в оффлайне. Что на поверку оказалось не так. Естественно, что варианты сохранений перепробовала все (в графическом пользовательском меню браузеров). На Linux-е, в Дебианском Iceweasel-е вроде тоже как-то давно пробовала - тоже облом.
Hephaestus писал(а):
27.02.2015 11:32
А в чём проблема конкретно с этой страницей?
Я сохранил браузером, выбрав "веб-страница полностью", всё сохранилось. Страница в файл, всё остальное - в спец. каталог.

Попробовала - сохранила. Отключила инет, почистила кэш-браузера, открыла - все показывает. Чудеса : ) Debian,Iceweasel 31.4.0
Спасибо сказали:
Аватара пользователя
drBatty
Сообщения: 8735
Статус: GPG ID: 4DFBD1D6 дом горит, козёл не видит...
ОС: Slackware-current
Контактная информация:

Re: Как нынче можно сделать локальную копию части сайта?

Сообщение drBatty »

QWERTYASDF писал(а):
28.02.2015 17:50
Серверу то все-равно технически, кто качает

нет, не всё равно. Сервер нас забанит, если мы будем много и часто качать.
лекарство для wget
-w seconds
--wait=seconds
Wait the specified number of seconds between the retrievals. Use of this option is
recommended, as it lightens the server load by making the requests less frequent. Instead
of in seconds, the time can be specified in minutes using the "m" suffix, in hours using
"h" suffix, or in days using "d" suffix.

Specifying a large value for this option is useful if the network or the destination host
is down, so that Wget can wait long enough to reasonably expect the network error to be
fixed before the retry. The waiting interval specified by this function is influenced by
"--random-wait", which see.

случайная задержка нужна для имитации действий пользователя, сервера часто банят именно по критерию регулярности.
QWERTYASDF писал(а):
28.02.2015 17:50
Ну а вообще я все-таки не понимаю, почему качальщик не может сделать локальную копию страницы

в общем случае для этого нужно полностью распарсить(и выполнить) JavaScript на странице, а это очень сложная задача. Особенно учитывая навыки быдлокодеров. И да, многие вебдизайнеры делают(или просят сделать) защиту от копирования оригинального контента, дабы копипасты не было.

QWERTYASDF писал(а):
28.02.2015 17:50
На Linux-е, в Дебианском Iceweasel-е вроде тоже как-то давно пробовала - тоже облом.

это тот же FireFox. Попробуйте поискать плагинов, может вам это поможет. Плагины есть, и они даже работают. Не всегда. Это не общее решение, но в некоторых частных случаях помогает.
QWERTYASDF писал(а):
28.02.2015 17:50
Попробовала - сохранила. Отключила инет, почистила кэш-браузера, открыла - все показывает. Чудеса : )

не всегда это работает. Но как вариант — пойдёт.

ЗЫЖ попробуйте новый FireFox, который сейчас 36й. Его можно установить прямо в /home, если не хотите создавать помойку в системе. Просто распакуйте архив firefox*.tar.bz2 с https://www.mozilla.org/en-US/firefox/all/ в домашний каталог (ВАЖНО: прав рута НЕ нужно!).
http://emulek.blogspot.ru/ Windows Must Die
Учебник по sed зеркало в github

Скоро придёт
Осень
Спасибо сказали:
Аватара пользователя
Bizdelnick
Модератор
Сообщения: 20793
Статус: nulla salus bello
ОС: Debian GNU/Linux

Re: Как нынче можно сделать локальную копию части сайта?

Сообщение Bizdelnick »

drBatty писал(а):
28.02.2015 21:55
многие вебдизайнеры делают(или просят сделать) защиту от копирования оригинального контента, дабы копипасты не было.

Это как? Он же тогда индексироваться не будет, а если не будет - что с него толку?
Впрочем, я как-то натыкался на сайт, который с user-agent гуглобота отдавал контент нормально, а с человеческим требовал регистрацию и СМС. Но такое быдлокодерство редко встречается.
Пишите правильно:
в консоли
вку́пе (с чем-либо)
в общем
вообще
в течение (часа)
новичок
нюанс
по умолчанию
приемлемо
проблема
пробовать
трафик
Спасибо сказали:
Аватара пользователя
drBatty
Сообщения: 8735
Статус: GPG ID: 4DFBD1D6 дом горит, козёл не видит...
ОС: Slackware-current
Контактная информация:

Re: Как нынче можно сделать локальную копию части сайта?

Сообщение drBatty »

Bizdelnick писал(а):
28.02.2015 23:25
многие вебдизайнеры делают(или просят сделать) защиту от копирования оригинального контента, дабы копипасты не было.

Это как?

а вот так. Я частенько натыкаюсь на такое уродство.
Bizdelnick писал(а):
28.02.2015 23:25
Он же тогда индексироваться не будет, а если не будет - что с него толку?

не знаю, не вдавался. Эти сайты сами — копипаста.
http://emulek.blogspot.ru/ Windows Must Die
Учебник по sed зеркало в github

Скоро придёт
Осень
Спасибо сказали:
Ответить