LINUX.ORG.RU

История изменений

Исправление Somebody, (текущая версия) :

Удобнее аддоном Save Page WE. Составляешь список страниц сайта (эту работу может выполнить всё тот же wget), потом закидываешь его в настройки аддона - он качает. Каждую страницу перед скачиванием прокручивает до конца, заставляя загрузиться динамический контент. Когда все страницы скачаны - нужно починить гиперссылки (заменить их на локальные), это можно сделать скриптом на Python (ChatGPT такой тебе напишет, если сам не знаешь как/нет времени/просто лень).

«Как страшно жить!» © А уж как сложно... :))

Много лет использовал wget:

wget -r -k -l 7 -p -E -nc -np \
   --user-agent="Mozilla/5.0 (compatible; Konqueror/3.0.0/10; Linux)" ${1}

А если надо скрипты, вот bash-скрипт:

#!/bin/bash
#
#   siteget - use wget to retrieve a website
#   siteget - использование wget для закачки сайтов
#
if [ "$#" -ne "1" ]
then
   echo ""
   echo "Формат команды: $(basename ${0}) <url>"
   echo ""
   echo "Загрузка сайтов из интернета с использованием программы wget."
   echo "Несмотря на то, что данный скрипт вызывается простым способом,"
   echo "он использует целый ряд опций программы wget."
   echo "Вам необходимо указать только один параметр:"
   echo "адрес загружаемого сайта (url) самого высокого уровня."
   echo ""
   echo "Например: siteget www.bible-mda.ru"
   echo ""
   exit 1
fi

# --mirror gives infinite recursion, follows links ...
# --convert-links converts links for local viewing
# --no-verbose is a relatively quiet (but not silent) mode
# --no-parent won't traverse up the tree - don't know how this combines with
#    "page-requisites," but I hope the latter wins ... (seems to work well)
# --page-requisites get images (inline OR external) for local viewing
# --user-agent sets a user agent string because some sites send empty pages if
#    they don't like wget, so I use the string for what I'll be viewing with
#
#wget --mirror --convert-links  --no-parent --page-requisites \
wget -r -k -l 7 -p -E -nc -np \
   --user-agent="Mozilla/5.0 (compatible; Konqueror/3.0.0/10; Linux)" ${1}

P.S. Не моё. «честно стырил» когда-то на просторах интернета... :)

Работал скрипт отлично, а сейчас просто мне незачем «сайты грабить»... :))

Исходная версия Somebody, :

Удобнее аддоном Save Page WE. Составляешь список страниц сайта (эту работу может выполнить всё тот же wget), потом закидываешь его в настройки аддона - он качает. Каждую страницу перед скачиванием прокручивает до конца, заставляя загрузиться динамический контент. Когда все страницы скачаны - нужно починить гиперссылки (заменить их на локальные), это можно сделать скриптом на Python (ChatGPT такой тебе напишет, если сам не знаешь как/нет времени/просто лень).

«Как страшно жить!» © А уж как сложно... :))

Много лет использовал wget:

wget -r -k -l 7 -p -E -nc -np \
   --user-agent="Mozilla/5.0 (compatible; Konqueror/3.0.0/10; Linux)" ${1}

А если надо скрипты, вот bash-скрипт:

#!/bin/bash
#
#   siteget - use wget to retrieve a website
#   siteget - использование wget для закачки сайтов
#
if [ "$#" -ne "1" ]
then
   echo ""
   echo "Формат команды: $(basename ${0}) <url>"
   echo ""
   echo "Загрузка сайтов из интернета с использованием программы wget."
   echo "Несмотря на то, что данный скрипт вызывается простым способом,"
   echo "он использует целый ряд опций программы wget."
   echo "Вам необходимо указать только один параметр:"
   echo "адрес загружаемого сайта (url) самого высокого уровня."
   echo ""
   echo "Например: siteget www.bible-mda.ru"
   echo ""
   exit 1
fi

# --mirror gives infinite recursion, follows links ...
# --convert-links converts links for local viewing
# --no-verbose is a relatively quiet (but not silent) mode
# --no-parent won't traverse up the tree - don't know how this combines with
#    "page-requisites," but I hope the latter wins ... (seems to work well)
# --page-requisites get images (inline OR external) for local viewing
# --user-agent sets a user agent string because some sites send empty pages if
#    they don't like wget, so I use the string for what I'll be viewing with
#
#wget --mirror --convert-links  --no-parent --page-requisites \
wget -r -k -l 7 -p -E -nc -np \
   --user-agent="Mozilla/5.0 (compatible; Konqueror/3.0.0/10; Linux)" ${1}
P.S. Не моё. «честно стырил"когда-то на просторах интеренета... :) Работал скрипт отлично, а сейчас просто мне незачем „сайты грабить“... :))