Hatena::Diary

0xFF RSSフィード

2007 December 2nd

oAutoPagerize

id:swdyh氏のAutoPagerize for GreasemonkeyをOperaやSafari,Google Chromeなどで動作するように移植*1しました。

for Opera

必須ファイルは0AutoPagerize.SITEINFO.jsと、oAutoPagerize.jsの2つです。0AutoPagerize.Settings.jsはオプションです。以下説明。

SITEINFO ファイル:0AutoPagerize.SITEINFO.js

wedataのSITEINFOをまとめたファイルです。OperaのUserjsはファイル名順に実行されるので、ファイル名を0で始めています。このSITEINFOがないとほとんど動作しないので、実質このSITEINFOファイルのインストールは必須です。なお、このファイル自体は1時間おき*2にアップデートされますが、一度ローカルに保存されたファイルは自動ではアップデートされません。定期的に右上のアイコンからUPDATE SITEINFOを右クリックしてファイルを保存しなおしてあげてください。面倒ですが、今のところこれしか。。Safari(GreaseKit)の方は普通にクリックすればインストールダイアログがでるので、そこで上書きするだけでOKです。

Windowsをお使いの方は、Windows用 oAutoPagerize, xLDRizeのSITEINFOの更新バッチ - 0xFFなどで自動化をオススメします。

本体ファイル: oAutoPagerize.js

新しいバージョンが出た際はこちらを更新してください。また、動作がおかしいときはまずこちらを入れ替えてみてください。

設定ファイル:0AutoPagerize.Settings.js

oAutoPagerize ver 0.4 - 0xFFでも書いたように、設定関連は別ファイルで管理できるようになっていますが、その機能を少し強化しました。具体的には、実行禁止ページを正規表現で指定できるようになっています。また、AutoPagerize の右上のアイコンを変えてみたも設定ファイルだけでできるようにしてみました。こちらはオプションスクリプトなので、インストールしなくても動作します。

for GreaseKit, Google Chrome/Chromium User Scripts

Opera版と中身は基本同じですが、ファイル名が.user.jsで終わる点に注意してください。(Chrome4以降では、oAutoPagerizeは動きません。Extensions版のAutoPagerizeか、AutoPatchWork必須です)

SITEINFO ファイル(必須): http://ss-o.net/userjs/0AutoPagerize.SITEINFO.user.js
本体ファイル(必須): http://ss-o.net/userjs/oAutoPagerize.user.js
設定ファイル: http://ss-o.net/userjs/0AutoPagerize.Settings.user.js

また、非日本語圏向けに oAutoPagerize for Greasemonkey も用意しています。

ver1.0までの更新(これ以降の更新は[oAutoPagerize] - 0xFFからチェックしてください)

  • 2008/04/27 13:54 wedataに対応した、ver1.0公開
  • 2008/02/13 00:35 Safari用がバグっていたので、修正しました。すみません。。
  • AutoPagerize0.0.22 - SWDYHにあわせて、documentFilters*3などを実装。SITEINFOのマッチングをさらに高速化*4
  • 2008/01/30 17:39 右上のアイコンの表示切り替えを調整
  • 2008/01/22 12:47 詳細はoAutoPagerizeメンテ更新 - 0xFF
  • 2007/12/20 14:21 SITEINFOが定期的に更新されるようにしました*5oAutoPagerizeの自動更新始めました - 0xFF
  • 2007/12/03 17:21 http://d.hatena.ne.jp/quaa/20070607#p1 にある、FIRST_ORDERED_NODE_TYPEだとバグる件の対応を忘れていたので修正。
  • 2007/12/05 19:58 SITEINFOのマッチングを高速化
  • 2007/12/09 0:25 読み込み用のインラインフレームに対する処理が誤動作していた問題を修正

Opera用にカスタムした部分

インラインフレームに読み込むと、画像が全て読み込まれ、JavaScriptも全て実行されるため、次のページの読み込みが非常に遅くなる傾向がありました。

そこで、display:none;になっている要素内の画像はロードしないというOperaの特徴と、ページのJavascriptを全て無効化するUserjsを参考にJavaScriptの実行を止めることでインラインフレームのロードを高速化しています。

余談

