9月 08

WCGクローラ動いてます

たまにおかしな動作をしますが、スクリプトがおかしいというか、
対策をちゃんと施してないというか、取得先の問題のようです。
データ自体を問題なく確保できれば、ぜんぜん問題ないのですが、
こればかりはどうしようもないでしょう。
にっぽー@newsVIP氏のデータをお借りすることに成って、若干修正しました。
今のクロールは、cronから14:30に実行させています。
昔のように常駐ではなく、処理が終われば終了します。
そのため、監視ログはスッキリしていると思います。

日報サイトも分散が始まったようですし、なにかしら日報できるようになるのかもしれません。
たまに迷惑をおかけしますが、それも404の味ということで・・・
(念のため断っておきますが、業務として請負ったものはちゃんと対策してます)

5月 08

WCG日報スクリプト配布

WCGとは、World Community Gridの略で、
分散コンピューティングBOINCの医療系プロジェクトの名称。
WCGに参加すると、タンパク質の構造予測や解析、新薬の開発に携わることになります。
2007年4月27日に突然UD(United Devices)が終了し、
UDの最強チーム「Team 2ch」のユーザーが移動(後に難民の大移動と呼ばれる)したため、
WCGの弱小チーム「Team 2ch」はその日を境に、強大なチームへと変貌する。
当サイトの管理者である404は、日報支援サイトとしてWCGTeam 2ch:404を運営しており、
このページでは、そのサイトで使用している日報スクリプトの公開を行っております。

WCG-LOGO

日報スクリプト

日報スクリプトは、割と高度な処理が行われています。
まず、WCGの更新を監視し、情報の取得と解析、そして計算が行われます。
これら一連の処理は、レンタルサーバーで実行することは難しいでしょう。
自宅サーバーを公開できるスキルと、Perlのモジュールを追加できる知識が求められます。

ファイル構成

folder wcg-team2ch
├ while_wcg.pl – 繰り返しcheck_wcg.plを起動するためのもの
| └ check_wcg.pl – コア
|   ├ require.pl – いろいろなライブラリ
|   └ calender.pl – カレンダーライブラリ
folder public_html – 公開用ディレクトリ(httpサーバールート)
├ stat.cgi – 日報CGI
| ├ menu.cgi – メニューAjax
| ├ stat.js – JavaScript
| └ menu.js – JavaScript
folder grp – 板名(自動生成)
│ ├ 801.txt
│ ├ ainotae.txt
│ └(以下、更新毎に変化)
folder log – 更新情報
│ ├ 20080523_board.tsv
│ ├ 20080523_member.tsv
│ ├ 20080523_team.tsv
│ ├ 20080524_country.tsv
│ ├ board_ame.txt
│ ├ board_points.tsv
│ ├ board_result.tsv
│ ├ country_point.tsv
│ ├ file.txt
│ ├ team_points.tsv
│ └ (以下、更新毎に増殖)
folder msg – check_wcg.pl活動ログ
│ ├ 20080523_act.log
│ └(以下、更新毎に増殖)
folder temp – テンポラリ
| ├ folder id – ID別
| | ├ 0B5RSMBR9N1.xml
| | ├ 0BCGCWNDR1.xml
| | └ (以下、更新毎に変化)
│ ├ country_member.tsv
│ ├ country_point.tsv
│ ├ country_result.txt
│ ├ country_time.txt
│ ├ member_total.tsv
│ ├ member_total.txt
│ ├ team_id.tsv
│ └(更新毎に変化)
folder xml – テンポラリ
│ ├ %2d777%2d%40slot.xml
│ ├ %2d+silverfox+%2d.xml
| └ (以下、更新毎に変化)
folder zip – 書庫(tmpl書庫ファイル)
├ 20080523_member.zip
├ 20080523_team.zip
├ 20080524_country.zip
└ (以下、更新毎に増殖)

必須モジュール

公開しているスクリプトは、Perl5.8.8での動作を確認しています。
モジュールは記憶違いにより、追加(インストール)が必要だったり、
ビルドやバージョンの違い(Perl5.10もあり)で標準モジュールかもしれません。
モジュールの追加方法は、Google先生または404へ直接聞いてください。

  • Archive::Zip – 追加
  • CGI – 標準
  • Encode – 要upgrade
  • File::Path – 追加
  • HTML::AA – 追加
  • HTTP::Request – 標準
  • HTTP::Request::Common – 標準
  • HTTP::Cookies -標準
  • HTTP::Date – 追加
  • HTML::Entities
  • HTML::Template – 追加
  • Jcode – 要upgrade
  • LWP::UserAgent – 標準
  • XML::Simple – 追加

動作の流れ

ソースを見てください…。m(_ _)m

稼動サイト

WCG-Team2ch 404

ダウンロード

更新履歴

2008-05-24
サイト移動に伴うHTMLの加筆
(旧URI:[廃止])
2008年5月22日バージョン公開
2007-07-25
公開