История изменений
Исправление 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}