リンクチェッカー(Webのリンク切れ確認)
最終更新日:2006年04月12日
はじめに
概要
Webのリンク切れを確認するためにリンクチェッカーをいくるか使ってみたので整理しておく。
ここでは、
- Checkbot
- LinkChecker(Firefox拡張機能)
について詳細に説明する。
確認したリンクチェッカー
以下のツールを確認してみた。
サイトのリンクチェック
ページのリンクチェック
名称 |
環境 |
感想 |
LinkChecker |
Firefox拡張機能 |
Firefoxで表示しているページのリンクチェックを行い、結果を色分けして表示してくれる。 簡単にチェックできて見易いのでちょっとした確認には便利。 |
Checkbot のインストールと使用方法
サイトのリンクチェックツールである Checkbot の環境構築から使用方法までの説明。
必要な環境
Checkbot は Perl で書かれているので、Perl および以下の CPAN が必要
※ 一般的に、最新バージョンの使用を推奨
Perl のインストール
Perl のサイトや各OSのパッケージ配布サイトからパッケージを入手してインストールする。
CPAN のインストール
CPANモジュールの環境を設定後、cpan shell からインストール
# perl -MCPAN -e shell
cpan > install モジュール名
もしくは、モジュールのソースを入手して
$ perl Makefile.PL
$ make
$ make test
# make install
Checkbot のインストール
Checkbot のCPANモジュールを入手して展開後
$ perl Makefile.PL
$ make
# make install
文字化け対策
標準のままだとブラウザで表示した時に日本語が文字化けしてしまうので、Checkbot のソースをちょっと変更
$ cd /usr/local/scripts
$ diff checkbot checkbot.orig
936,937c936
< #print OUT "<?xml version=\"1.0\" encoding=\"ISO-8859-1\"?>\n";
< print OUT "<?xml version=\"1.0\"?>\n";
---
> print OUT "<?xml version=\"1.0\" encoding=\"ISO-8859-1\"?>\n";
1279,1280c1278
< #print SERVER "<?xml version=\"1.0\" encoding=\"ISO-8859-1\"?>\n";
< print SERVER "<?xml version=\"1.0\"?>\n";
---
> print SERVER "<?xml version=\"1.0\" encoding=\"ISO-8859-1\"?>\n";
以上で Checkbot の環境構築完了。
以下は Checkbot の使用方法の説明。
Checkbot のヘルプ
$ /usr/local/scripts/checkbot -h
Checkbot 1.77 command line options:
--cookies Accept cookies from the server
--debug Debugging mode: No pauses, stop after 25 links.
--file file Use file as basis for output file names.
--help Provide this message.
--mailto address Mail brief synopsis to address when done.
--noproxy domains Do not proxy requests to given domains.
--verbose Verbose mode: display many messages about progress.
--url url Start URL
--match match Check pages only if URL matches `match'
If no match is given, the start URL is used as a match
--exclude exclude Exclude pages if the URL matches 'exclude'
--filter regexp Run regexp on each URL found
--ignore ignore Ignore URLs matching 'ignore'
--suppress file Use contents of 'file' to suppress errors in output
--note note Include Note (e.g. URL to report) along with Mail message.
--proxy URL URL of proxy server for HTTP and FTP requests.
--internal-only Only check internal links, skip checking external links.
--sleep seconds Sleep this many seconds between requests (default 0)
--style url Reference the style sheet at this URL.
--timeout seconds Timeout for http requests in seconds (default 120)
--interval seconds Maximum time interval between updates (default 10800)
--dontwarn codes Do not write warnings for these HTTP response codes
--enable-virtual Use only virtual names, not IP numbers for servers
--language Specify 2-letter language code for language negotiation
Options --match, --exclude, and --ignore can take a perl regular expression
as their argument
Use 'perldoc checkbot' for more verbose documentation.
Checkbot WWW page : http://degraaff.org/checkbot/
Mail bugs and problems: checkbot@degraaff.org
Checkbot の使用例1
とりあえずチェックしてみるには、
$ /usr/local/scripts/checkbot http://www.check.site/
上記コマンドを実行すると、カレンドディレクトリに以下のファイルが出来る
ファイル名 |
内容 |
checkbot.html |
チェック結果のメインレポート |
checkbot-www.check.site.html |
http://www.check.site/ のチェック結果 |
Checkbot の使用例2
以下の条件を設定してチェック
- http://www.check.site/ 以下のリンクを再帰的に全てチェック
- http://www2.check.site/ で始まるリンクも再帰的にチェック(--match オプション)
- 内部リンクのみをチェックし、外部リンクはチェックしない(--internal-only オプション)
- 進行状況のメッセージを出力(--verbose オプション)
- http://192.168.1.1:3128 proxyサーバを通す(-proxy オプション)
- checkbot.css スタイルシートを使用(--style オプション)
- コマンド実行のメッセージを log.txt に全て落とし、バックグラウンドで実行する("> log.txt 2>&1 &")
コマンドの実行例
$ /usr/local/scripts/checkbot
--style checkbot.css
--proxy http://192.168.1.1:3128
--verbose
--internal-only
--match "^(http\:\/\/www2\.check\.site\/|http\:\/\/www\.check\.site\/)"
http://www.check.site/ > log.txt 2>&1 &
上記コマンドを実行すると、カレンドディレクトリに以下のファイルが出来る
ファイル名 |
内容 |
checkbot.html |
チェック結果のメインレポート |
checkbot-www.check.site.html |
http://www.check.site/ のチェック結果 |
checkbot-www2.check.site.html |
http://www2.check.site/ のチェック結果 |
log.txt |
checkbotコマンド実行時のメッセージ |
LinkChecker(Firefox拡張機能)
Firefox で表示しているページのリンクチェックを行う LinkChecker の説明。
LinkChecker のインストール
Firefox で
LinkChecker - Firefox link validator extension for web developers
にアクセスし、Firefoxの拡張機能としてインストールする。
LinkChecker の使用方法
Firefox でチェックしたいページを表示後、
- "ツール"メニューの"Check Page Links"を選択
- 右クリックしてコンテキストメニューから"Check Page Links"を選択
のどちらかを行う。
リンクチェックが始まり、チェックの進捗状況がステータスバーの右側に表示される。
チェックが完了したリンクから順番に色が変わって行く。
LinkChecker の結果表示
リンクチェックが完了したリンクは以下の色で識別される。
- 赤(red):リンク切れ
- 黄(yellow):フォワードやアクセス拒否
- 緑(green):正常なリンク
- 灰(gray):チェックしなかったリンク
Copyright (C) 2005-2006 SY. All rights reserved.