重要 : Creative Commons Attribution-ShareAlike 3.0 への移行を計画しています。
承諾・拒否の意思表示はライセンス・アップグレードのページで受付中です。
承諾・拒否の意思表示はライセンス・アップグレードのページで受付中です。
Wikitravel:スクリプトの基本方針
出典: Wikitravel
スクリプトとは、人間の手を介さずに一定の速度で過不足無くウィキトラベルのページや画像を変更するプログラムです。 -- 多くのコンピュータ関係の作業と同じ様に、自動化されたスクリプトを利用することはウィキトラベルの編集に役立ちます。このページでは、ウィキトラベルで動かすスクリプトに関して望まれることや望まれないこと、作り方などについての基本方針を述べます。
[編集] スクリプトの良い点と悪い点
スクリプトには次のような良い点があります。
- 反復作業 — スクリプトを使うことによって反復作業はとても容易になります。手作業でやならければならなかった仕事を、他の誰か或いは大勢の人達に代わってプログラムがやります。
- 間違いの無い作業 — 良く作られたスクリプトは日常的なタイプミスやスペルミス、その他の間違いを起こすことはありません。スクリプトはかなりよく何度も繰り返して同じ仕事をすることでしょう。
しかし、スクリプトには次のような悪い点があります。
- 予期せぬ結果 — もしあなたのスクリプトにバグがあった場合、たくさんのページを台無しにした上、私達は手作業でそれらを訂正しなければならないか、或いは後始末をするために別のスクリプトを作成しなければなりません。
- 一方的な編集 — スクリプトの作成者は望んだ通りのやり方でたくさんのページを編集できます。もし他の誰かが別のやり方でそれらを編集したい場合、彼らは別のスクリプトを作成しなければなりません。
- 資源の占有 — 手作業でページを編集する人達によって使われるはずのサーバーの回線容量やその他の処理能力が、ボット(スクリプト)によって占有されてしまいます。
- 不必要なスクリプト — 人々がスクリプトを作って対応したいと考える問題の多くは不必要なものです。ある人がスクリプトを作成し、デバッグし、実行するためには時間と労力を費やさなければなりませんが、同じ作業を手作業で行うことにより時間と労力を多くの人達に分散することもできます。これなら一方的な編集にはなりませんし、作業も実際にずっと速いかも知れません。
- 新しい知識が無い — 概してスクリプトはウィキトラベル上にある知識の書式や表示を単に再調整するだけです。スクリプトが外部のデータベースから情報を取り込む場合を除いて、新しい知識が追加されることはありません。私達の時間と労力は実際の旅行情報をガイドブックへ追加することに費やした方がマシでしょう。
[編集] スクリプトの方針
前述のような理由から、私達はウィキトラベルでのスクリプト実行に関して、以下のようなルールを定めています。
- スクリプトはウィキトラベルの管理者によって承認されなければなりません。ウィキトラベルで実行するスクリプトを作成する場合、そのスクリプトの名前と理由をスクリプト登録依頼に記入して下さい。理由については、なぜ必要なのか、なぜ手作業で行えないのか、そしてそのスクリプトが何を行うのかを説明して下さい。7日間以内に2人の管理者が賛成し、かつ、同じ期間内に反対が無ければ、そのスクリプトを実行できます。
- スクリプトはウィキトラベルの基本方針とガイドライン及び スタイルマニュアルに従わなければなりません。例えば、サイト上にあるすべてのレストラン情報の書式を設定し直すスクリプトの場合は、他の書式ではなく指定の書式通りにしなければなりません。もし他の書式を使った方が良いと思うのであれば、基本方針或いはスタイルマニュアル上のガイドラインを先に変更して下さい。
- 個々のスクリプトにはそれぞれのアカウントを取得し、そのアカウントを使って実行して下さい。このサイトに対する全ての編集は、このアカウントによって識別される必要があります。
- スクリプトが行うことをそのスクリプトのアカウントのユーザーページに記述しなければなりません。
- スクリプトが「一つ一つの編集」を行う前に、[[Wikitravel:スクリプトの基本方針/Run]]と[[利用者:スクリプトの名前/Run]]の2つのページを確認するようにしなければなりません。スクリプトによる編集が保存される時点で両方のページに yes という文字列だけが含まれていることを確認する仕組みを、スクリプトに組み込まなければならないということです。こうすることによって、ウィキトラベラーは誰でもそれらのページの中身を書き換えるだけで、前者であればスクリプトを全て停止、後者であればスクリプトを個別に停止することができます。
- スクリプトによる編集の速度は毎分1回以下にしなければなりません。こうすることで、スクリプトがウェブサーバーの処理能力を占有しないようにします。
- もし可能であれば、スクリプトは本物のサーバーで実行する前に、ウィキトラベルのテスト用サーバーで実行して下さい。(私達はこの目的のために本物のサーバーのデータを使ってテスト用サーバーを用意することができるかも知れません。)
[編集] 読み取り専用のプログラム
ページや画像を読み取るだけでサーバー上にあるものを変更しないプログラムについては、承認プロセスは必要有りません。しかし、これらのプログラムにも従わなければならないガイドラインがいくつかあります。
- 読み取り専用のスクリプトは必ずウィキトラベルの robots.txt ファイルを読み込み、その内容に従わなければなりません。(wget のような)ほとんどのプログラムは robots.txt ファイルを自動的に認識し、主要なスクリプト言語におけるHTTPクライアントのライブラリと同じ様に動きます。しかし、もしあなたが自分自身でプログラムを書いている場合は、詳細について"Standard for Robot Exclusion" を確認して下さい。
- 読み取り専用のスクリプトは robots.txt ファイルの標準外の項目 Crawl-Delay を認識するようにすべきです。もしそのようにできないのであれば、スクリプトはページや画像の読み取りを30秒よりも短い間隔で行ってはいけません。
[編集] 非対応スクリプト
上記の要件に従わないスクリプトは、たとえそれが無害でも、ウィキトラベルのページの読み取りや編集を行うとブロックされます。

