Поиск по сайту:

Разместите свой собственный интернет-архив с помощью ArchiveBox

Архивируйте веб-сайты с помощью ArchiveBox в Linux

В этом руководстве объясняется, что такое ArchiveBox и как установить ArchiveBox в Linux и, наконец, как разместить собственный личный интернет-архив с помощью ArchiveBox.

Отказ от ответственности: Вся информация, представленная здесь, предназначена исключительно для образовательных целей. Ни автор, ни команда OSTechNix не несут ответственности за любой ущерб, нанесенный целевым сайтам, например, за злоупотребление пропускной способностью или загрузку защищенного авторским правом и незаконного контента.

Введение

Wayback Machine Интернет-архива (IAWM) — крупнейший и старейший общедоступный веб-архив.

На момент написания этой статьи Internet Archive Wayback Machine (archive.org) захватил более 778 миллиардов веб-страниц и сохранил примерно петабайты данных.

Большинство пользователей приходят на Archive.org, потому что не находят запрошенные страницы в сети. Около 65 % запрошенных заархивированных страниц больше не существуют в сети. Благодаря Archive.org мы по-прежнему можем получать доступ к старым и несуществующим веб-сайтам и просматривать их.

Хотя archive.org вполне способен сохранить множество веб-ресурсов, некоторые из них вы, возможно, захотите разместить на своем сервере. Здесь на помощь приходит ArchiveBox.

Что такое ArchiveBox?

ArchiveBox — это бесплатное и мощное решение для архивирования в Интернете с открытым исходным кодом, позволяющее собирать, сохранять ваши любимые веб-сайты и просматривать или читать их в автономном режиме.

Вы можете передать ему один URL-адрес или запланировать импорт из закладок вашего браузера, истории браузера, обычного текста, HTML, уценки, таких каналов, как RSS, служб закладок, таких как Pocket/Pinboard, и многого другого!

ArchiveBox сохраняет снимки заданных URL-адресов в нескольких выходных форматах, таких как HTML, JSON, PDF, скриншоты PNG, WARC и других!

По умолчанию ArchiveBox сохраняет все захваченные страницы на archive.org для обеспечения избыточности, однако вы можете отключить его, если вам нужен режим локального кэширования.

ArchiveBox доступен в виде инструмента командной строки, веб-приложения и настольного приложения. Он кроссплатформенный и поддерживает GNU/Linux, macOS и Windows. ArchiveBox написан на Python, а исходный код доступен на GitHub.

Установите ArchiveBox в Linux

ArchiveBox можно установить несколькими способами. Мы можем установить ArchiveBox с помощью Docker, Docker-compose и сценария автоматической установки.

Прежде всего убедитесь, что вы установили Docker и Docker-compose, как показано в любой из следующих ссылок.

  • Установить Docker Engine и Docker Compose в AlmaLinux, CentOS, Rocky Linux
  • Как установить Docker Engine и Docker Compose в Ubuntu 22.04 LTS
  • Настройка Docker и Docker Compose с помощью DockSTARTer

Установите ArchiveBox с помощью Docker-compose.

Официально рекомендуемый способ установки ArchiveBox — использовать Docker-compose.

После установки Docker-compose создайте каталог для ArchiveBox и загрузите в него файл docker-compose.yml:

mkdir ~/archivebox && cd ~/archivebox
curl -O 'https://raw.githubusercontent.com/ArchiveBox/ArchiveBox/master/docker-compose.yml'

Запустите первоначальную настройку и создайте пользователя-администратора, выполнив следующую команду:

docker-compose run archivebox init --setup

Наконец, запустите сервер ArchiveBox с помощью команды:

docker-compose up

Теперь вы можете войти в панель администратора веб-интерфейса ArchiveBox по URL-адресу http://127.0.0.1:8000.

Вход в веб-интерфейс совершенно необязателен. Вы также можете сделать все из командной строки.

Установите ArchiveBox с помощью Docker

После установки Docker создайте каталог для ArchiveBox и загрузите в него файл docker-compose.yml:

mkdir ~/archivebox && cd ~/archivebox
docker run -v $PWD:/data -it archivebox/archivebox init --setup

Запустите первоначальную настройку и создайте пользователя-администратора, выполнив следующую команду:

docker-compose run archivebox init --setup

Наконец, запустите экземпляр ArchiveBox Docker с помощью команды:

docker run -v $PWD:/data -p 8000:8000 archivebox/archivebox

Теперь вы можете войти в панель администратора веб-интерфейса ArchiveBox по URL-адресу http://127.0.0.1:8000.

Вход в веб-интерфейс совершенно необязателен. Вы также можете сделать все из командной строки.

Установите ArchiveBox с помощью сценария автоматической установки.

Сначала установите Docker. Это необязательно, но рекомендуется.

Запустите сценарий автоматической настройки с помощью команды:

