はてなキーワードの表記揺れ誘導ページを飛ばすProxomitronフィルタ

概要

はてなキーワードには、表記揺れ誘導キーワードと呼ばれる、リダイレクトのみの機能を持ったページが多く存在します。例えば、「メタブクマ」や「ヴォルガ」「Vincente Minnelli」などなど…
これらのページはリダイレクトの機能のみしか持たず、実質的に内容はありませんので、自動的に正しい表記のキーワードページへ飛ばしてしまいましょう、というフィルタ「hatena K! | redirect activator」です。

最新版 機能追加/バグ修正@20080920

  • 対応書式を拡張
  • 2つ以上の見出しがある場合にリダイレクトが動作しないよう修正
[Patterns]
Name = "hatena K! | redirect activator 20080920"
Active = TRUE
URL = "(d|k).hatena.ne.jp/keyword/? $TYPE(htm)"
Limit = 400
Match = "<div class="section"> $NEST(<p>,"
        "([%a2][%aa]|[%a2][%cd]|[%a1][%e1]|=)([%a1][%d6]|[%a1][%d8]|)"
        "<a class="keyword" href=$AV(\0)>[^<]+</a>[^<]+"
        ",</p>) </div>$SET(1=<script type="text/javascript">document.location="\0";</script>)|"
        "(<ul class="related-link">)\1"
Replace = "$STOP()\1"

【附記】

  1. 対応書式一覧
    • 接頭辞1(必須) … →/⇒/=/=
    • 接頭辞2(任意) … 「/『
    • 接尾辞 … 段落終了までタグを含まないこと & 1段落で終了していること
  2. 非対応書式
    • ヴォロニン」のような、表記揺れ誘導リンクの後ろに他のリンクがある場合(対応した場合の副作用が未知数のため検討中)
    • 「VPO」のように、接頭辞の直後に誘導リンクがない場合(同上)
    • ヴァーティカル」のように、親切にも不可視なコメント形式で何か書いてくれてあったりする場合(現在のMatchのロジックの問題で対応予定無し)
    • フィルタ」のように、1段落目に誘導リンクがない場合(同上)

過去のバージョン

初版@20080804
[Patterns]
Name = "hatena D! | Keyword Jump 20080804"
Active = TRUE
URL = "d.hatena.ne.jp/keyword/? $TYPE(htm)"
Bounds = "$INEST(<div\sclass=”section”>,</div>)"
Limit = 200
Match = " <p>[%a2][%aa]<a\s[^>]++href=$AV(\0)>[^<]+</a></p> "
Replace = "$STOP()"
"<script type="text/javascript">document.location="\0";</script>"