jAutoPagerizeに刺激されて、全部書き直して公開しようかとも思ったのですが、冷静になってやめました...

謝辞

OperaのXPathに関するバグを詳細に調査してくださったid:quaaさんにお礼申し上げます。

インラインフレームで何とかできるという発想もOpera用のAutoPagerizeでXPath式にid()を使えるようにする試みがきっかけでした。本当に助かりましたm(_ _)m。

そして、My opera 用の SITEINFO 書いた - opera:hige - チーム俺等してくれたid:higeorangeにもお礼を。ちょっと遅くなったけど、採用済みです。

*1:正確にはAutoPagerizeをOperaに移植してみた - gnarl、技術メモ<s>ho<marquee>ge’”¥の改良版です

*2:更新に失敗していることもあります

*3:nextLinkなどの取得前にかけられるフィルタ。コレを使えば、base要素への対応、インクリメントなどもう少しスマートに出来そうです。

*4:Opera9.25で、Googleにて計測したところ500msを300msに短縮

*5:上記ファイルが更新されるだけで、ローカルのファイルが更新されるわけではありません。あしからず。

毎度感謝!毎度感謝! 2008/02/11 01:55 次のページを読み込んだときに、リンクのURL表示ではなく以前みたいにページ番号の表示をするシンプルな感じにはなりませんか?

os0xos0x 2008/02/11 08:43 なるほど。そういう需要もありますね。
個人的には(jAutoPagerizeに合わせた)今のほうが気に入っているんですが、シンプルな表示にも簡単に切り替えられるような方法を検討してみます。

毎度感謝!毎度感謝! 2008/02/11 17:05 時間がある時にでも検討お願いします。これからも頑張ってください。

yamibikariyamibikari 2008/04/08 21:51 使ってみました。とても便利です。

noliaquinoliaqui 2008/10/31 01:58 重箱の隅を突くような指摘で申し訳ないですが、一カ所だけ「SIEINFO」とTYPOしているところがあるようです。

os0xos0x 2008/10/31 02:47 ありがとうございます!直しました!!

ssnsssns 2008/12/18 19:15 Safariを使っています。
「for GreaseKit」の3つのファイルをすべてインストールしたのですが、何の効果も現れません。
ちゃんとSafariのメニューバーには「GreaseKit」はあります。インストール済みです。

インストールした後、何か設定をしなければならないようなこともありませんよね?