curl -sSL 'https://get.archivebox.io' | sh

Это автоматически добавит репозиторий ArchiveBox и установит ArchiveBox со всеми необходимыми зависимостями.

ArchiveBox будет установлен в каталог с именем «archivebox» в вашем текущем рабочем каталоге.

Перейдите в каталог archivebox и инициализируйте его с помощью команд:

cd ~/archivebox
archivebox init --setup

Вам будет предложено создать нового пользователя-администратора для веб-интерфейса.

[...]
[+] Creating new admin user for the Web UI...
Username (leave blank to use 'ostechnix'): 
Email address: 
Password: 
Password (again): 
This password is too short. It must contain at least 8 characters.
Bypass password validation and create user anyway? [y/N]: y
Superuser created successfully.
[...]

Инициализировать ArchiveBox

Наконец, запустите сервер ArchiveBox с помощью команды:

archivebox server 0.0.0.0:8000

Установите ArchiveBox с помощью PiP

Установите Python версии 3.7 или новейшую и Node версии 14 или новее, как показано по ссылкам ниже.

  • Как управлять пакетами Python с помощью PIP
  • Как установить NodeJS в Linux

Установите ArchiveBox с помощью pip3:

pip3 install archivebox

Создайте каталог для ArchiveBox и инициализируйте его с помощью команд:

mkdir ~/archivebox && cd ~/archivebox
archivebox init --setup

Наконец, запустите сервер ArchiveBox с помощью команды:

archivebox server 0.0.0.0:8000

Теперь вы можете получить доступ к веб-интерфейсу ArchiveBox по URL-адресу http://127.0.0.1:8000.

Установите ArchiveBox из репозитория Apt.

Docker и Docker-compose не требуются, если вы решили установить ArchiveBox из репозитория.

Сначала добавьте репозиторий ArchiveBox.

В Убунту 20.04:

sudo apt install software-properties-common
sudo add-apt-repository -u ppa:archivebox/archivebox

В Ubuntu 22/10 и последних версиях, Ubuntu 19.10 и более ранних версиях и других системах на базе Debian:

echo "deb http://ppa.launchpad.net/archivebox/archivebox/ubuntu focal main" | sudo tee /etc/apt/sources.list.d/archivebox.list
sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-keys C258F79DCC02E369
sudo apt update

После добавления соответствующего репозитория установите ArchiveBox в системах на базе Ubuntu и Debian, используя команду:

sudo apt install archivebox

Apt предоставляет только сломанную старую версию Django, поэтому нам также необходимо установить ArchiveBox с помощью менеджера пакетов PiP.

sudo python3 -m pip install --upgrade --ignore-installed archivebox

Создайте каталог для ArchiveBox и инициализируйте его:

mkdir ~/archivebox && cd ~/archivebox
archivebox init --setup

Наконец, запустите сервер ArchiveBox с помощью команды:

archivebox server 0.0.0.0:8000

Теперь вы можете получить доступ к веб-интерфейсу ArchiveBox по URL-адресу http://127.0.0.1:8000.

Чтобы просмотреть версию ArchiveBox, запустите:

archivebox --version

Чтобы просмотреть раздел справки ArchiveBox, запустите:

archivebox help

Как архивировать веб-сайты с помощью ArchiveBox?

ArchiveBox можно использовать для архивирования URL-адресов либо из командной строки, либо через веб-интерфейс.

Чтобы заархивировать один URL-адрес из командной строки, просто передайте его в качестве аргумента, как показано ниже:

archivebox add https://example.com/some/page

Или,

echo https://example.com/some/page | archivebox add

Пример:

archivebox add https://github.com/ArchiveBox/ArchiveBox

Архивируйте сайты с помощью ArchiveBox

Чтобы заархивировать список URL-адресов из текстового файла, запустите:

archivebox add < archive_urls.txt

Или,

cat archive_urls.txt.txt | archivebox add

Или,

archivebox add ~/Downloads/browser_bookmarks.html

Или,

archivebox add ~/Downloads/pinboard_bookmarks.json

Или,

curl https://getpocket.com/users/USERNAME/feed/all | archivebox add

Вы также можете добавить --length=1 к любой из приведенных выше команд, чтобы рекурсивно загружать URL-адреса и все URL-адреса на расстоянии одного шага.

archivebox add --depth=1 < ~/Downloads/bookmarks_export.html

Распечатать статистику сбора архива

После архивирования URL-адресов вы можете просмотреть информацию и статистику о коллекции архива с помощью команды:

archivebox status

Эта команда просканирует каталоги архивных данных и отобразит индексированные ссылки, индексированные ссылки, которые заархивированы или разархивированы, а также каталоги, существующие в папке архива.

Распечатать статистику сбора архива

Вы также можете перечислить каталоги данных ссылок по статусу (например, проиндексированы, повреждены, заархивированы и т. д.), используя эту команду:

