ネットワーク - リンクチェック - LinkChecker
- 1. 能書き
- 2. ports
- 3. コンフィグレーションファイルの記述
1. 能書き
しばらく Windows 版をクライアントで使用していましたが、結構時間がかかります。
調べたら、ports に存在しているので、自前で動作させるようにしました。
2. ports
プロンプト略
cd /usr/ports/www/linkchecker
make
make install
ここからいささかややこしいのですが。
linkchecker を実行するときに python のバージョン 2.2.0 以上が必要になります。
2017年4月24日現在の ports 上では、python のバージョンは 2.7.13_3 なのですが・・・。
linkchecker は、2.7.13_3 を 2.2.0 以上と認識してくれません。
さらに 2.10 以上も 2.2.0 以上と認識してくれません。
複雑でかつおバカな事情なのですが、それはさておいて、バージョン 2.2.9 の python がどうしても必要になりますので、以下の手順でインストールします。
まずは python 専用のインストーラをインストールします。
プロンプト略
cd /usr/ports/devel/py-pip
make
make install
インストール後にコマンドプロンプトより以下のコマンドで python 2.9 をインストールします。
> pip install requests==2.9
以下は実際にインストールしたときに表示されたものです
Collecting requests==2.9
Using cached requests-2.9.0-py2.py3-none-any.whl
Installing collected packages: requests
Found existing installation: requests 2.11.1
Uninstalling requests-2.11.1:
Successfully uninstalled requests-2.11.1
Successfully installed requests-2.9.0
これで準備完了となります。
3. コンフィグレーションファイルの記述
コマンドのオプションで細かく設定することも可能なのですが、いちいち打つのは非常に面倒です。
コンフィグレーションファイルは、使用するユーザの
~/.linkchecker/linkcheckerrc
になります。
以下、変種する箇所を書いていきます。
#fileoutput = text, html, gml, sql
の箇所の先頭の # を削除して有効化し、出力形式を決めます。
出力形式は、上記掲載のように4つの中から選べます。(わたしは gml という形式をよう知らんのですが・・・)
例えば、html 形式で出力したいならば
fileoutput = html
以下、html 形式で出力する体で書いていきますが・・・。
[html] タグの
#filename=linkchecker-out.html
の箇所を有効化して、出力したいディレクトリ名、ファイル名を記述します。
同様に [html] タグの
#parts=all
の箇所を有効化します。
これは、コンテンツタイプとして何を調べるのかというものらしく、all にしておけば、とりあえず、どんなコンテンツタイプのものでも調べてくれるようです。
[checking] タグで
#threads=100
#recursionlevel=1
を有効化して、適切な値を設定します。
「threads」は、実行時に動作するスレッド数です。
何度か動かして top コマンドで CPU やメモリの使用率をモニタして、適切な値にチューニングします。
「recursionlevel」は、指定した URL を再帰的に調べていくときのネストの深さを指定します。
ここは、そのサイトの階層の深さに合わせて設定します。
|
|