2017 05 ≪  06月 123456789101112131415161718192021222324252627282930  ≫ 2017 07


スポンサーサイト

- --------(--) - 
上記の広告は1ヶ月以上更新のないブログに表示されています。
新しい記事を書く事で広告が消せます。
この記事のURL | スポンサー広告 | ▲ top

Googleリーダーで次のページも読みたい!

- 2010-05-02(Sun) - 

(2010-05-10 更新:Google Reader Full Feed 0.1.9 mod 6)

RSSリーダーからソース元のページを開くと、ニュース記事やレビュー記事など「次のページ」へのリンクを含む記事もあるのですが、そういった記事の2ページ目や3ページ目はフィードには含まれていません。

そのような記事の場合、Google Reader Full Feedではソース元の1ページ目(の全文)を表示できますが、2ページ目以降はムリ。「AutoPagerizeのように、次のページもGoogleリーダー内でサクッと表示できればなぁ」とGoogle Reader Full Feedを使い始めたころからずっと思いつつも、2ページ目以降は仕方なく新しいタブで開いていました。

以前、LDR Full Feedを試してみるとlivedoor Reader内で次ページも継ぎ足し表示できるのを知って、「この機能をGoogle Reader Full Feedに実装できれば…!」と思いスクリプトとにらめっこするも、私には何がどうなっているのかサッパリで、理解できたのはAutoPagerizeと連携するのではなく、AutoPagerize用のSITEINFOを読み込んでいることくらい。

「どうせならAutoPagerizeと連携して、スクロールしていくだけで継ぎ足し表示できるようにしたい」と思ったのですが、Googleリーダーはインラインフレームのようになっているので、AutoPagerize側からはスクロール位置が取得できないっぽい。

結局その機能はあきらめて、Firefox 3.6対応やWeb Storage対応などを施した改造版を公開しましたが、その後もあきらめきれずに必要であろう処理を少しずつ追加していき、ようやく動くようになったっぽいので、改造版その3&人柱版として公開します。

必要な処理が省かれていたり、環境によっては全然動かなかったりするかもしれません。「おかしいところや不具合などがあったら報告するよ」って方は、当エントリーを最後まで読んでから試してみてください。

ダウンロード

  • Google Reader Full Feed 0.1.9 mod 6(2010-05-10)
    • 次ページが正しく認識できない場合があったのを修正その2。
  • Google Reader Full Feed 0.1.9 mod 5(2010-05-07)
    • 次ページが正しく認識できない場合があったのを修正。
      ※ このケースに遭遇した場合はキャッシュを一度リセットしてみてください。
  • Google Reader Full Feed 0.1.9 mod 4(2010-05-05)
    • ページを継ぎ足したとき、その境目に水平線とページ番号を追加。
    • ページ継ぎ足し用に、AutoPagerize形式のユーザー専用SITEINFOをスクリプトへ追加できるように。
      ※ 現在、pageElementは参照していません。
    • ページ継ぎ足しなどを実行するキーを変更できるように。
      英字以外のキーを割り当てたい場合はキーコードで指定してください。
      ※ Googleリーダーで未使用な英字キーは「B F H I Q W Y Z」のようです。
    • キャッシュをリセットするキーボードショートカットをCtrl+Shift+(実行)キーに変更。
      また、リセット前に確認ダイアログを表示するように。
    • 自動ページ継ぎ足し機能の有効/無効をShift+(実行)キーで一時的に切り替えられるように。
    • 以下の軽量化を行いました。
      • 本文以外のコンテンツが多いページを読み込んだとき、本文が表示するまでの待ち時間を短縮。
      • 0.2秒ごとに実行されていたタイマー処理を廃止。
  • Google Reader Full Feed 0.1.9 mod 3(2010-05-02)
    • 0.1.9mod2で追加した「全文取得アイコンやはてなブックマーク/livedoorクリップ登録数を重複表示しないようにする」処理の不具合を修正。
  • Google Reader Full Feed 0.1.9 mod 2(2010-05-02)

以前の改造版はこちら

ダウンロード後、ファイル名の「?_user.js」を「?.user.js」にリネームして、Greasemonkey導入済みのFirefoxのメインウィンドウ(もしくはのGreasemonkey「ユーザスクリプトの管理」ウィンドウ)へドラッグ&ドロップするとインストールできます。ご利用は自己責任で。

インストール前に必ず確認しておくこと

インストール後にGoogleリーダーを初めて開くと、自動的にAutoPagerize用のSITEINFOを取得します。wedataのサーバーがようやく復帰したようですが、最近は重かったり落ちていたりするので、0.1.9 mod 2以降を初めてインストールする場合は、「wedataについて」ページなどを一度開いてみて、サーバーが落ちていない(もしくは重くない)のを必ず確認してからインストールしてください。

