ArchiveboxをUbuntuでセットアップ

この記事は旧ブログから移転した記事です。

Dockerでもできますが、今回はgitで拾ってきます。
最初に忘れずに

sudo apt update

必要な環境(事前にインストールしてください)

git(apt installする)
wget(apt installする)
pip(apt installする)
chrome(公式サイトからダウンロード&インストール)
nginx(apt installする)
curl(無くてもOK/apt installする)

ArchiveBoxのインストール

git clone https://github.com/pirate/ArchiveBox

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

※注意:上記2つ目のコマンド実行時に「ERROR: launchpadlib 1.10.13 requires testresources, which is not installed.」というエラーが出ることがあります。違うライブラリですがインストールの際に同様のエラーが出た方の記事があるので参考にしてみてください。

pip install で "launchpadlib requires testresources, which is not installed." と表示された時の対処法 - Qiita
Cloud Speech-to-Text API を使うために、必要なものをpipでインストールしようとした時に発生したエラーに対して、どのように対処したのかを書いてみた。TL;DRsudo a…
mkdir archivebox (フォルダの作成)

cd archivebox (ディレクトリ移動)

archivebox init --setup

セットアップの為に新規でフォルダを作る必要があります(作らないとエラーが出る)。作成したら、そのファイルに移動してセットアップを実行します。

ユーザーネームやメールアドレスやパスワードの設定が出てくるので設定してください。パスワード以外はエンターで設定をスキップすることもできます。

※注意:設定後こんなエラーが出ることがあります。

[X] You must first install node using your system package manager
    Hint: curl -sL https://deb.nodesource.com/setup_15.x | sudo -E bash -
          or to disable all node-based modules run: archivebox config --set USE_NODE=False

一応、無視しても動きます。

起動

nginxを起動→ArchiveBoxを起動 の手順。

sudo systemctl start nginx (nginxの起動)

cd archivebox (先ほど新規作成したフォルダにチェンジディレクトリ)

archivebox server 0.0.0.0:8000

アクセスの仕方

ブラウザを起動して、http://localhost:8000にアクセスしてみます。するとアーカイブしたページが一覧表示されるページに辿り着けます。

ページのアーカイブ

先ほどのページからGUI操作でアーカイブすることはできないので、コマンド操作に戻ります。

cd archivebox (先ほど新規作成したフォルダにチェンジディレクトリ)

archivebox add 'アーカイブしたいサイトのURL'

PDFやHTMLなど色々なフォーマットでアーカイブしてくれるのでちょっと時間がかかります。

アーカイブしたらブラウザに戻って先ほどのページをリロードしてみましょう。すると取得されたページがリストアップされていることが分かります。

ちなみに、curlのインストールなどを行っていない場合はアーカイブ中にエラーが出ますが、他のフォーマットで問題なくアーカイブできるので、お好みに合わせてどうぞ。

やっておいた方が良い設定(オプション)

デフォルト設定でページのアーカイブをすると自動的にarchive.orgにアップロードしてしまうので、全世界の人がアーカイブを見られるようになります。個人的な利用をしたい時にはちょっと面倒な設定なので、設定でarchive.orgにアップしないように設定しておきます。

(.confファイルを探して以下の「~~~」の部分を置き換えてください)

cd archivebox/~~~

sudo nano ~~~

nanoで編集画面を開いたら以下の内容を追記

SUBMIT_ARCHIVE_DOT_ORG=False

追記したら、「Ctrl + S」でセーブ→「Ctrl + X」で終了。

参考にしたサイト

GitHub - ArchiveBox/ArchiveBox: 🗃 Open source self-hosted web archiving. Takes URLs/browser history/bookmarks/Pocket/Pinboard/etc., saves HTML, JS, PDFs, media, and more...
🗃 Open source self-hosted web archiving. Takes URLs/browser history/bookmarks/Pocket/Pinboard/etc., saves HTML, JS, PDFs...
Ubuntu 20.04にNginxをインストールする方法 | DigitalOcean
Nginxは、世界で最も人気のあるWebサーバーの1つであり、インターネット上で最大かつ最もトラフィックの多いサイトのホスティングを担っています。このガイドでは、Ubuntu 20.04サーバーにNginxをインストールする方法について説明...