frigfrig 2009/03/16 13:18 SITEINFOですが、 GIGAZINEさんのサイトには合っていない様で (by Chrome)
p[contains のところを
b[contains で動きます。
よければ変更よろです。

os0xos0x 2009/03/17 21:25 >frigさん
直しておきました

なまえなまえ 2009/03/27 17:46 the new version 1.2.2.1 doesn't work with opera 10
but 1.2.2 did

frigfrig 2009/04/06 09:29 >os0xさん
修正ありがとうございます・・・といいたいところですが、p[containsままのようです。(更新時に戻ってる?)
wedataのほうを見てきましたが、 *[contains で処理してますね。ためしにやってみましたがそれでもちゃんと動いてました。(当然といえば当然ですが・・・)
すみませんが、再確認よろです。
ttp://ss-o.net/userjs/0AutoPagerize.SITEINFO.user.jsのほうです。

os0xos0x 2009/04/06 11:14 すみません、、バッチ処理に問題があり、SITEINFOファイルを更新できていませんでした。
0AutoPagerize.SITEINFOを最新の状態にしておきましたので、更新し直してみてください。

frigfrig 2009/04/07 13:14 バッチにて更新後、正常にオートページングされていることを確認しました。
おかげで、便利になります。ありがとです。
余談ですが、コメ投稿の画像認証の文字がはみ出て読めない場合がありました。

frigfrig 2009/04/08 11:09 画像認証の文字の件ですが、画像が読み込めてないだけですた。(IMAGE EXPIREと表示されてるっぽい)

os0xos0x 2009/04/08 11:38 ご報告どうもです。
画像認証の件ははてなダイアリー標準の機能なので、なんともできないのですよ…
まあ、スパムだらけになるよりはマシですが。

便利です便利です 2009/04/10 10:18 読み込むページ数を制限することは可能でしょうか?(10ページまで、等)

os0xos0x 2009/04/10 11:35 ページ数を制限する機能はありません。
スクロール量と、右上のアイコンからON/OFFを切り替えで、読み込み量はコントロールできるので、必要ないかなと思っています。
ただ、ON/OFFの切り替えはやや面倒なので、その点は改善の余地があるかな…

名無し名無し 2009/05/19 16:18 itmediaのこのページですが、
http://www.itmedia.co.jp/news/articles/0905/19/news089.html
3ページすべて1ページ目になり、何故か4ページあります。
os10.5.7 safari3.2.3です。

なまえなまえ 2009/05/28 10:32 便利に使わせて貰ってます。

現状、スクロールしなくても、ページを開いた時点で次ページの読み込みをできるよう、
window.addEventListener('scroll', this.scroll, false);
の前に
self.onScroll();
を入れて使っています。

可能であれば、ページを開いた時点で、スクロールしなくても、5ページとか10ページとか、0AutoPagerize.Settings.jsで設定したページ数だけ、読み込みできるようになっていると助かります。

ご検討の程、よろしくお願いします。

なまえなまえ 2009/07/03 10:53 safari4.0.1 MacOSX10.5.7で利用させていただいております。
tumblrを閲覧する際、2ページ目を読み込んだ後、
マークが消えてしまい、3ページを読み込みません、
対応していただけると幸いです。
google検索結果はさくさく表示され感動しています。
ありがとうございます!

knenetknenet 2009/07/25 19:33 seamonkey1.1.17で使用させて頂いてます。
こちらの環境の所為か判りませんが、pixivなど上下にナビゲーションがあるときに両方読み込まれてしまうようです。

774774 2010/01/14 14:18 UJS Manager( http://unite.opera.com/application/401/ )で使用されるujs_manager_installer.jsとoAutopagerize.js(と0minibuffer.js)が衝突します。
とりあえずoAutopagerizeと0minibufferで*.jsをexcludeして対処しました

004004 2010/01/19 04:41 Opera用を使わせていただいております。
Google画像検索で使えないのですが、どうすれば良いのでしょうか?

なまえWashingtonなまえWashington 2010/01/22 03:07 Sorry, but I don't understand Japanese. You're the creator of the script, right? It's not working anymore when I search images on google. Could you help me on this? Or maybe Google is blocking the script? Thanks in advance.

meatmeat 2010/01/30 00:37 最近、Google画像検索で0Autopegerizeがうまく動作していないようなのですが、仕様変更されてしまったんでしょうか…。

safari4にて仕使用させてもらってます。

tunayxtunayx 2010/02/14 06:47 There's a problem. If I go second page using this script, then exit opera and relaunch it, that script could not remember exactly which point I stayed last time. In short this script only remembers which page you last exist not the last point for the second and the rest of the pages. If a solid fix come the I'd gladly use this script.

名無し名無し 2010/02/26 11:39 価格.comのクチコミとDailymotionでoAutopegerizeが動作しません。
対応よろしくお願いします。
Mac os 10.6.2 safari 4.0.4

004004 2010/03/09 01:31 Opera10.50+oAutoPagerize1.5.1でYahoo知恵袋で動作しないようです。
落ちる事はありませんが、loadingのまま読み込まれません。
Opera10.10+oAutoPagerize1.5.1では正常に作動するので、Opera側の問題でしょうか?

004004 2010/03/11 19:52 上記の件、間違えてuser.js版を入れていたため、勘違いしておりました。
正常に作動しております。
申し訳ありません。

スパム対策のためのダミーです。もし見えても何も入力しないでください
ゲスト


画像認証

トラックバック - http://d.hatena.ne.jp/os0x/20071202/oautopagerize
カレンダー
2007 | 01 | 02 | 03 | 04 | 05 | 06 | 07 | 08 | 09 | 10 | 11 | 12 |
2008 | 01 | 02 | 03 | 04 | 05 | 06 | 07 | 08 | 09 | 10 | 11 | 12 |
2009 | 01 | 02 | 03 | 04 | 05 | 06 | 07 | 08 | 09 | 10 | 11 | 12 |
2010 | 01 | 02 | 03 | 04 | 05 | 06 | 07 | 08 | 09 | 10 | 11 | 12 |
日記の検索

最近のコメント