もし、正常に取得できない場合、wedataが軽くなってからCtrl+Shift+Zキーで取得し直してみてください。

次ページの継ぎ足し表示

Google Reader Full Feedで読み込んだ記事内に次のページへのリンクが含まれている場合、AutoPagerizeのように下へスクロールしていくと、自動的に次のページを継ぎ足します。スクロールする以外に、「z」キーを押すかオレンジ色のGアイコンをクリックしても継ぎ足せます。

自動継ぎ足し機能そのものを無効にしたい場合は、スクリプトの50行目付近にある「PAGERIZE」をfalseに変更してください。また、スクロールによる自動継ぎ足し機能を無効にしたい場合は、「AUTOPAGERIZE」をfalseに変更してください。AutoPagerizeのように、ページ上から自動継ぎ足し機能のON/OFFを切り替えることは(現時点では)できません。

読み込んだページのサイトがAutoPagerizeに未対応の場合は継ぎ足し表示できません。また、継ぎ足した境目の上下にページのヘッダやフッタが表示されるなど、AutoPagerizeで継ぎ足したときの表示とは異なる場合があります。余裕があれば、AutoPagerizeのようにキレイに継ぎ足し表示できるようにしたいな。

なお、一部のサイトでは次のページを継ぎ足せないことがあります。これは、次ページへのリンクを示すXPathが、読み込んだ本文部分の外側の要素から指定されている場合に起こります。この場合、AutoPagerize用のSITEINFOで指定されている、そのサイトのnextLinkを見直すといいのかもしれません。

キャッシュの消去

Googleリーダーを開いている状態で、ツールメニュー→GreasemonkeyもしくはステータスバーのGreasemonkeyアイコンを右クリックして「ユーザスクリプトコマンド」→「Google Reader Full Feed - delete cache」を選択してOKボタンを押すと、SITEINFOのキャッシュをすべて削除できます。

SITEINFOのミラーを登録してキャッシュが重複した場合などに掃除目的で実行するものであり、通常時に実行する必要はありません。

Firefox 3以下は非対応

この改造版ではネイティブJSONを使用しています。そのため、JSONにネイティブ対応していないFirefox 3以下では動作しません。Firefox 3.5と3.6以外のブラウザは未検証です。


あまり動作検証できていないので不具合も多いかと思いますが、この改造版を試してみて何かありましたらコメントしていただけると助かります。それと、LDR Full Feed用SITEINFOのミラーはどこかにないのかな? wedataの調子がこのまま良ければいいんですけどね。

関連記事
スポンサーサイト
この記事のURL | Greasemonkey | コメント(2) | トラックバック(0) | ▲ top
<< | メイン | >>
 
コメント
-  -
Google reader full feed大変便利で、愛用させていただいております。
今回は使用していて不具合なのかな? と思った点がありましたので書き込みをさせていただきました。

Ctrl+ZキーでAuto loadをONとして使用した場合に
Google Reader Full Feed 0.1.9 mod 3以前のVersionであれば
This SITE_INFO is unmatched to this entry

上のようなメッセージが返されていたようなページにおいても
Loading Full Feed... Done

となって、表示されてしまうようです。
この際、ページをまるごと読み込んできているのかFeedが取得される領域以外の表示等が崩れるようです。

今回使用したスクリプトはGoogle Reader Full Feed 0.1.9 mod 6
Firefoxは3.6.3、Greasemonkeyは0.8.20100408.6
OSはWindows XP SP3となっております。
2010/05/31 23:03  | URL | ぺた #8S63PFWQ [ 編集] |  ▲ top

- ありがとうございます -
wedataが落ちていたので控えていましたが、週末にでも最新版をUPする予定です。

そちらでは指摘していただいた部分を回避するような処理を入れているので、もしかしたら解決するかもしれません。
特定のフィードでの現象であれば、wedataに登録されている情報が不正確なためなのかもしれません。

次の最新版を試してみてからでも構いませんが、期待通りに表示してくれなかったWebサイトをこっそり教えていただけると助かります。
2010/05/31 23:25  | URL | Wiki管理人 #r1C70W1Q [ 編集] |  ▲ top


コメントの投稿















管理者にだけ表示を許可する


▲ top
 
トラックバック
トラックバックURL
→http://fxwiki.blog63.fc2.com/tb.php/255-8cf27a77
| メイン |
上記広告は1ヶ月以上更新のないブログに表示されています。新しい記事を書くことで広告を消せます。