post:2012年5月2日 00:15

拡張機能を一通りニコニコ動画Zeroに対応

ニコニコ直ダウンローダー

ニコニコ最前面コメント

ニコニコ除ニコレポ

の3つの拡張機能をニコニコ動画zeroに対応させました。もちろん原宿にも対応しています。

 

順番に開発後記を。先ずはダウンローダー。

ぼつぼつストリーミングサーバーが存在してきたので、公式配信モノがストリーミングに置き換わったらどうしよう と心配していましたが

その心配もなく今までどおりDL出来ます。

動画のタイトルやタグが取得できなくなったかと焦りましたが、/watchの下の方に書いてありました。

contentScriptでは、#watchAPIDataContainerのinnerTextを取ってJSON.parseすれば色々取れます。

オブジェクトで一気にあれこれ取れるので、見つけてからはラクチンでした。

今までは投稿の秒数は取得できなかったけど(もしかしたらスレッド番号で取れたかも)、秒数も取れるようになりました。

視聴ページを開いて、console.log(JSON.parse(document.querySelector(“#watchAPIDataContainer”).innerText));で取れると思います。

ユーザー投稿動画、運営投稿動画チャンネル投稿動画の三種類で確認しました。

 

先にニコレポ。

レイアウトは当然変わりましたが、ニコレポの内容はほぼ変化なし。ニコると動画レビューの項目が追加されただけかな。

 

最後に最前面。

これが最難関でした。原宿はaddVariableを上書きしてやればよかったのですが、Zeroでは出来ませんでした。

最前面の情報も前述の#watchAPIDataContainerに書いてあるのですが、最初に読み取ってグローバルオブジェクトに放り込んでるらしいんですよね。

グローバルオブジェクトを消して、無理やりjsを再読み込みさせると、DOMエレメントに対して二重に初期化され、コメント欄が消えたりして上手く行かず。

グローバルオブジェクトのどこに属性が記録されているかを調査したのですが、スキル不足で分かりませんでした。

結局、関数を切り貼りしたら無事動いたので、それでリリースしました。

 

動画プレイヤーの下にある動画のサムネイルから動画を切り替え出来ますが、結局ページを移動しているだけでした。

何が原点回帰なのか知らんけど、また慣れるかな。

ユーザに叩かれてレイアウトが変わるのが一番怖いということで。

"拡張機能を一通りニコニコ動画Zeroに対応"に3件のコメントがあります

  1. こんにちはー。

    リファラコントロール使わせていただいております。ありがとうございます。
    livedoor ReaderでRSSを購読する際に、Amebaブログなどの画像が表示されないのを回避するのに利用していたのですが、2.0にバージョンアップしたら、機能しなくなってしまいました。

    以下が、バージョンアップ直後の設定です。
    {“matchingUrl”:”*://*stat.ameba.jp/*”,”newRefType”:”static”,”newRefData”:{“staticString”:””}}
    バージョンアップ前に機能していた設定を変更していませんが(バージョンアップで自動的に書き換わったままです)、バージョンアップ後は使用回数がまったくカウントされないので、マッチングURLをhttp://stat.ameba.jp/*などに変更してみたりもしましたが、それでもカウントされません。

    Chromeのバージョンは18.0.1025.168 mと19.0.1084.46 mです。他の拡張機能を全て無効にして試してみましたが、機能しませんでした。
    お手すきの時にでもご確認いただけないでしょうか。よろしくお願いします。

  2. 不具合報告ありがとうございます。

    実は今回のアップデートで、ページ全体からのアクセス
    つまり、アドレスバーにURLを書き込み送信すると、そのURLはもちろんですが
    そのURLのページに貼られている画像やスクリプト、さらにそのスクリプトからの通信と言った膨大な通信が発生するのですが
    全てに処理を行うとブラウジングのスピードが下がってしまいます。

    ですので、入力したURLのみに処理をさせればいいや。と思って仕様変更を行ったのですが
    てれぱんださんの使い方は想定していませんでした。

    申し訳ありません、最新版では入力したURLの他にもchromeの機能として設定可能な全ての通信を処理出来るようにしました。
    RSSリーダーですと、アクセスタイプの項目でサブフレームや画像の項目にチェックを入れると表示されるようになると思います。

    バージョン3.2にアップデートして頂き
    {“matchingUrl”:”*://*.stat.ameba.jp/*”,”newRefType”:”static”,”newRefData”:{“staticString”:””},”accessType”:[“main_frame”,”sub_frame”,”image”]}
    をインポートすると使えるようになると思いますのでお試し下さい。

    不具合報告ありがとうございます。これからもご利用ください。

  3. バージョンアップありがとうございます!RSSリーダーで画像が表示されるようになりました。

    RSSリーダーで記事中の画像を表示するだけなら、アクセスタイプの項目は画像だけでもOKでした。
    ご説明通り、アクセスタイプで絞らないと、ものすごい数のカウントになりました。。。

    リファラコントロールのおかげで、どのようなサイトでもRSSリーダーで画像を表示できるようになり大変便利に使わせていただいております。
    ありがとうございました。

コメントを残す

ブログオーナーにだけ送信したいメッセージはメール欄にどうぞ。名前とメール欄は任意。