読者です 読者をやめる 読者になる 読者になる

wedataのダウンでAutoPagerizeが動かない(効かない)件

AutoPagerize

wedataが落ちているためAutoPagerizeが動かないという状態が年末から断続的に続いています。

追記(2009/01/09):wedataが復旧し、正常にSITEINFOを取得できるようになった模様です。これに伴い、http://ss-o.net/databases/AutoPagerize/items.json の中身は空の配列になっています。うちのミラーを使用したいという方は、 http://ss-o.net/json/wedataAutoPagerize.json のJSONを利用いただけます。静的ファイルでgzipにも対応しているので、wedataより軽いはずです。ただし、wedataとの時間差があり、callback指定(JSONP)もできません。どっちが良いか分からない場合はとにかく最新のAutoPagerizeを使っておけばOKです。

追記(2008/12/24 13:33):AutoPagerize0.0.34がリリースされました。21〜22日ぐらいまでは動いていたけど、それ以降動かなくなったという方は本体Scriptを0.0.34にアップデートすることで動くようになるはずです。以下はwedata復活前に新規インストールしたいケースなどに向いた情報です。

各所( http://pc11.2ch.net/test/read.cgi/software/1222372213/213 を初めに http://zapanet.info/blog/item/1480 など)で紹介されている通り、oAutoPagerize用に定期的に取得しているSITEINFOを臨時用のSITEINFOとして公開しています。wedataはすぐに復活するだろうと思っていたので、宣伝も説明も改めて書くまでもないだろうと思っていたのですが、wedataのダウン*1からだいぶ時間がたっているので改めてまとめておきます。

SITEINFOのバックアップ

http://ss-o.net/databases/AutoPagerize/items.json にwedataのSITEINFOをちょっとだけ加工した状態*2で置いてあります。これは前述の通りoAutoPagerize用に2時間置きにSITEINFOを取得している際の一時ファイルで、最新の状態に近いものです。
先の紹介記事にあるとおり、AutoPagerizeのソースのSITEINFO_IMPORT_URLSを書き換えて上記URLを加えれば、AutoPagerizeを利用できるようになります。

デフォルトのURLを残すべきか否か

一概には言えませんが、個人的にはデフォルトのURLはコメントアウトしておいてほしいと思います。
なぜなら、SITEINFO_IMPORT_URLSにあるURLが(今回のwedataのように)ステータスコードも返せない状況の場合、AutoPagerizeはページを開くたびにそのURLへリクエストを行ってしまうので、サーバー等に優しくないためです。
このあたりはGreasemonkeyAutoPagerizeなどの実装の問題と言えなくもないのですが、現状無駄なリクエストのために自身のブラウザも重くなるという現実もあるので、やはりコメントアウトをしておいたほうがよいと思います。
AutoPagerize0.0.34で上記打ち消し線の問題が改善され、wedataが落ちていた場合でも一日一回だけしかリクエストが飛ばないように改善されました。このため、デフォルトのURLはコメントアウトする必要はなく、そのまま残しておいて大丈夫です。

wedata復活後の対応

http://ss-o.net/databases/AutoPagerize/items.json はwedata復活後は中身を空にする予定です。これは、wedata.net(デフォルト)とss-o.net(バックアップ)の両方を参照している状態でwedataが復活して、バックアップの中身がそのままだとSITEINFOの数が2倍になってしまい、AutoPagerize非対応ページでの処理が2倍に増えてしまうのを防ぐためです。

つまり、デフォルトをコメントアウトした状態で、wedataが復活すると再度SITEINFO_IMPORT_URLSの書き換えを行う(もしくはAutoPagerizeをインストールし直す)必要があります。その点はご了承ください。

今後のバックアップ

http://ss-o.net/databases/AutoPagerize/items.json は今後もwedataが落ちた際に自動的にバックアップが作られるようにバッチを書き直しました。なので、SITEINFO_IMPORT_URLSにss-o.netのバックアップを残して置いて貰ってもOKです(wedataが健在ならただの静的な空ファイルなので、リソースは大したことありませんので)。まあ、AutoPagerizeのソースを直接書き換えるとアップデートした際に消えてしまいますが。id:swdyhにこのバックアップ用URLをデフォルトで入れてもらうというのもありかもしれません。ただ、それならばより堅牢なサーバーで提供したい*3ところですが。

インストールしたScriptのソースの確認とSITEINFO_IMPORT_URLSの編集方法

AutoPagerize質問・要望スレとか見ていると、初歩的なところからの説明が必要な人が割といるみたいなので、少し丁寧に書いてみます。

  1. Firefoxのウィンドウの右下に猿のアイコンがあるので、それを右クリックする(左クリックすると猿がグレーになってGreasemokeyが無効になる。もう一度クリックすれば有効になる)。
  2. メニューが出てきて、下から2番目に「ユーザスクリプトの管理」という項目があるのでそれをクリックする*4f:id:os0x:20081224102652j:image
  3. 「ユーザースクリプトの管理」ウィンドウが開くので、左側のScriptの一覧からAutoPagerizeを探す。
  4. 左側のAutoPagerizeが選択された状態で、左下の編集ボタンをクリック(有効にするの右隣)f:id:os0x:20081224110302j:image
  5. エディタを設定済みなら設定されたエディタでAutoPagerizeのソースが開く。エディタが設定されていない場合、ファイルを開くプログラムを選択する画面が開くので、メモ帳TeraPadなど、適当なテキストエディタ(メモ帳だと改行が繋がってしまうので、テキストエディタを使用するほうが良さそうです。)を選択してください。
  6. 31行目あたりに、var SITEINFO_IMPORT_URLS = [ とあり、その次の行に 'http://wedata.net/databases/AutoPagerize/items.json', とあるので、この行の最初に//とつけてコメントアウトする。その次の行に 'http://ss-o.net/databases/AutoPagerize/items.json', を加える。
var SITEINFO_IMPORT_URLS = [
    'http://wedata.net/databases/AutoPagerize/items.json',
    'http://ss-o.net/databases/AutoPagerize/items.json',
]

以上で完了です。
やっぱり良く分からないって方は(下記コメント欄より)id:javascripterが用意してくれた http://github.com/javascripter/autopagerize/raw/master/autopagerize.user.js を入れるってのもアリです。

「編集」ボタンクリック時に間違ってテキストエディタ以外のプログラムなどを選択してしまったなどで、ソースを開けなくなってしまった場合

  1. アドレスバーにabout:configと入力
  2. 初回閲覧時は「動作保証対象外になります!」とメッセージが出るので、了承できるなら「細心の注意を払って使用する」ボタンをクリックする。
  3. about:configが開くと、フィルタのテキストボックスにフォーカスがあるはずなので、そのままgreaseと入力する。
  4. するとgreasemonkey関連の設定が出てくるので、greasemonkey.editorの行を選択して右クリックしてメニューをだす。f:id:os0x:20081224112837j:image
  5. メニューの一番下にある「リセット」を選択する(値の変更で直接パスを入力してもOK)。これで「編集」ボタンのクリック時にエディタを選択するウィンドウが出てくるようになります。

*1:12月21日になってすぐのバッチ以降

*2:JSONのフォーマットがちょっとだけ異なり、/のエスケープと、Unicodeエスケープがされていません

*3:個人的にはXREAは良いレンタルサーバーだと思ってますよ

*4:メニューにはAutoPagerizeがあるはずなので、そのAutoPagerizeを右クリックすると直接エディタでソースを開くこともできる