群馬大学 | 医学部 | サイトトップ
Antenna script
最終更新:
2004年 12月 29日 (水曜日) 16時53分
- 概要
- perlでtelnetを使う練習も兼ねて作った簡単なアンテナスクリプト。
- perl5.8以降が必要
- 他に必要なモジュール
- (1) Net::Telnetモジュール:ringサーバのCPANミラーのNetモジュールディレクトリからNet::Telnetのtarball(バージョン3.03で動作確認)をダウンロードして展開し,perl Makefile.PL; make; make test; make installでできる。または,展開してできるtelnet.pmをperlをインストールしたディレクトリのlib¥Netにコピーするだけでも機能する(たぶん)。
- データファイルの形式
- 生成するhtmlファイルの先頭部分に当たるファイル(スクリプト内ではroutine.headと指定されている)と末尾部分に当たるファイル(同様にroutine.foot)は,htmlとして正しければ自由に作っていい。
- チェックするサイトのデータ(スクリプト内ではroutine.datと指定されている)は,ID,URL,TYPE,表示名,前回アクセス時の応答,最終更新確認日時をタブで区切って,1行が1サイトになるように指定する。
- IDは現状では未使用なので何でもいい。
- URLはhttp://aaa.bbb.cc/index.htmlのような形で指定すること。最後がファイルでない場合は,必ず"/"で終わること(トップディレクトリを指定する場合は,例えば,http://phi.med.gunma-u.ac.jp//のように,"//"で終わる必要がある)。https:には非対応。
- TYPEはHEADかGETのどちらかを指定。
- 表示名は自由。但しタブを含んではいけない。
- 前回アクセス時の応答は,HEADの場合はLast-Modified: 文字列,GETの場合はCRC32。前回データとの比較により更新チェックに用いられる。最初は空にしておく。
- 最終更新確認日時も最初は空にしておく。並べかえに利用される。
- ダウンロード
- ▼sant.zip (version 1.8)(7,172 bytes; 展開すると中澤の常用ブックマークリスト用のデータとsimple antennaスクリプトができる)
- バージョンアップ履歴:
- 1.2: crc計算にはArchive::Zipを使う
- 1.3: GET動作を改善
- 1.4: Timeout時の動作がデフォルトのdieだったのをreturnに設定し,反応しないサイトがあっても止まらないようにした。
- 1.5: proxy対応
- 1.6: proxyサーバのキャッシュを無効化したつもり。HTTP/1.1リクエストにCache-Control: no-cacheを含めた。
- 1.7: GETした文字列の中に更新日時を表すものがないかチェックするオプションをつけたつもりなのだが,うまく動作しない。とりあえずHEAD/GETだけ使う分には従来どおりの動作をするが……
- 1.8: GETで最後まで読めていなかったバグをfixした。もしかすると,これで1.7で残った問題も解消したかもしれないが未検証。
リンクと引用について