archivebox list --status= <status>

Например, чтобы просмотреть все каталоги архивных данных, выполните:

archivebox list --status=archived

Пример вывода:

[i] [2023-01-05 12:11:06] ArchiveBox v0.6.2: archivebox list --status=archived
    > /home/ostechnix/archivebox

/home/ostechnix/archivebox/archive/1672909053.266666 https://github.com/ArchiveBox/ArchiveBox "GitHub - ArchiveBox/ArchiveBox: ? Open source self-hosted web archiving. Takes URLs/browser history/bookmarks/Pocket/Pinboard/etc., saves HTML, JS, PDFs, media, and more..."

Как вы видите в приведенном выше выводе, я заархивировал сам репозиторий ArchiveBox GitHub.

Вы можете дополнительно просмотреть загруженное содержимое этой папки архива с помощью команды ls:

ls /home/ostechnix/archivebox/archive/1672909053.266666/
avatars.githubusercontent.com  git                      headers.json  media                      readability
camo.githubusercontent.com     github.com               index.html    mercury                    user-images.githubusercontent.com
favicon.ico                    github.githubassets.com  index.json    raw.githubusercontent.com  warc

Сохранить архивы в новом каталоге

Как упоминалось выше в шагах установки, мы храним архивы в каталоге ~/archivebox. Вы также можете создать новый каталог в другом месте и инициализировать его для хранения архивных коллекций.

mkdir my_new_archive; cd my_new_archive/
archivebox init

Теперь начните архивировать URL-адреса, как описано в предыдущем разделе.

Таким образом, вы можете создавать разные коллекции архивов и хранить их в разных каталогах.

Доступ к веб-интерфейсу ArchiveBox

Чтобы получить доступ к веб-интерфейсу администратора ArchiveBox, сначала запустите сервер ArchiveBox, используя следующую команду:

archivebox server 0.0.0.0:8000

Теперь вы можете получить доступ к веб-интерфейсу ArchiveBox по URL-адресу http://127.0.0.1:8000 или http://IP-адрес:8000.

Доступ к веб-интерфейсу ArchiveBox

Как видите, я заархивировал сам официальный репозиторий ArchiveBox на GitHub. Просто нажмите на архив, чтобы открыть его.

Вы увидите, что архив сохраняется в разных выходных форматах. Просто нажмите на любой выходной формат, чтобы открыть соответствующий файл. Я щелкнул ссылку Wget > HTML, и ArchiveBox отобразил заархивированное содержимое в том же окне. Вы также можете открыть его в новой вкладке или окне браузера.

Открыть архив

Теперь вы можете прочитать URL-адрес в автономном режиме. Этот архив останется сохраненным в вашей локальной системе, пока вы его не удалите.

Чтобы остановить сервер ArchiveBox, вернитесь в окно терминала, в котором вы его запустили, и нажмите CTRL+C.

Добавить новый архив

Нажмите кнопку ВОЙТИ в веб-интерфейсе. Войдите в систему, используя имя пользователя и пароль, которые вы создали при инициализации ArchiveBox на предыдущих шагах. Обратитесь к разделу установки, чтобы узнать, как инициализировать ArchiveBox.

Войдите в веб-интерфейс ArchiveBox

Внимание! Обратите внимание, что пользователь-администратор создается при инициализации ArchiveBox. Если по какой-либо причине он не создан, перейдите в папку архива, а затем запустите эту команду, чтобы создать пользователя-администратора и установить для него пароль.

archivebox manage createsuperuser

Нажмите кнопку ДОБАВИТЬ и введите URL-адреса, которые нужно заархивировать, один за другим. Выберите формат URL-адресов, глубину архива (например, 0 или 1) и нажмите кнопку Добавить URL-адреса и архив.

Теперь начнется процесс архивирования.

Архивирование веб-сайтов через ArchiveBox WebUI

Вы можете безопасно покинуть или закрыть эту страницу, поскольку процесс архивирования будет продолжаться в фоновом режиме.

После того как URL-адрес заархивирован, перейдите к СНИМКАМ, чтобы просмотреть список заархивированных страниц.

Просмотр снимков архива в ArchiveBox WebUI

Заключение

ArchiveBox — это идеальное и многообещающее решение для самостоятельного размещения вашего личного Интернет-архива для сохранения веб-страниц до того, как они будут отредактированы или полностью удалены.

Я прошу пользователей использовать эту услугу честно и законно. Пожалуйста, не используйте это для злоупотребления пропускной способностью, очистки сайтов конкурентов или загрузки защищенного авторским правом и незаконного контента.

Ресурсы:

  • Веб-сайт ArchiveBox
  • Репозиторий ArchiveBox GtiHub

Статьи по данной тематике

Все права защищены. © Linux-Terminal.com • 2023-2025