ヤフーオークション画面をカスタマイズする〜その3
Yahoo! Auction向けのGreasemonkeyユーザスクリプトに、前回のToDoを追加実装しました。今回で、出品者のブラックリスト管理、業者の商品ページ一杯に表示されるウザい公告の削除、おまけとして、Yahooからの公告("[PR]口臭がなくなります"、みたいな一行公告)を抑制します。
こちらからyahooauctions.user.jsインストールして下さい。Greasemonkeyを有効にしたfirefoxからアクセスすればインストーラ画面が出ます。削除の普通にGreasemonkeyの画面から「アンイストール」できます。設定はユーザスクリプトファイルを直接編集して下さい。ファイルは以下にあります。
- Windows Vista, Windows 7の場合: C:\Documents and Settings\USERNAME\AppData\Roaming\Mozilla\Firefox\yyyy.defaults\gm_scripts\yahooauctions\yahooauctions.user.js
- Windws XPの場合: C:\Documents and Settings\USERNAME\Application Data\Mozilla\Firefox\Profiles\yyyy.defaults\gm_scripts\yahooauctions\yahooauctions.user.js
- Linuxの場合: ~/.mozilla/firefox/yyyy.defaults/gm_scripts/yahooauctions/yahooauctions.user.js
できることと設定方法は以下の通りです。[true/false]は、trueで機能有効、falseで無効です。
//-- 設定パラメータ Configuration parameters of the script
//-- 商品リスト画面の表示を強制的に「残り時間が短い」順にする。
//-- sort by remaining time on list or search result. [true/false]
var SORT_BY_REMAINING_TIME = true;
//-- ウォッチリストからの削除を行った後に表示される確認画面から自動的に戻る
//-- back from confirmation window of deleting watchlist automatically.[true/false]
var AUTO_BACK_AFTER_DELETING_WATCHLIST = true;
//-- ウォッチリストに登録を行った後に表示される確認画面から自動的に戻る
//-- back from confirmation window of adding watchlist automatically.[true/false]
var AUTO_BACK_AFTER_ADDING_WATCHLIST = true;
//-- 業者の公告とヤフーの[PR]を非表示にする
//-- Hide advertisement from shops.[true/false]
var REMOVE_SHOP_ADVERTISEMENT = true;
//-- ヤフーの[PR]を非表示にする
//-- Hide advertisement from yahoo.[true/false]
var REMOVE_YAHOO_ADVERTISEMENT = true;
//-- 現在価格を 1円〜4999円にする。[true/false], 最低価格(MIN)/最高価格(MAX) は円
//-- Current price must be limitted upto 4999 Yen for non-premium membership.
var LIMITTED_PRICE_FOR_NON_PREMIUM = true;
var LIMITTED_PRICE_FOR_NON_PREMIUM_MIN_PRICE = 1;
var LIMITTED_PRICE_FOR_NON_PREMIUM_MAX_PRICE = 4999;
//-- 出品者のブラックリスト。商品リスト上で非表示にする[true/false]
//-- Black list of user id. Add one into comma separated list in backList.
var REMOVE_UESR_IN_BLACK_LIST = true;
var blackList = [];
//--{sample}-- var blackList = [ "advan3007jp", "bigbird_77jp", "bonbom2001jp" ];
最後のブラックリストはYahoo idを""で囲んで、","で区切ってリストにします。{sample}が例です。
ToDo
さて、やり残しです。機能的には自分としては満足なのですが、実装上の限定があります。autopagerizeと一緒に使うと、2ページ目以降でブラックリストが効きません。このユーザスクリプトはGreasemonkeyのユーザスクリプトの代表選手であり、私も使っているので看過できません。原因は、autopagerizeが次ページをXMLHTTPRequestで取ってきてそのまま表示しているためと思います(未確認)。この推測が正しければ、今回のスクリプトに限らず、2ページ目以降は全てのユーザスクリプトが効いていないはずです。これを解決するためには、autopagerizeから、Greasemonkeyのスクリプトを実行しないとならないような気がします。その内、確認して対策を考えます。