Proxomitron フィルター作成スレッド Part6
1 :
ミスターオミトロン :
2006/11/13(月) 17:00:32 ID:oCAoIukD0
2 :
ミスターオミトロン :2006/11/13(月) 17:01:48 ID:oCAoIukD0
3 :
ミスターオミトロン :2006/11/13(月) 17:03:24 ID:oCAoIukD0
4 :
ミスターオミトロン :2006/11/13(月) 17:05:56 ID:oCAoIukD0
6 :
>5の修正版 :2006/11/13(月) 17:58:15 ID:w72sMec60
UTF-16のページには挿入できないかも 試してないけど
[Patterns] Name = "New HTML filter" Active = TRUE Limit = 256 Match = "<([%00])\0b[%00]o[%00]d[%00]y*>[%00]&&\1" Replace = "\1&\0#\0x\06\03\06\05\0;\0" やっぱりUTF-16では↑みたいに0x00も挿入しないと駄目だった
>>9 がなんかのフィルターが悪さしてるらしく、ものすごい勢いでぶっ壊れるなぁ。
>>13 googleのトップページのソースをUTF-16で保存してバイナリエディタで覗いてみたら 「x00」 が
一文字に1つずつ入ってたw 3バイトの文字もあるらしいから 「x00」 じゃマッチしない場合もあるってことか。
それとファイルの先頭に 「FE FF 00」 という3バイトが勝手に挿入されたけど、これはUTF-16の
お約束事かな、後で調べてみます。
前スレの995です。 (4.5June+shift_jis誤爆回避日本語化+RWIN32768回避+バイパス赤icon+有難屋 これ使っても バグが出るんですね。 前スレの998さん 色々とありがとうございました。
>>16 どうもです。
>これ使っても バグが出るんですね。
それでも出ますね、このバグは一番悪影響のあるバグなので作者さんに直して欲しいところ
なんですが、作者さんは既に・・。(ー人ー)
>色々とありがとうございました。
お役に立てたようで嬉しいです。(^^)ノシ
>>15 >「FE FF 00」
これは BOM(Byte Order Mark) というものだそうです。
参照
ttp://seclan.dll.jp/ccutffaq.htm
Google: Kill ad [2006/09/24]入れてみたけど、広告表示されるんだけどうちだけ?
>>19 Google系フィルタの「使い方」の説明を修正するのを忘れていました。m(_ _)m
ブロックリスト「GoogleSearch」は登録済みでしょうか?
未登録でしたら以下をインポートして、"GoogleSearch.txt" をProxomitronのListフォルダにコピーしてみてください。
[Blocklists]
List.GoogleSearch = "..\Lists\GoogleSearch.txt"
Google: High Light 1 [2006/06/04]・2 [2006/06/27]だけど、 着色が始まったワードの最初4byte分が文字化けしちゃう Google High Light以外のフィルタを全部非アクティブにしても同じ なんなんだろ
>>21 > 着色が始まったワードの最初4byte分が文字化けしちゃう
私の環境では文字化けしていませんが、全てのワードで文字化けしますか?
簡単に思いつくところでは、「oe=sjis で不正にマッチしている」ということが考えられますが…。
# "URL: Google transfer" で回避できます。
現象が再現するURLを教えていただければ、検証できるかもしれません。
ティンコさん大忙しだな
24 :
19 :2006/11/15(水) 22:08:53 ID:ezYrAZI50
>>20 リストを入れ忘れていたからみたいです。
どうもありがとうございました。
>>25 JPGだから分かりづらいけど
gdi++のfreetype版使ってるとか?
>>26 うちの環境の問題みたいですね。もうちょっと試行錯誤してみます。
ありがとうございました。
>>27 freetype版はX-Finderでの文字化けが酷かったんで非freetype版使ってます。
gdi++外して試しても変化無かったんで、gdi++は関係ないみたいです。
試したけどうちでも化けた。 だから多分、キャッシュCSSProxyは関係なし。 後で他のフィルタとがっちんこしてないか見てみるわ。 もしgoogle highlightがおかしいとしたらフィルタ1の方だと思われる。 フィルタ数100を超えると管理が大変だよねぇw
多分初歩的な事なので 怒らないで教えてください。
"Google"で"proxomitron"を検索した時に ログウインドを出していても
New Message Log Window....
BlockList 182: in Bypass, line 79
+++GET 182+++
GET /search?hl=ja&q=proxomitron&btnG=Google+%E6%A4%9C%E7%B4%A2&lr= HTTP/1.0
Accept: image/gif, image/x-xbitmap, image/jpeg, image/pjpeg, application/vnd.ms-excel, application/vnd.ms-powerpoint, application/msword, application/x-shockwave-flash, */*
Referer:
http://www.google.co.jp/webhp?hl=ja Accept-Language: ja
User-Agent: Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1; .NET CLR 1.1.4322)
Host: www.google.co.jp
Cookie: PREF=ID=da8439db0b57b436:TM=1163645442:LM=1163645442:S=1hJiAq-KOnYjGjqB
Connection: keep-alive
+++RESP 182+++
HTTP/1.0 200 OK
Cache-Control: private
Content-Type: text/html; charset=UTF-8
Server: GWS/2.1
Transfer-Encoding: chunked
Date: Thu, 16 Nov 2006 04:08:32 GMT
+++CLOSE 182+++
これだけしか出ず マッチしません。
Google: High Light とかも入っていてチェックも入っています。
何がいけないのでしょうか?
バイパスリストに入ってるってメッセージでてるやん 79行目をみれば済むでしょ
バイパスしてるんじゃないの? >BlockList 182: in Bypass, line 79
すげー、よくわかるな
>>31 ,32
ありがとうございます。
解決しました。
gooをバイパスさせるのに"*goo*"となってました。(;´Д`)
初歩的なミスで手をとらせてしまってすいません。
ありがとうございました。
>>34 ([^/]++.|)goo.ne.jp/
>>35 こんな私のために 大変ありがとうございます。
>>29 果たしてこういう使い方をして良いのか分からないけど、
Google: High Light 1 [2006/06/04]
Google: High Light 2 [2005.10.21]
の組み合わせだと文字化けは起こらなかった
うちの文字化けにはGoogle: High Light 2 [2006/06/27]が関係あるっぽい?
>>29 もし、他のフィルタと干渉しているとしたら、Multi を有効にしているフィルタを疑ってみてください。
デバッグモードを使えば、特定できると思います。
"Google: High Light 1" でtitle要素から検索語を抽出し、"Google: High Light 2" で抽出した検索語にマッチさせます。
"Google: High Light 1" に問題があるとしたら、検索語の抽出が不完全なために、"Google: High Light 2" で不正にマッチしてしまうケースだと思います。
"Google: High Light 2" で不具合が発生するとしたら、検索語へのマッチングが不正(2バイト文字の1バイト分しかマッチしないとか)であるか、他のフィルタでマッチした語句に対して、"Google: High Light 2" がマッチしている可能性があります。
Multi が有効なフィルタは他のフィルタからの検索対象になりますので、不具合の温床となりやすいです。
一応、私の自作フィルタの中には Multi が有効なフィルタはありません。
# 再帰的な動作に興味があって一時期試したことがありますが、「マッチング回数を制限しにくい」「複数回マッチするため、速度低下」の性質からあまり魅力を感じませんでした…。
>>37 > うちの文字化けにはGoogle: High Light 2 [2006/06/27]が関係あるっぽい?
過去の版は取り置きしてないので、 [2005.10.21] がどんなフィルタか判りません。(苦笑)
"Google: High Light 2" で最近(2006年)の大きな更新は、「2006/01/19 部分一致に対応」だと思います。
# アスタリスクに対応するために、(^$TST(Key1)|$TST(Key2)...) の表現を付け加えました。
# 例)
ttp://www.google.com/search?ie=eucjp&lr=lang_ja&q=%b2%e6%a4%ac%c7%da*%c7%ad%a4%c7%a4%a2%a4%eb
なるほど、確かにアスタリスクがあると着色されないです でもそれ以外特に問題もなさそうだし、[2005.10.21]のを使うことにします #念のためGoogle: High Light 2 [2005.10.21]を貼っときます [Patterns] Name = "Google: High Light 2 [2005.10.21]" Active = TRUE URL = "(www|images|news|groups).google.co(m|.jp)/(search|images|news|groups)\? $TYPE(htm)" Limit = 256 Match = "($NEST(<b>,(^...)\#,</b>)(<br>\s+|\s$SET(#= )|)\2)++{1,*}" "$SET(Temp=\@)" "($TST(Temp=($TST(Key1))\1 )$SET(0=#bbeeff)" "|$TST(Temp=($TST(Key2))\1 )$SET(0=#ffddaa)" "|$TST(Temp=($TST(Key3))\1 )$SET(0=#88ebaa)" "|$TST(Temp=($TST(Key4))\1 )$SET(0=#ccbbff)" "|$TST(Temp=($TST(Key5))\1 )$SET(0=#ffaaaa)" "|$TST(Temp=($TST(Key6))\1 )$SET(0=#99ccff)" "|$TST(Temp=($TST(Key7))\1 )$SET(0=#eebbaa)" "|$SET(Temp=)$TST(9=null))" Replace = "<span style="background-color: \0">\1</span>\2$SET(Temp=)"
質問させてください。偽装リファラーやリファラー隠すフィルターはあるのでしょうか?
あります
>>29 だけど、think氏のgoogle highlightオンリーの状態でも化けたよ。
該当部分の検索単語の文字コードの先頭部分が破壊されてるね。
時間有ったからちょっと頑張ってみたけど、元々正規表現が苦手なのもあって、
さすがに複雑なフィルタのバグ探しは俺には無理だった。
申し訳ないが他の人頼む。
Google: High Light 2が多分原因な気がするけど、ちょっと自信なし。
それにしてもオミトロン有りの状態でなれてると、
無しの状態はバナーが邪魔だったり、機能が不便すぎて困る。
検証しててものすごく身にしみた。
>>43 乙。 せっかくなので検証に使ったブラウザの名前やそのバージョンなどの情報をthink氏に
伝えたほうがいいと思います。 同じ環境を作ってテストすれば何か分かるかも知れませんし。
エディタでソース開いても壊れてるから、ブラウザは関係ないかも。 一応晒しとくね。 Win2kSP4 Opera9.0.2 Build8573 Syrela3.0.11 SeaMonkey1.0.2 Sleipnir2.4.8 + IE6 オミトロンはver4.5 Naoko 2003-5-22 Webページ、ヘッダの両方とも余分なフィルタは全て無しの状態で検証
うちもこんな感じで。フィルターはこの2つだけ <Match: Google: High Light 1 [2006/06/04] > <title>proxomitron - Google 検索</title> </Match> <title>Google検索: proxomitron </title><style><!-- <Match: Google: High Light 2 [2006/06/27] > <b>proxomitron</b> </Match> <span style='background-color: #bbeeff'>???omitron</span> の検索結果のうち win2k SP4 Sylera/3.0.13 SeaMonkey/1.1b Opera9.0.0 Build8501
>>21 だけど、うちはWin2kSP4で、
Opera9.0.2 Build8653
Syrela3.0.13 SeaMonkey1.1b
KIKI 1.0.8
IE6
Proxomitronは
>>4 の有難屋iconの奴
ひょっとしてWinXPじゃないと化けるとか?
ユーザスタイルを書くとき、 例えば onclick 属性をセレクタに入れようとすると、ちょっと面倒。 CSS で [onclick] と書いた場合は onclick="属性値" の場合しか適用されない。 (onClick="属性値" などと書かれていると適用されない。ちなみに、Firefox 2.0 の場合) そこで試しに ([%4F]n[%43]lick|[%4F]nclick|on[%43]lick)=$SET(1=onclick=) というマッチを書いてみたものの、 Proxomitron 側では大文字だろうと小文字だろうとマッチしてしまうのね……。 最初から全部小文字で書かれたものにはマッチさせても無駄な処理なので、 大文字のときだけマッチさせられればよいものの、そういうのは無理なのかな。 あるいは、[onclick] と書いただけで onClick="属性値" などに適用されれば、 それでも解決されるのだけれど。むしろ、そっちの方が理想的。 ブラウザの開発側に要望を出した方がよいのかな。
---- Proxomitron Filter Google: High Light 1 [2006/06/04] Google: High Light 2 [2006/06/27] ---- OS Windows XP Professional SP2 ---- Proxomitron Proxomitron Version Naoko 4.5(2003-6-1)+3 Proxomitron Version Naoko 4.5(2003-5-22) ---- Browser Sylera 3.0.11 (GRE 1.8.0.7_1) Opera v9.02 Build 8585 IE6 SP2 IE7_Standalone 以上の環境で検証しましたが、不具合を確認できませんでした。 今のところ不具合報告が上がっているOSは「Windows2000SP4」だけのようですが、OS依存の不具合だとするとちょっと手が出せません…。 関係ないかもしれませんが、以前にどうしてもRefererを消せない環境があって、悩んだ末にKerioのWebフィルタが作用していたことがありました。 ユーザが気がつかないところで別のソフトが作用していることもありますので、念のため、現在常駐しているソフトにも目を向けてみてください。 (もし、Win2k限定なら、Win2k限定で動作するソフトorサービスがあるかもしれません) 今までに報告いただいたところでは、「Google: High Light」しか文字化けの現象が出ていないようなので、>39のようにフィルタの表現を操作することで問題を回避できる可能性はあると思います。 以下、>39より、「Windows:XP」の検索語を認識するようにした版です。
[Patterns] Name = "Google: High Light 2 [2006/06/27] remake test1" Active = TRUE URL = "$LST(GoogleSearch)$TYPE(htm)" Limit = 256 Match = "($NEST(<b>(^...| </b>),([^<]+)\0,</b>)" "(<br> $SET(Temp=$GET(Temp)\0)|" "\s $SET(Temp=$GET(Temp)\0 )|" "$SET(Temp=$GET(Temp)\0))\9" ")++{1,*}" "" "($TST(Temp=(" "($TST(Key1))\1" "$SET(#=<span style='background-color: #bbeeff'>\1</span>)|" "($TST(Key2))\2" "$SET(#=<span style='background-color: #ffddaa'>\2</span>)|" "($TST(Key3))\3" "$SET(#=<span style='background-color: #88ebaa'>\3</span>)|" "($TST(Key4))\4" "$SET(#=<span style='background-color: #ccbbff'>\4</span>)|" "($TST(Key5))\5" "$SET(#=<span style='background-color: #ffaaaa'>\5</span>)|" "($TST(Key6))\6" "$SET(#=<span style='background-color: #99ccff'>\6</span>)|" "($TST(Key7))\7" "$SET(#=<span style='background-color: #eebbaa'>\7</span>)|" "(\s)\#)+{1,*}" ")|" "(^<b>)$SET(Temp=)$TST(\0=(^?)))" "$SET(Temp=)" Replace = "\@\9"
>>49 お疲れさまです
残念ながら
>>50 でも文字化けしました。
>>21 はOSインストール直後で、ほとんどソフトをインストールしていない状態でした
不要なサービスを切りNIS等疑わしいソフトを切ってテストしてたんで、
OS依存の不具合の確率が高そうです
think氏のサイトがわからん・・・
数日前からgoogle検索の結果の、各トップへのリンクの文字のサイズが大きくなりましたよね。 これを以前のように、内容紹介の文字と同じサイズにするフィルタをお願いできますでしょうか?
>>53 それだけでいいなら、これでいけるはず。
[Patterns]
Name = "Google: title font-size normalizer"
Active = TRUE
URL = "www.google.(com|co.jp)/"
Limit = 256
Match = ".r{font-size:*}"
Replace = ".r{font-size:100%}"
見ての通りの単能フィルターなので、
もっとスマートな汎用フィルターを待った方がいいかも。
どうでも良さそうだけど、WinXP環境がないもんでVistaRC1(Build5600)で試してみた Vistaインストール->Proxomitron起動->Opera9.10 Build8653インストール ->ProxomitronからGoogle High Light関連以外全部フィルタoff で、OperaでGoogleの検索結果に飛んでみた 結果、着色開始位置から最初の2byteが文字化けしました
>>55 ありがとうございます。
自分でも作ってみたんですけど↓でも上手くいきました。
[Patterns]
Name = "Google font"
Active = TRUE
URL = "www.google.(com|co.jp)/"
Limit = 256
Match = "<h2 class=r>|</h2>|<font size=-1>"
ttp://tomizawa-web.hp.infoseek.co.jp/event.htm ここに書かれているようなスクリプト関連の属性にマッチさせ、
なおかつ通常は「onclick」にマッチさせないようにするには
どう書けばよいのでしょうか。
onclick属性にもマッチさせたいときは、$KEYCHKを使用するつもりです。
(*(on[a-z]+)&*(^onclick)=)\1
こんな感じで書いてみたのですが、onclickにもマッチしてしまいます。
>>58 つ on(^click)[a-z]+{3,20}=
>>56 なるほど、VMware+VistaRC1で再現出来そう。 スペック的にうちでは無理だけど。
あ、マルチブートでいいじゃんw
63 :
58 :2006/11/26(日) 20:31:39 ID:LSn9ssRm0
>59 どうもありがとうございます。否定を先に書いておけばよいのですね。 属性名は最長で18文字のようなので {3,16} で十分かなとも思うのですが、 ちょっと余裕があったほうがよいのでしょうか。さっそく使ってみます。
64 :
本スレの817 :2006/11/27(月) 03:02:31 ID:1UZtU9sA0
migemoのログを2chブラウザに入れてログ検索したらこんなやり取りが出てきました。
Proxomitron フィルター作成スレッド Part4
http://pc7.2ch.net/test/read.cgi/software/1138069706/ 143 名前:名無しさん@お腹いっぱい。[sage] 投稿日:2006/03/05(日) 21:17:51 ID:iwuQps7B0
そういえば、google high light の最新版は文字化けするな。
古いのに戻したいのに見つからないよ。
144 名前:名無しさん@お腹いっぱい。[sage] 投稿日:2006/03/05(日) 22:28:00 ID:D06bOlrz0
うちは化けないよ。
>>64 &はいらない模様。
テストウインドウ = "ABC"
Name = "test1"
Active = TRUE
Limit = 256
Match = "A(*)\0C$SET(0=D)"
Replace = "1\03"
Name = "test2"
Active = TRUE
Limit = 256
Match = "A\0C$SET(0=D)"
Replace = "1\03"
Name = "test3"
Active = TRUE
Limit = 256
Match = "A(\0)C$SET(0=D)"
Replace = "1\03"
test1だけBのまま。 (...)\0で取り込む場合は&がいる。
ばけらった
69 :
本スレの817 :2006/11/28(火) 01:45:31 ID:6Te6ndy80
すみません、遅くなりました。m(_ _)m
>>66 どうもです。 &が無くても中身が更新されるんですね。
$NEST、$TST、Bounds欄ではどういう挙動をするか気に
なるので後で調べてみます。
>>67-68 確認ありがとうございました。m(_ _)m
動きませんでしたか、すみません..。 これでダメだということは
グローバル変数経由でないと\@は出力出来ないということです
ね、ちょっとショック..。
>>64 のはアプロダから削除しておきます。 もう1つのほうも
これ以上は検証するネタがないのでthink氏が対応版を出す
などして用済みになれば削除する予定です、では。
70 :
本スレの817 :2006/11/28(火) 21:37:01 ID:y3XOjpHT0
肉ちゃんの過去ログ読んでたら面白い代入方法を見つけたので晒し。 [Patterns] Name = "(^^)" Active = FALSE Limit = 256 Match = "<b>*1$SET(#=^)</b>" Replace = "(\@)" サンプルテキスト : <b>11</b> 結果 : (^^) ↓これの応用 # increment リストの2つ目 # 「9のみで構成される数値」をインクリメント (+1) $TST(Num=9++9$SET(Ntmp=$GET(Ntmp)0)(^?))$SET(Num=1$GET(Ntmp))$SET(Ntmp=)
[HTTP headers]
In = FALSE
Out = TRUE
Key = "URL: Google transfer (Out) [2005.10.18] beta"
Match = "(
http://www.google.co (m|.jp)/search)\#(^(^\?))\#(([?&])\#oe=[^&]+(\&|)|([&?]q=)\#(([^&]++)\#(%81%40|%a1%a1|%e3%80%80|%21%21$SET(#=%1b%28B)$SET(2=%1b%24B))$SET(#=+\2))+{1,*}) \#"
Replace = "$JUMP(\@)"
ありがとうございます。
youtubeって、www4とかあったんだね。 気が付かなかった。
75 :
本スレの817 :2006/12/06(水) 02:53:06 ID:xjQxWhos0
更新お疲れ様です >think氏 817A/B版はお役御免につきアプロダから削除しておきました。
76 :
名無しさん@お腹いっぱい。 :2006/12/06(水) 21:36:18 ID:nC6dhwpd0
wikiをutamapで検索
80 :
78 :2006/12/07(木) 04:11:21 ID:ACnTOB1q0
取り合えずフィルターのURL書き換えで解決しました。
81 :
78 :2006/12/07(木) 04:36:05 ID:NjyDIVKn0
>>79 URLが2つあるけどオリジナルはshowkasiにしか対応してなくて、前スレの584氏が修正したものは
showtopにしか対応してなかった。 ・・ということみたい。 ということで両方のURL対応版。
[Patterns]
Name = "Uta-map swf -> txt part1 (2006_12_07)"
Active = TRUE
URL = "www.utamap.com/(show(top|kasi).php\?surl=|phpflash/flashfalsephp.php\?unum=)"
Limit = 32767
Match = " $NEST(<object\s,*<embed\s[^>]++src=$AV(phpflash/showkasi.swf\?ucode=([a-z0-9]+)\0)*,</object>) "
"|"
"<NOSCRIPT*</NOSCRIPT>"
"|"
"<SCRIPT*</SCRIPT>"
"|"
"test[0-9]+=[0-9]+\&test[0-9]+="
Replace = "$TST(\0=[a-z0-9]*)"
"<iframe src="
http://www.utamap.com/phpflash/flashfalsephp.php?unum=\0? " height="400" width="600">\r\n"
"This filter use IFrame Tag! your browser cant't use this Tag.\r\n"
"</iframe>\r\n</TABLE></TABLE></BODY></HTML>\k"
読み込みがいつまでも止まらないので強制的に読み込みを停止する処理を入れときました。
>>81 名前まちがって78にしてました。失礼。
ありがとう御座いました。使わせていただきます。
(ё▽ё)ノシ
(◕∀◕)ノシ
d(゚Д゚)☆スペシャルサンクス☆( ゚Д゚)b
4.5にしたら、pcが落ちるようになってしまったんだが、何が怪しいでしょうか? 4.4からの移行です。レジストリとか?? ブラウザでどっかのページみようとした瞬間に落ちる。(ランダム)
レジストリは使ってない筈 ウイルスじゃね?CRCかMD5を
4.5のパグだから素直に4.4使っておいたほうがいいよ
ありがとうございます。crcなどはどこに乗ってるんですか? 4.4とは別フォルダをしようして、新規に4.5juneをいれて、exeをろだの+5に したんですが・・・。(+3も少し使用。それと、9x版も少し起動したかも) デフォルトcfgファイルは4.4および4.5とも同じ形式ですか?それなら 4.5の設定を4.4に移そうかな。こっちの設定の方がいろいろ便利だったので。 一応、ウェブキャッシュを消して見た。
peercast、ロダのパス…。 作者の普段の行動が手に取るように分かってしまうんだけどなんて魔法?
? ( ゚д゚ )
つ Wiki
[HTTP headers]
In = FALSE
Out = TRUE
Key = "Cookie: 29ch html2dat (out)"
URL = "$OHDR(User-Agent: Monazilla/1.00)"
Replace = "text=dat<>1<>0<>false<>mycss=<>0<>-1<>3000<><><><>"
In = FALSE
Out = TRUE
Key = "URL: 2ch - 29ch kakolog Redirect (Out)"
URL = "$OHDR(User-Agent: Monazilla/1.00)"
Match = "
http:// (([^.]+)\2.2ch.net|(www(2|)\0$SET(2=bbspink\0)|([^.]+)\0$SET(2=bbspink-\0)).bbspink.com)(:80|)/([^/]+)\3/((kako/([0-9]+{4})\4/\4([0-9])\5/
\4\5([0-9]+{5})\6|dat/([0-9]+{4})\4([0-9])\5([0-9]+{5})\6)$SET(7=\4\5\6)|(kako/([0-9]+{3})\4/\4([0-9]+{6})\5|dat/([0-9]+{3})\4([0-9]+{6})\5)$SET(7=\4\5)).dat"
Replace = "$RDIR(
http://makimo.to/2ch/\2_\3/\4/\7.html )$FILTER(false)"
googleの検索結果のソースが改悪されて異常に使いにくくなった。 ・「○○の検索結果」と書かれていたのが、ただの「検索結果」に。 ・イメージ検索やキーワードなどが、適当な場所のセルに独立して収められるようになった。 ・検索結果の表示される横幅が狭くなった。 こんなところかな? ユーザスタイルも書き直さなければならない。 どうしよう、これ。なんでこんな使いにくいシステムにせにゃならんのか理解に苦しむ。
デフォルトフィルターの”Set-cookie: Make all cookies session only (in)”が効いていないみたいなのですが、SyleraなどGeckoではつかえないのでしょうか?
98 :
95 :2006/12/15(金) 16:18:34 ID:7YuBUavy0
ごめん。なんか勘違いしたみたいだ。 後で同じキーワードで検索してみたけど、>95のようにはならなかったよ。 それなら、あのとき見たものは何だったんだろうな。 またそういうことがあったら、何か法則などがないか試してみる。
たまに実験してるからそれに当たったんじゃね? 何時の間にかなおってるとか何度か有ったし。
ヘッダフィルタ(out?)で、GETメソッドのURL内の任意の文字列を全て置換するには、どうしたらいいんでしょうか? Unicodeのページで、全角空白%E3%80%80を半角空白%20に全て変換したのですが。 ぶっちゃけグーグルですが。
>>100 以前私が作ったもので良ければ..。
[HTTP headers]
In = FALSE
Out = TRUE
Key = "URL: del double-byte space and out-encode (out)"
URL = "www.google.co(.jp|m)/*\?*q="
Match = "http://(\#(%E3%80%80$SET(#=+)|([?&])\#oe=[^&]+\&+))+{1,*}\#"
Replace = "$JUMP(http://\@)"
任意のサイトに google の検索フォームを追加するフィルタのα版。
現在開いているサイト内のみを検索対象にする。
ただし、サブドメインや独自ドメインなどでないサイトではだめかも。
とりあえず書いてみましたというところで。
Name = "insert search form (2006.12.19)"
Active = TRUE
URL = "$KEYCHK(g)"
Limit = 16
Match = "(^(^</body>))"
Replace = "\r\n\r\n<form action="
http://www.google.co.jp/search " method="get">\r\n"
"<p><input type="text" name="q" size="50" value="Google" \r\n"
"onfocus="if(this.value=='Google'){this.value=''};" \r\n"
"onblur="if(this.value==''){this.value='Google'}">\r\n"
"<input type="submit" name="btnG" value="Google Search">\r\n"
"<input type="hidden" name="hl" value="ja">\r\n"
"<!-- input type="hidden" name="ie" value="Shift_JIS" -->\r\n"
"<!-- input type="hidden" name="oe" value="Shift_JIS" -->\r\n"
"<input type="hidden" name="num" value="20">\r\n"
"<input type="hidden" name="as_sitesearch" value="\h"></p>\r\n"
"</form>\r\n\r\n$STOP"
$STOP が効かない。
$KEYCHK のキーを押している間は無限にマッチするので危険。
$STOP は置換テキストでも使えるそうだけど、
なぜかただのテキストとして扱われているもよう。なぜだろう?
>$STOP が効かない。 ワロタw
ワラワレタ
$STOPの使い方を日本語訳サイトで確認しるw
$STOP → $STOP() アフォ杉 あー。せっかく赤字で書かれていたのに気づかなかった。 >105 どうもありがとう。
「`ー'′/ / ヽ、 \ \ ヽl}::.:)、 \
l_,ィ / / l l 、 l `、 {:|}く\ヽ/
ノ ,′ ! { | l| | l ):|} ノ|:「´
. ヽ∧| , | | l | l| | l| {:|!::)|:
|::l| | | l 、 | l | _,厶| j| {::|}::} |」
l:::| `、!| \ ヽ、 |,.イ,斗予 | |{K!j |
>>106 〈:;小、ヽヽ、T,Zニミヽj ^ヾrシ | |ァ1 | いい子ね…
| \ヽN {ヾtク | ト |_| |
. | | l \ `- /!| |::..::.`:┴-、
. | | | | > 、 __ /::..::|| |::..::..::..::..::..:ト、
| j /| l/::..::..::..::..rクニミ::../| |::..::..::..::..::./::..`ヽ、
. l ! //l l::..::..::..::/;ハミZシ//| |::..::..::..::..:/::..::.`ー┴―-ォ
j レ'∧! ,'::..::..::.〃::..::..::.レ'/::| |::..::..::..::r'::..::..::..::..::..::..::/::|
/ / / /| ハ::..::..::..::..::..::. /l ト、| |::..::..::..::{ー-::.ハ::..::..:: /::..|
. / / |{::.| ||::.\::..::..::..::../::.| l::.| |::..::..::./::..::..::/::..\::./:ヽ:j
( 真紅氏 )
Name = "google 2ch to mimizun"
Active = TRUE
URL = "$TYPE(htm) [^.]+.google.co(.jp|m)/search"
Limit = 2048
Match = "($NEST($NEST(<a\s,*href=$AV(
http:// ([^.]+.2ch.net)\2/test/read.cgi/([^/]+)\1/([0-9]+)\3*)*,>),</a>))\9"
Replace = "\9<a href="
http://mimizun.com:81/log/2ch/\1/\2/\1/dat/\3.dat >m</a>"
googleでヒットしたもののうち2chへのリンクにmimizunのdatへの直リンも追加するフィルタなのですが、
このフィルタをオンにすると画面がおかしくなります。
ソースは思った通りにできあがってるのでどうもJAVA SCRIPTがじゃまをしているように見えるんですが、
どうにかこれを使い物にできないでしょうか。
Name = "google 2ch to mimizun 2"
Active = FALSE
URL = "$TYPE(htm) [^.]+.google.co(.jp|m)/search"
Limit = 2048
Match = "($NEST(<span\s,*class=$AV(a)*,>)([^.]+.2ch.net)\2/test/read.cgi/([^/]+)\1/([0-9]+)\3*</span><nobr>$NEST($NEST(<a\s,>),</a>)[^<]+$NEST($NEST(<a\s,>),</a>))\9"
Replace = "\9 <a href="
http://mimizun.com:81/log/2ch/\1/\2/\1/dat/\3.dat >mimizun</a>"
こっちは苦肉の策で
pc8.2ch.net/test/read.cgi/win/1149050460/-100 - 35k キャッシュ - 関連ページ
↑を
pc8.2ch.net/test/read.cgi/win/1149050460/-100 - 35k キャッシュ - 関連ページ mimizun
に書き換えるようなフィルタなのですが、やはりこれもソースでみるとうまく行っているのに描画されたものはおかしいです。
pc8.2ch.net/test/read.cgi/win/1149050460/-100 - 35k mimizun キャッシュ - 関連ページ
pc8.2ch.net/test/read.cgi/win/1149050460/-100 - 35k キャッシュ - mimizun - 関連ページ mimizun
pc8.2ch.net/test/read.cgi/win/1149050460/-100 - 35k キャッシュ - 関連ページ
というような置き方も試してみましたが、ことごとく失敗しました。
>>110 [Patterns]
Name = "( apricot-fizz.net ) kill bottom ad"
Active = TRUE
URL = "bbs01.apricot-fizz.net/$TYPE(htm)"
Limit = 19
Match = "<hr><center><iframe"
Replace = "</div><p><br><br></p></body></html>\k"
>>111 早速作っていただいて、ありがとうございます。
でも・・・・・・消えないです・・・・・(T T)
>>113 すまそ、トップしか見てなかった。 ついでに元画像を表示させるようにした。
それと後からいろいろ追加出来るように出力するものは\9に入れる仕様に変更。
[Patterns]
Name = "( apricot-fizz.net ) kill bottom ad +alpha"
Active = TRUE
URL = "bbs01.apricot-fizz.net/$TYPE(htm)"
Limit = 1024
Match = "$NEST(<iframe,</iframe>)|<a\shref=$AV(./\?command=GRPVIEW*)([^>]+> <img\s[^>]++src=)\0"
"$AV((./grpview.php/[0-9]+.)\1[0-9]+.([0-9]+.[a-z]+{3,4})\2)$SET(9=<a href="\1\2"\0"\1\2")"
Replace = "\9"
>>114 ありがとう!ありがとうございます!。
ほんとうに助かりました。
お手数をおかけしました。
繰り返し、トンです!
(^-^;)ノシ
[Patterns]
Name = "image inline ext (+2ch) [2006.12.23]"
Active = TRUE
URL = "$TYPE(htm)"
Bounds = "$NEST(<a\s[^>]+>,</a>)"
Limit = 4096
Match = "([^>]++href=)\0$AV((([^/]+//)\1(ime.nu/|ime.st/|pinktower.com/|www2.ime.st/|)|)(\2)"
".(jpg|gif|bmp|png)\3(.html+|)\4)([^>]+>\s+[^<]*</a>)\5($OHDR(User-Agent:*Opera)$SET(6=\\x2F)|)"
Replace = "\0"\1\2.\3\4" \5\r\n<span><a onclick="this.parentNode.innerHTML="
"(this.parentNode.innerHTML.match(/\\x2D\\x3Cbr\6\\x3E\\x3Cimg/i)!=null)?"
"this.parentNode.innerHTML.replace(/\\x2D\\x3Cbr\6\\x3E\\x3Cimg.*\\x3E/i,'\\x2B'):"
"this.parentNode.innerHTML.replace(/\\x2B/i,'\\x2D\\x3Cbr\6\\x3E\\x3Cimg src=\1\2.\3 border=0\\x3E');"
"return(false);" href="javascript:"> [\3]</a>+</span>\r\n"
ttp://tmp.2chan.net/img2/futaba.htm ですごいことになる問題を修正。
ふたば見てると切断バグの発生がすごい。 POSTの場合は発生しやすいのかも。
119 :
名無しさん@お腹いっぱい。 :2006/12/25(月) 17:19:41 ID:TqH+QEZr0
フィルターの作成をお願いします。
現在、
>>1 でダウンロードした、サイト別adkiller(新聞社など)と、
Youtubeの動画ダウンローダーを導入しています。
他の機能は切っています。
この状態で、「阪急リネア」のサイト(下のURL)を見ることができません。
http://dentetsu.hankyu.co.jp/linea/linea0107/welcome.htm 具体的には、
トップページの画像が表示されない。
リンクされているコンテンツページをクリックすると、
"HTTP 404 NotFound"となってしまう。
という症状です。
(ためしにFirefoxで表示したところ、ちゃんと見られました。)
これらを解決するフィルターあるいは方法があったら、
どうかご教示ください。お願いいたします。
一番簡単なところではSafeList.txtにdentetsu.hankyu.co.jpを追加する、とかが考えられるな。 もちろんそれだけの情報でははっきりとは言えないが。 SafeList.txtにかかれているURLにはProxomitronがOFFになるようになってるから何らかのフィルタが悪さをしているなら それを止めることが可能だ。 もう少し確かなことを知りたいならどのフィルタが原因か突き止めて、かつそのフィルタを示さなきゃ誰も答えられんよ。
121 :
119 :2006/12/26(火) 13:24:04 ID:rG7JhtUi0
>>120 回答、ありがとうございます。
Safelistへの追加を試みたところ、同様の症状のままでした。
もしやと思い、Proxomitronを切って、Proxyもなしで再接続したところ、
やはり同様の症状でした。
どうやら、Proxomitronのフィルターが原因ではなく、
Web側に問題があって、Vista+IE7.0では表示されないようです。
サイト側に、他の閲覧者にも、同じような症状が出ているケースがあるようだったら、
対応してもらえるように、との申し出を入れました。
お騒がせして、失礼いたしました。
回答に再感謝いたします。
携帯電話用のサイトを見るためにはどうすればよいのでしょうか。 下のではだめのようです。UAをただ書き換えるだけではだめなのかな。 In = FALSE Out = TRUE Key = "User-Agent: test (2006.12.17) (out)" URL = "$KEYCHK(x)" Match = "*" Replace = "DoCoMo"
>携帯電話用のサイト 一口にこう言っても携帯用のサイトにはいろいろな種類があってな・・・(以下略
UAをみて弾くサイトとIPから判断して弾くサイトがあるからな。 前者なら適当なUAを偽装すれば見れるが、後者の場合は偽装だけじゃ見れん。 携帯を使って接続すれば見れるかもしれないから、そこまでして見たいサイトならやってみては?
携帯をサーバー化するソフトってあるかな
すごく古いauの機種だけどそれだと充電するための穴にケーブルを指してPCに接続できるようだが。 携帯のデータをPCにバックアップするときにも使うだろうからどの機種も付いてるんじゃないかな。 詳しくはスレ違いだから適当な板で聞くのが早いかと。
もう「モデム」を知らない世代なのか…
128 :
122 :2006/12/29(金) 20:05:55 ID:05aZpxpu0
どうもありがとうございます。 IPで弾いていたとしたらどうしようもないですね……。 携帯は持っていないうえに使う気もさらさらないので、 UA偽装でだめならおとなしくあきらめるしかありません。
前フィルター投下してくれた人、ありがとう。 今日初めてmixiの足跡殺せたよ。 フィルター入れといて良かった。 ↓アクセスする時は気をつけてくれ。 www.nishishi.com/blog/2006/05/perl_use_strict.html www.nishishi.com/pt/sp/mr.gif
fc2web.com の上下のバナー広告消すフィルター作ったんだけど、 どうも、Limitのサイズを8kにしている辺りが、スマートじゃない気がするんだけど 他にやりようがあるカナ? Name = "Kill fc2web ad" Active = TRUE URL = "*.fc2web.com" Limit = 8192 Match = "<!-- St-HP-*<!-- En-HP-*-->" Replace = "<!-- Kill fc2web ad -->"
>>131 それは </html> の後にフッターが入ってるっていう前提だよね。
でも、fc2web は何故か、</body> 要素の中に入っちゃってるんだよね
>>129 ノシ mixi.jp/show_friend.pl?id=1741100 にアクセスしようとするね、きめぇ。
>>132 > でも、fc2web は何故か、</body> 要素の中に入っちゃってるんだよね
確かに、当該コメントはbody要素の内容としてありますが、<!-- St-HP-F -->...<!-- En-HP-F --> に限っては </body> の手前に挿入されるようなので
Match = "<!-- St-HP-F -->"
Replace = "\k</body></html>"
は有りだと思います。。
>>134 え〜と…それだと、フッターしか対象にしないよね。
>>130 で、俺が言いたかったのは、ヘッダー、フッター *両方* に対して一つのフィルターで
俺が作った奴より効率のいい方法は無いか?と、言う事なんだが…
>>135 正月からうぜーな。 これでどうよ。
Active = TRUE
URL = "[^/]++.fc2web.com/"
Limit = 16
Match = "<!-- St-HP-[HF] -->"
Replace = "<!-- St-HP-F \r\n"
纏めると低速になるよ
火消し成功。
>>140 こんなんでどう?
Active = TRUE
URL = "[^/]++.artemisweb.jp/"
Limit = 128
Match = "<script[^>]+> <!-- var jwdflt2_setting"
Replace = "\k"
>>132 へぇ、そんな前提あったんだ。
って、ねーよ。
>>135 >それだと、フッターしか対象にしないよね。
>>131 に現在ヘッダは挿入されていないって書いてあんじゃん。
底無しの馬鹿だなこいつ。
>>147 おまえだよ。 上に広告無いだろ? 目か頭おかしいの? 両方?
確かに <!-- St-HP-H --> <!-- En-HP-H --> はあるけど中身はからっぽだなw ad bloackedって表示されるようにしてたから最初空なのに気づかなかった。
/::::::/::::::::::::::::\/ |:::::/|:::::| |::::::| |::::|::::::::|:::::::::::::|::::::::::\::::::::::::::: :::::::/::::::::::::::::::/ ヽ、 |::/ |::::| |::::::| |::::ト、:::::|、:::::::::::|:::::::::::::::ヽ::::::::::: :::::/::::::::/::::::/ ,==>ト{_, |:::| |::::::| |::::| \|\::::::::|::::::::::::::::::|:::::::::: /|::::::/|:::::::| イ /( )、ヽ |:::| l`'十┼┼-----‐<「:::::::::::|:::::|:::::::::: |:::/::o::::::| | {::::::l|l|::!| V |:::::! レ/´,ィ´ ̄`ヽ::::ト、::::::::|:::::|:::::::::: レ'.:::::|::o::! ヽヾ、:::ノノ ヾ、| | /::ヽ、_ノレ' ヽ:::::::|:::::|:::::::::: /.:::゚:::∧:::::|(__)ニ==ニ | |::::::l|l|l:::::::| ト、::::!::::。::::::::: .::::::::::/::::ハ:::| ´ ̄ ̄` ヽヾ、;;;;;;;;;;ノ O::::o:::::::::::::::: ::::::::/::::/ .:ヾ、 .::: ´ ̄ ==‐- 二つ /::::::::::::::::::::::::::: :::::/::::/ .::::∧ ` /::::::::/::::::::|::::::::: ::/::::/ .:::::/::∧ ヽ`'ー--- 、 /.::::/:::::::::::|::::::::: あやまれ! /:::/ .:::::/.::/.::.ヽ |:::::::::; -‐::::.ヽ /.::::/:::::::::::::::::|::::::::: ::::;' .:::::/ .::i:::::::::.\ !:::/7:::::::::::::::::i /.::::/:::::::::::::::::::::::|:::::::: ちんこにあやまれ!!: .:::! .:::/ .:::::!:::::::::::::/\ V〈::::::::::::::::::::| ∠:::::/:::::::::::::/.:::/::::::|::::::::: ::::|:::/ .:::::::l::::::::::::/.::::::.\ \ヽ、_// /::::::::::::::::/::::/|:::::::|::::::::: ::::レ' .::::::::/::::::::::/.::::::::::::::.\ `'ー--‐' _,. ‐'"/.::::::::::::/.::::/::|:::::::l\:::: :::::::::::::/.::::::/.::::::::::::::::::::::.`'ー--‐''"´ヽ /.:::::::::/.:::::/::::|:::::::| \
htmlソースも見ないで、吠えてるのがいるなw
新年早々から荒れるなよ、こんなんじゃ次のクリスマスが思いやられるぞ。 ゴメンナサイの言えない馬鹿ってどこにでもいるからな。
また基地外コテが暴れてるのか
Opera使ってると
>>117 で画像開いた後、-クリックしても画像を折り畳めないと思ったら、
Opera9.02(Build:8585)だと画像閉じれたのに9.10(Build:8679)で閉じれなくなっちゃったのね
ITmediaへ直リンしても見れるフィルタって無いですかね? 自作しようと頑張ったんですが、どうにも出来ませんでした
156 :
ROMラー :2007/01/08(月) 06:39:12 ID:LEPWXyWC0
>>155 [HTTP headers]
In = FALSE
Out = TRUE
Key = "Referer: ==ITmedia== add Referer (Out)"
URL = "image.itmedia.co.jp/"
Match = "$URL(http://image.itmedia.co.jp/(l/im/|)(\0))"
Replace = "http://image.itmedia.co.jp/l/im/\0"
おまけでもう1つ。
ttp://image.itmedia.co.jp/l/im/pcuser/articles/0701/07/l_kn_ces06utilnive.jpg 上みたいなURLにアクセスしようとすると画像URLに直接ジャンプするフィルタ。
[HTTP headers]
In = FALSE
Out = TRUE
Key = "URL: ==ITmedia== Jump to Image (Out)"
Match = "http://image.itmedia.co.jp/l/im/\0"
Replace = "$JUMP(http://image.itmedia.co.jp/\0)"
>>156 おぉ〜〜〜〜
こんな早朝にこんなに早くレス頂けるとは思ってもみませんでした。
ありがとうございますm(__)m
FirefoxだとHTMLソースがmetaタグ1つのページで止まるからげっこ系の問題かも。 リダイレクトさせたいならHTTPヘッダ使ってくれ。 >ふたば
$LOG()
162 :
ROMラー :2007/01/10(水) 01:43:32 ID:slGPiTsh0
>>160 1、↓を access.txt というファイル名で保存しProxomitronのListsフォルダに置く。
-------------access.txt-------------
# LOGFILE
-------------access.txt-------------
2、↓をインポートして登録。
[Blocklists]
List.glog = "..\Lists\access.txt"
[HTTP headers]
In = FALSE
Out = TRUE
Key = "URL: Access Log Get (out)"
Replace = "$ADDLST(access, \u $DTM([Y/M/D H:m s]))"
こうなると、ファイル名を日、月毎に分けたくなるな…
164 :
ROMラー :2007/01/10(水) 06:25:14 ID:khceiTq00
訂正。 [Blocklists] List.access = "..\Lists\access.txt"
>>164 できました、ありがとうございます。
ちなみに
>>163 のようにするとこはできるんですか?
まあある程度ファイルが大きくなったら手動でaccess.txtの部分を
適当に書き換えればよさそうですが。
言い出した本人が言うのも何だけど、結論から言えば無理。 恐らくこれはセキュリティの観点からオミトロンから勝手にファイル生成できないようにしてるんだと思う。 $ADDLST の第1パラメーターに指定するのは、「リスト名」であって、ファイル名では無い。 なおかつ、リストに登録されたファイルは前もって作られていなければならない (ファイルサイズが0でも、ファイルが存在していなければならない)
[Patterns] Name = "Title URL Logger" Active = TRUE Limit = 256 Match = "<title>\1</title>" Replace = "<title>\1</title>$ADDLST(access,$DTM([Y/M/D H:m s])\n\1\n\u\n\n )" ついでにタイトルも記録するやつ 文字コード全く考慮無しなので化けまくる
HTMLタグの属性の値をテストしたいのですが、アンパサンドで区切って取得した後方の 属性の値のテストに必ず失敗します。何が悪いのでしょうか? 例: <tag(*a=$AV(\1)*&*b=$AV(\2)*)>$TST(\2=value_b) という条件で <tag a="value_a" b="value_b"> にマッチして欲しいのですが失敗します。 ・$TSTコマンドを削除するとマッチします ・(*b=$AV(\2)*&*a=$AV(\1)*) のように位置を入れ替える事でマッチします 実際には$TST内の条件を複雑にしたいです。分かり辛いかも知れませんが 答えて頂けたら嬉しいです。よろしくお願いします。
169 :
ROMラー :2007/01/10(水) 23:41:42 ID:jQy4m41g0
>>165 >>166 氏の言う通り新しくファイルを作成する機能はありません。
ただ、日曜日なら sun.txt、月曜日なら mon.txt 、火曜日なら ... という具合に
曜日や日時によって保存先のリストを換えることは出来ます。
もし外部プログラムを作るスキルがある場合はaccess.txtに保存されたログを振り分ける
プログラムを作って解決することが出来ます。 ( JScriptやVBScriptを使えば
正規表現を使った文字列操作、ファイル作成などが手軽に行えます )
>>168 Match = "( A & B ) C"
という検索表現の場合、処理される順番は A -> C -> B となります。
つまり、 $TST(\2=value_b) をテストする瞬間にはまだ \2 への代入は行われて
いないのでマッチしないわけです。
170 :
168 :2007/01/11(木) 11:35:03 ID:TizH018P0
>>169 なるほどそう言う訳ですか。ありがとうございます。助かりました !
[^<]+に変わる表現ってない?
ジパング語でおk
倭語
Impressのサイトで記事の折り返しをワイドな画面に合わせて変えるフィルタを作ったけど ウィンドウサイズを変えたら自動的に比率を変えられるようにしたい。 自分の腕では決めうち(620)しかうまくいかないので、誰か直してくれない? [Patterns] Name = "Impress Article Width Changer" Active = TRUE Multi = TRUE URL = "[^/]++.impress.co.jp/$TYPE(htm)" Bounds = "<(table|td)*<(tr|/td)>" Limit = 1024 Match = "\1 width=[#400:499]\2 \3" Replace = "\1 width="620" \3"
[Patterns] Name = "Impress Article Width Changer (JS)" Active = TRUE URL = "[^/]++.impress.co.jp/" Limit = 128 Match = "<end>" Replace = "<script type="text/javascript">window.onload = function(){" "prx_tbl_width = document.body.clientWidth - 160 - 300 - 30;" "prx_tbl = document.getElementsByTagName('TABLE');" "for (i=0; prx_tbl[i]; ++i)" " if (400 < prx_tbl[i].width && prx_tbl[i].width < 499)" " prx_tbl[i].width = prx_tbl_width;" "};" "window.onresize = prxResize;" "function prxResize() {" "for (i=0; prx_tbl[i]; ++i)" " if (prx_tbl[i].width == prx_tbl_width)" " prx_tbl[i].width = document.body.clientWidth - 160 - 300 - 30;" "prx_tbl_width = document.body.clientWidth - 160 - 300 - 30;" "}" "</script>" 作った よければWikiにもフィルタ投稿してね
>174 Firefox でしかテストしてない(Gecko系以外では絶対だめ)上に、 余計なのとか入っているけど、こんなのでよければ。フィルタじゃないよ。 @-moz-document domain("watch.impress.co.jp") { body > table:first-child, body > table:first-child + table > tbody > tr > td > div, body > table:first-child + table > tbody > tr > td > hr + table, body > table:first-child + table > tbody > tr > td > hr + table + hr, /*body > table:first-child + table > tbody > tr > td:last-child,*/ table[bgcolor="orange"], td[width="1"], td[width="10"], td[width="20%"], td[width="148"], td[width="111"], td[width="127"], td[width="160"], td.body-text > div, td.body-text > p[align="right"], p + div { display: none !important; } td.body-text { padding: 1.5em !important; } td[width="111"] + td > table > tbody > tr > td { padding: 0 1.5em !important; } }
table や td は、width を指定しなければ(既定値の)auto になるはず。 フィルタを使うのならば、width 属性を削除すればいいんじゃないかな。
あるよ
円満解決!
181 :
174 :2007/01/14(日) 16:44:39 ID:MdgOaCe70
>>175-177 レスサンクス。wikiにも投稿したよ。
とりあえず
>>177 のいうように、widthを削除してみた。
イメージしてた仕様に近づいた感じ。
Name = "Impress Article Width Changer"
Active = TRUE
Multi = TRUE
URL = "[^/]++.impress.co.jp/$TYPE(htm)"
Bounds = "<(table|td)*<(tr|/td)>"
Limit = 1024
Match = "\1 width=([#400:499]|[#900:999])\2 \3"
Replace = "\1 \3"
>>175 のやつで、ウィンドウ幅を小さくすると、記事欄が小さくなり過ぎちゃうので
prx_tbl[i].widthの下限を450ぐらいにすれば、俺が作ったのよりいいかも。
widthを削除した方が断然良いな ショック
$ADDLST コマンドでリスト(ここでは Deny)にURLから[ホスト名+パス]を 登録させたい場合、[ホスト名+パス]部分を指定する置換テキストはどの ようになりますでしょうか。 $ADDLST(Deny,\h\q) とやると、リストにはホスト部分までしか反映され ません。フルパスを登録させるのでしたら“ /u ”を使用すればいいので しょうけど… どなたか、お助けください。
パスは\p
google image (061103) +jsが、Opera9.0.2から9.1に乗り換えたら、 開いた後閉じれなくなったんだけど、 該当部分のソースを抜き出してローカルで試してみると閉じれる。 何でだろう? 同じ問題おきてる人って居る? もし、解決策があったら教えてもらえると嬉しい。
Kill off-site Imagesで使われてる
http:// (^\h) 表示サイトのホスト以外のこの表現、
指定から漏れることが結構あるけどこれProxomitron側のバグかな?
いろいろやり方変えてみたけどなぜかサイト以外なのに同一に判定される場合がある。
どなたか詳しい人検証してほしい
うpろだの広告キラーを入れて使ってますが、 gooのトップページの、右側と上に出てくる、 flashの広告が消えません。 これを消すフィルターを作ってくださいましな。 おながいしますだ。
188 :
名無しさん@お腹いっぱい。 :2007/01/16(火) 07:49:16 ID:+wMFIvzu0
>>186 うろ覚えなんだが\hって
セカンドレベルドメインまでしか判定してないんじゃなかったっけ?
www1.host.comもwww2.host.comも同一ドメインと見なすある意味便利な機能だが
yahoo.co.jpもgoogle.co.jpも同一ドメインと見なされてしまう欠陥機能でもある。
189 :
名無しさん@お腹いっぱい。 :2007/01/16(火) 08:49:56 ID:+wMFIvzu0
>>187 [Patterns]
Name = "goo AD killer"
Active = TRUE
URL = "[^.]+.goo.ne.jp/"
Limit = 7000
Match = "$NEST(<!-- ((h02|banner02|osusume|top_text|ad|ad_focus|pr)\0|Sniffer Code for Flash version=60) -->,<!-- /($TST(\0)|html.ng/cat=*) -->)"
190 :
187 :2007/01/16(火) 12:18:37 ID:9uCC6V930
>>189 まりがとう!!!!!!!!ございますだ。
びしっと消えてくれました。
感謝です!
サンプルがあれば直すのもできるが。 どんなURLに対してどんなURLへリダイレクトしたいのかが分からんからね。
193 :
名無しさん@お腹いっぱい。 :2007/01/19(金) 10:27:19 ID:Cdaf7IxG0
>>191 これたしか俺の作ったフィルタだったような気がする。
人大杉の時にオンライン2chビューアにリダイレクトするフィルタ。
1番上のフィルタは普通に動いてる。
一時的な鯖落ちとかで使えなくなってたんじゃないかな?
2番目のはサイト自体が閉鎖になったっぽい。よって修正不可能。
>>2 windows98質問レスから来ました。win98でyahoo動画を見るフィルターを教えていただきました。
一度は見れたのですが再度起動したら、テスト画像は見れるのに本編はスタートのクリックができなくて
見られません。proxomitronを再編集しようにも窓が開きません。どうなっているのでしょうか。
>>194 フィルターを入れたあとにProxomitronの設定を保存しないと再起動したら消えちゃうよ。
「ファイル」「デフォルトの設定に保存」ってやつね。
>>194 フィルタの出来がいまいちだったから手直しした。 この2つだけで動くはず。
正常に動けば白いウインドウが新しく開いてそこに動画へのリンクが表示される。
うまくいかない場合は他のフィルタを全部オフにしてProxomitronの更新ボタン押して
ブラウザのキャッシュを消してからもう一度試すと見れるかも。
[HTTP headers]
In = FALSE
Out = TRUE
Key = "User-Agent: YahooDOUGA for Win9x (out)"
URL = "streaming.yahoo.co.jp/|player.streaming.yahoo.co.jp/"
Replace = "Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1; .NET CLR 1.1.4322; .NET CLR 2.0.40607; .NET CLR 1.0.3705)"
[Patterns]
Name = "YahooDOUGA for Win9x (fix 2007/01/19 16:00)"
Active = TRUE
URL = "player.streaming.yahoo.co.jp/player/js/player.js | player.streaming.yahoo.co.jp/player/makeAsx.php\?"
Limit = 2048
Match = "if\(!chkEnvData\(\)\){ return false; }|//window.open\(url\);$SET(\0=window.open\(url\);)"
"|<ASX version="3.0">*<Ref HREF=$AV(mms://\1)*</ASX>$SET(0=Video URL = <a href="mms://\1">mms://\1</a>)"
Replace = "\0"
>>196 有難うございます。前のより少し変わりましたね。前のときは確かに保存しておりませんでした。
プロシキを設定するのは初めてでいい勉強になります。
質問です。このフィルターのみ設定すると、一般のwebページを開くときにはプロシキをはずさないといけないよのでしょうか。
proxomitronはPCの電源を落として長時間しないと編集できないのでしょうか
おもしろいねえ、ちみw
楽しんで貰えたようで何よりです
フロシキオミトロン ピロシキオミトロン オミトロンを風呂敷と呼ぶのも悪くない。
フロシキオミトロン ピロシキオミトロン ヒロユキオミトロン もう2chって呼ぼうぜ
>>204 >>203 皆さんから3通りのフィルターを教えていただきました。ただただ人の作ったものを利用するだけのレベルの者に対しても丁寧に応対してくださることに
感謝します。こうしている内にだんだんと分かってくるのが,何とも言えないくらい楽しいのです。これからも切り捨てることなくよろしくお願いしします。
2度成功したのですが、今、私のパソコンはデスクトッップのproxonのアイコンをクリックしても設定画面が出てこくなりました。
それで新しいのを試せないのが残念です
>>205 画面の右下にProxomitronのアイコンが表示されてると思うのでそれを左クリックしてみて。
アイコンを右クリックするとメニューが出るよ。
>>204 やっとproxomitronを再インストールして、設定をしなおしました。これで完全に動画を見るボタンをクリックすることが出来ます。
ここ数日、仕事から帰ってパソコンをいじるのが楽しみでした。出費を惜しまず2000やXPやはたまたvistaにするのもよし、
はたまた、こうして古いなじみのパソコンを手探りでいじるのも味わい深いものです。理屈がわかればもっと楽しいのでしょうが。
今 夜逃げや本舗を視聴しております。有難うございました
改行しろよ
改行なんてただの飾りです
エロイ人にはそれが・・・一番大事〜♪(槙原)
211 :
名無しさん@お腹いっぱい。 :2007/01/21(日) 21:27:00 ID:Jr8sS6wH0
>>204 Accept-Encoding: Delete gzip (out)
はURLに制限かけないとまずくないですか?
まずくない
美味
この流れ嫌いじゃないぜ
他人に何から何まで任せておいて それで楽しいとか言われてもカチンと来る
216 :
204 :2007/01/22(月) 12:31:13 ID:NRPrM7dD0
>>質問者さん 害虫がわいてますがお気になさらず。
>>211 不具合はないだろうけど
通信が無駄になるから制限した方が良いと思う
218 :
名無しさん@お腹いっぱい。 :2007/01/23(火) 14:26:49 ID:k9Y8Z01V0
Yahoo動画に変更があったようなのでフィルタをちょっと書きかえ。 [Patterns] Name = "YahooDOUGA for Win9x (07/01/23)" Active = TRUE URL = "i.yimg.jp/images/streaming/js/stream_env_func.js|player.streaming.yahoo.co.jp/player/js/player.js|player.streaming.yahoo.co.jp/player/makeAsx.php\?" Limit = 2048 Match = "function isStreamingEnvCheck\(\) {$SET(\0=\kfunction isStreamingEnvCheck\(\){return true;})" "|if\(!chkEnvData\(\)\){ return false; }|//window.open\(url\);$SET(\0=window.open\(url\);)" "|<ASX version="3.0">*<Ref HREF=$AV(mms://\1)*</ASX>" "$SET(0=<ASX version="3.0">\r\n<Entry>\r\n<ref HREF="mms://\1"/>\r\n</Entry>\r\n</ASX>\r\n)" Replace = "\0"
ヤフーオークション用のフィルタがあったら教えてください 一応検索はしたのですが 今のフィルターでは入札のフォームまで消えてしまって困ってます
>>220 私の過去をフィルタリングしたいんです。
222 :
名無しさん@お腹いっぱい。 :2007/01/24(水) 07:59:08 ID:kTo/hI+b0
Googleイメージがまた変わった?
みたい なお巣のめんどくせー
225 :
219 :2007/01/24(水) 14:45:19 ID:VWFikHoe0
>>224 広告だけが消えて入札フォームが消えない、ものであればいいのですが
大変そうですので、入札ページなどはバイパス状態でも構いません
解りにくくて済みません
>>225 その「今のフィルター」ってのはいったい何なんだ
>>226 YAHOO! JAPAN Ad Killer 2006-06-16
のmatchURLを少し書き換えて使っています
あぷろだにあるkoukoku eraserに Yahoo AD Killerっていうフィルタが含まれてるから それ使ってみたら?
>>228 どうもありがとう
早速DLして使ってみます
こんなのでよかったら。
[Patterns]
Name = "YahooAuction ad killer"
Active = TRUE
Multi = TRUE
URL = "[^.]+.auctions.yahoo.co.jp/$TYPE(htm)"
Limit = 6000
Match = "<td\s[^>]++>\n<!--\nLEFT COLUMN\n-->*<!--\n/LEFT COLUMN\n-->\n</td>|"
"<a href="
http://ard.yahoo.co.jp/*</a >|"
"<script language=$AV(JavaScript|javascript)>*</noscript>|"
"<img\s[^>]++src=$AV(
http://ai.yimg.jp/[^ >]++gif)[^>]+>|"
"$NEST(<map name=,</map>)"
Replace = "<!-- Kill Yahoo! ad -->"
>>230 凄くすっきりした画面になりました
どうもありがとうございます
Sn Uploader系のアップローダーでDLKey→[DownLoad]ボタンを押した直後に自動的に出る ファイルのダウンロードダイアログを出現させなくするフィルターはありますでしょうか。 「飛ばない場合はこちらから」を自発的にクリックしたとき初めて ファイルのダウンロードダイアログが出るようになれば、と思ってます。
だ、誰か、、、新googleイメージに対応して、、、く、、、れ、 、、 、、、、ガクッ
>>233 パソコン遊戯のTOPで公開されてる。 ちゃんと動くかは知らん。
ちなみにmixiに自動ログインするフィルターもTOPにあるが入れないほうがいい。
これ入れるとmixi以外のウェブページ側からmixiのログインパスを盗まれる危険がある。
つまり今のNoriya氏のmixi用メアド、Passは取ろうと思えば取れるw
>234 見てみた。mixiのあれって、なんで盗まれるかもしれないの? Noriya氏はいろんな検索エンジンを使っているのかな。 自分はGoogleしか使わないから、Google用のユーザスタイルだけで十分。 @-moz-document domain("google.co.jp"), domain("google.com") { div.ch, p.e, body > br, noscript + div, body > center > div[align="right"], table.bt td:first-child, table[align="right"], div#navbar ~ center, body > div + center, body > div + center ~ center, body > br, body > br ~ center { display: none !important; } いらないところを消すだけならこんな感じで。
google image (061103) +js+の改良お願いします。
それがどんなフィルタか分からんけどwikiのやつじゃないの?
Google image redirector [061103] の修正お願いします。 これ、四天王フィルタの一つなんです…。
"四天王"なら自分で修正する術を身に付けたら? まさか、これからもその"四天王"とやらのどれかが効かなくなるたびに駆込み寺よろしくここに書き込むつもりか?
そうです。依頼スレですから。
>>237 236です。
googleイメージで画像の上に画像への直リンと画像のあるサイトのurlへの別窓で開くリンクが出来、
画像をクリックすると実サイズで表示、再度クリックで元のサイズに戻るというフィルターだったと思います。
wikiにあるGoogle Image: Image Change (070124)がそれそのものでした。
教えてくださってありがとうございました。作成された方も感謝いたします。
ただ画像のサイズがカーソルを当てないと見られないようになったのは残念です。
この依頼は絶対受けないと心に決めた。
黙ってスルーすればいいでしょう。 説教もウザイだけですよ。
依頼やクレクレは許されてないわけじゃないが作成するのが主旨のスレであって 自分の態度ぐらいはわきまえてほしいもんだ
>>238 はわきまえたつもりですよ。スレの趣旨的にも問題は無いと思います。
>>239 みたいな嫌がらせが無ければ、雰囲気も悪くならなかったでしょう。
このスレは作成依頼されたフィルタを有志により作るスレッドだから何の問題もないよ
>244 NGIDにぶち込んでおけ。相手にする価値はない。
元々はクレクレ君専用スレってことでスタートしたからね。
>>235 URLがmixi.jp.xrea.com/passget.html とかでも動く。
>>247 自分だけ勝手にNGにすれば良いでしょう。
あなたが
>>239 ですか?
本スレではなく、依頼スレに書いてこの有様。
ムカッときて
>>240 の対応は正直良くなかったと思っていますが。
Noriya氏修正入れたね。 何の説明もなくこっそり "/" を追加するのはどうかと。
Google Image: Image Change (070124)がGoogle Image: Image Changeと同じように動くのを確認。 書いてくれた人GJ!
>248 修正前がどうなっていたかわからないけど、納得した。 どうもありがとう。 URLマッチって、そんな穴というか注意点があるのね。
>>252 修正前
URL = "mixi.jp$TYPE(htm)"
修正後
URL = "mixi.jp/$TYPE(htm)"
何も知らずに修正前のを使ってる人は切り捨てっぽい。 無責任だなぁ。
責任取れって言われても困る
責任なんてない
[Patterns] Name = "Google image redirector [070130]" Active = TRUE URL = "images.google." Limit = 512 Match = "<script*>$SET(9=<script defer="defer" language="null">)" "|" "<a href=/imgres\?imgurl=\0\&imgrefurl=\1\&h=*>" "$SET(9=<a href=$UESC(\1) target=_blank>Link</a><a href=$UESC(\0) target=_blank>)" Replace = "\9"
所詮はしょぼスキル自慢の自己満サイトだしな。
>>256 検索結果に画像やリンクが一切表示されません><
BannerBlasterが効いてるんじゃねーの?
261 :
名無しさん@お腹いっぱい。 :2007/01/30(火) 21:50:29 ID:izvs/DMb0
専用アップローダーのホストエラー画面編集パッチで4.5に対応したのってないかな?
その作業を自動化するだけだよ 必要ないならそれでいい
[Patterns] Name = "Google image redirector [070131]" Active = TRUE URL = "images.google." Limit = 800 Match = "<script*>$SET(9=<script defer="defer" language="null">)" "|" "<noscript>|</noscript>" "|" "<a href=/imgres\?imgurl=\0\&imgrefurl=\1\&h=*>" "$SET(9=<a href=$UESC(\1) target=_blank>Link</a><a href=$UESC(\0) target=_blank>)" Replace = "\9"
>>264 ブックマークを暴露するウイルスがあるから
そういうのはやらない方が良いよ
>>266 イメージ検索改変前の[061103]と同じ動作になりました。
どうもありがとうございました。
>>266 数秒たってもリダイレクトされない場合は、ここをクリックしてください。
ってセージがでるよ〜。
俺は"google image (060810_kai) +js+"ってやつでずっと使えてるな
google imageはヘッダフィルタの方使ってるから、こちらもみんなが騒いでる中で 二年ぐらいはなんも書き換えずにそのまま利用できてるなぁ・・・ 単純にダイレクトで飛べればいいだけなおいらには、これで十分だ
[Patterns]
Name = "Google image redirector [070131a]"
Active = TRUE
URL = "images.google."
Limit = 800
Match = "<a href="\+e\+b.n\+"><img"
"$SET(9=<a target=_blank href="+decodeURIComponent(b.p.match(/[^&]+/))+">Ref</a>"
"<a target=_blank href="+(b.c.indexOf("://")<0?"
http:// ":"")+decodeURIComponent(b.c)+"><img)"
"|"
"<a href=/imgres\?imgurl=\0\&imgrefurl=\1\&h=*>"
"$SET(9=<a href=$UESC(\1) target=_blank>Link</a><a href=$UESC(\0) target=_blank>)"
Replace = "\9"
google image 大人気だな
>>272 折角書き換えていただいたにもかかわらず
登録しても マッチしません。
wikiのを使います。
ありがとうございました。
2chの専ブラみたいにあらゆるサイトにNGワードを指定したいんですが、 何か良い方法はありますか? あるNG文字列をあらかじめ指定した別の文字列に置き換えることさえ出来たらいいんですが。 普通に指定しただけでは2chのスレタイトル程度なら置き換え可能なんですが、 他のサイトには適応できないのですが。
>275 Matchに「NGワード」を並べて書き、Replaceに「別の文字列」を書く。 あらゆるフィルタの中でも、もっとも簡単な部類に入る。 そのくらいなら自分で書けるようになった方が自分のためだと思うが……。 自分で書く気がないなら、NGワードの例を出してほしい。 あと、下の2行の意味がなからない。
Google image redirector いいなあ。
>278 ん? ちゃんとマッチしたよ。 改善点は、日本語の場合、Shift_JIS以外の文字コードにも対応させること。 EUC-JPとUTF-8ね。ISO-2022-JPはProxomitronと相性が悪いようだから、 正常に動作するかはわからないけど、たぶんOKだろうと思う。 あとは、NGワードがたくさんあるようならば、$LSTを使った方がいい。 Limitももっと減らしていい。
ヘッダフィルタでcharsetを見てフラグを立てて
そのフラグが例えば1だったらshift-jis、2だったらEUC-JPとかにして
マッチ欄でスイッチすればいいのかも
マッチさせるワードは
>>5 のコード変換スクリプトで
そこまでしなくていいのか 試してないけど、とりあえずmatch欄を [%1B][%24][%62][%25][%56][%25][%69][%25][%26][%25][%36][%1B][%28][%42]| [%83][%75][%83][%89][%83][%45][%83][%55]| [%A5][%D6][%A5][%E9][%A5][%A6][%A5][%B6]| [%E3][%83][%96][%E3][%83][%A9][%E3][%82][%A6][%E3][%82][%B6]| [%30][%D6][%30][%E9][%30][%A6][%30][%B6]| [%D6][%30][%E9][%30][%A6][%30][%B6][%30] にしたらいいんじゃ? 上からISO-2022-JP(JIS)、Shift_JIS、EUC-JP、UTF-8、UTF-16BE、UTF-16LE
>>284 おおっ、ありがとうです。
とても助かります。
便乗で質問なんですが
>>278 のような場合で
特定の文字のあるサイトを、完全に非表示にさせたい場合はどうすれば良いですか?
ベタですが Limit = 32767 Match="<html*NGな文字列" Replace ="\k" とか?
$TST使ったことないからよくわからんけど。 NGワードにマッチしたら $SET(NGword=true)。 $TST(NGword=true) のときに html, body { display: none } になるよう、 <html>か<body>あたりを書き換える。 ただ、これだとなんで非表示になったのかわからないから、 適当な背景画像やCSSの content あたりを使ってわかるようにするか、 あるいはどこかにリダイレクトしてもいいし、\kしてもいいかも。
>>289 >>290 おかげさまで、非表示にできるようになりました。
教えて下さりありがとうございました。
$TSTというのは、自分には難しそうですが勉強してみます。どうもでした。
リダイレクトが一番手っ取り早そうだな。 検出するときはこんな感じで。 Limit = 16384 Match="$NEST(>,*NGWARD*,<)" Replace ="\k"
Google image redirector [070130] を使っています。 イメージで検索すると、イメージが全く表示されません。 (下のGoooooogle→ は、表示される) 一度、バイパスにして、リロードすると、画像が表示され、 バイパスを外して、リロードすると、今度は普通に表示され、 画像の左に、Link と、表示されます。 バイパス前後で、URLを比較してみると、最後に、 &ei=W_HCRczoLMWsJP-bpZ4O&gbv=1 が、付いていない場合、表示されないようです。 これは、なぜこのような動作になってしまうのでしょうか? ログと、デバッグで見てみましたが、わかりませんでした。
js off と認識されたらそれが付くみたいよ
Google image redirector [070130]は
非Javascript版のGoogleイメージでしか使えないよ。
>>266 のGoogle image redirector [070131]か
>>272 のGoogle image redirector [070131a]だと
問題なく動くのでこっち使ってみたらどう?
296 :
名無しさん@お腹いっぱい。 :2007/02/02(金) 22:08:27 ID:UcPFGIJe0
フィルターの製作をおながいします。
NIKKEINET:
ttp://www.nikkei.co.jp/ の各ページ(主要、経済、各企業etc.)の
バナー&フラッシュ広告を削除するフィルターを作ってください。
よろしくお願いします。<(_ _)>
[HTTP headers] In = FALSE Out = TRUE Key = "URL-Killer: NIKKEI AD KILLER (out)" URL = "gavit.nikkei.co.jp/js.ng/" Replace = "\k"
298 :
296 :2007/02/03(土) 12:33:02 ID:2RLsb/q/0
>>297 すっきりと広告が消えました。
ありがとうございます!ヽ(´∀`)ノ
フィルターの製作をお願いしたいのですが、
http://www.aucfan.com/ の検索結果に出てくる広告、
今まではさほど気にならなかったのですが、
急に広告が増量されて見づらくなってしまいました。
広告を消すフィルターをどうかよろしくお願いします。
報酬を聞こうか
>299 ck.jp.ap.valuecommerce.com/ を\kする。 あとはインラインフレームを消せば、ほとんどの広告は消えそうだ。
[Patterns] Name = "aucfan.com ad killer" Active = TRUE URL = "[^.]+.aucfan.com/" Limit = 2560 Match = "<!-- [%A5][%A2][%A5][%C9][%A5][%BB][%A5][%F3][%A5][%B9] -->*<!-- /+[%A5][%A2][%A5][%C9][%A5][%BB][%A5][%F3][%A5][%B9]([%bd][%aa][%ce][%bb]|) -->" "|<!-- 88\*88 [%a5][%d0][%a5][%ca][%a1][%bc][%a5][%b9][%a5][%da][%a1][%bc][%a5][%b9] -->*<!-- /88\*88 [%a5][%d0][%a5][%ca][%a1][%bc][%a5][%b9][%a5][%da][%a1][%bc][%a5][%b9] -->" "|<!-- 468\*60 [%b9][%ad][%b9][%f0] -->*<!-- /468\*60 [%b9][%ad][%b9][%f0] -->" "|<!-- SUPER_REACH_TEXT_AUCFAN [%b9][%ad][%b9][%f0] -->*<!-- /SUPER_REACH_TEXT_AUCFAN [%b9][%ad][%b9][%f0] -->" "|<!-- 200\*200 [%b9][%ad][%b9][%f0] -->*<!-- /200\*200 [%b9][%ad][%b9][%f0] -->" "|<!-- [%b9][%ad][%b9][%f0][%a5][%b9][%a5][%da][%a1][%bc][%a5][%b9] -->*<!-- [%b9][%ad][%b9][%f0][%a5][%b9][%a5][%da][%a1][%bc][%a5][%b9] -->"
>>300 それを言うなら
「用件を・・・聞こう」
だろ
ユーザースタイルシートをブラウザではなく、Proxomitoronで指定させる方法はありますか? よろしくお願いします
>>304 俺はこういうの使ってる
[Patterns]
Name = "Apply my style sheet"
Active = TRUE
URL = "$LST(CSS-List)"
Limit = 1
Match = "<start>"
Replace = "<link rel="stylesheet" href="file:///C:\\Progra~1\\ProxN\\html\\white.css">"
>>305 俺のとほとんど同じだ
$LSTでスタイルシートを使い分けられるのが便利だよね
あと俺は\dを使って href="\dhtml/Hiragino.css" にして
最後に$STOP()を入れてるけど$STOP()は蛇足かな?
特定のURLをクリックしたら、そのURLを違うのに置き換えて違うアプリに渡す事って出来ますか? ってのも、ニコニコ動画のURLをクリックしたらその元になったYouTubeのURLを TubePlayerってアプリに渡したいんですよ。
初めてフィルタを作りますた。 [Patterns] Name = "JWord Popup killer (5 Feb 2007)" Active = TRUE Multi = TRUE Bounds = "<script*</script>" Limit = 512 Match = "*(jword|jwd)*" Replace = "\n<!-- JWord Popup killer -->\n"
>>302 どうもありがとうございました。
おかげで以前よりすっきりして見やすくなりました。
312 :
293 :2007/02/05(月) 09:01:48 ID:gffJdKmF0
>307 たぶんだけど新しいスキームを作って、そのスキームにポチエスのURL版を関連づければいいんじゃないかな。 どうやってそれを加工してTubePlayerに渡すかという問題が残るが。
某所では偽プロトコル?とか言ってたな
>>310 リンク元に直接YouTubeのリンクも欲しいのよ
だもんで、頑張ってこんなの作ってみました。
一応は動いてる。もし良かったらもっと良い感じにしてくれると嬉しい
[Patterns]
Name = "nicovideo ==> YouTube"
Active = TRUE
Multi = TRUE
Bounds = "<a*</a>"
Limit = 256
Match = "(<a href="
http:// (|ime.nu/)www.nicovideo.jp/watch?v=ut\1"*</a>)\9"
Replace = "\9 <a href="
http://www.youtube.com/watch?v=\1 " target=_blank><font color="red" size="-2">YouTube</font></a>"
>>313 そういう難しいのよく分からないから、SleipnirのURIアクションで渡す事にしました。
316 :
名無しさん@お腹いっぱい。 :2007/02/05(月) 20:24:36 ID:05vrgQwq0
フィルターの作成依頼でございます。 Exiteの「ニュース」の各ページの、バナー広告とFlashを殺すフィルターを、 どうか作っていただきたくおながいします。 (おじぎ)
まずは既存のよくできた汎用広告除去フィルタを試したのかな。 個別にフィルタを作るまでもなく、たいがいのフィルタ機能は既に存在しているので (場合によっては手を加える必要がある可能性もあるが) まずはthinkingさんのところやアップローダをよく見てみることを勧める。
(ねごと)
319 :
310 :2007/02/06(火) 02:15:10 ID:qTo28GH/0
すまん、既に試してたのね
321 :
316 :2007/02/06(火) 10:29:30 ID:W/yMEaXg0
>>317 レス、ありがとうございます。
汎用フィルタはすべて導入しましたが、
NIKKEIだけは消えていないんです。
どうぞ、作成をよろしくおながいします。
322 :
316 :2007/02/06(火) 12:24:41 ID:W/yMEaXg0
>>317 たびたびすいません。
既存のフィルターをいろいろと試していたら、
何とか消すことができました。
ちゃんと確かめないでカキコしてごめんなさい。
これからは注意します。
またわからないことがあったら、
調べられるところはちゃんと確かめて、
それでもわからないときにだけ質問しますので、
教えてくださいね。
ありがとうございました。
323 :
名無しさん@お腹いっぱい。 :2007/02/06(火) 17:39:38 ID:pGgI1Jpm0
YouTubeで全画面表示から次の動画を選んだときに 次の動画も全画面で表示するようなフィルターを作っていただけませんか。 前のアドレスがwatch_fullscreenだったら 次もwatch_fullscreenにするようなやつ。
クレクレ君をスルーするスレにようそこ。
before/afterのサンプルを出すなら別だが、わざわざ見もしないURLを他人のために踏んでソース見て……なんて普通はせんわな。 このスレは無報酬労働者の溜まり場じゃねーよって話だ。
あっそ
作成依頼じゃなくて添削依頼お願いします。 いくつかあったフィルタを纏めてたんですが、上の方のマッチを纏めるのが上手く行きません。 また、一部のリンクには効かないようなので手を加えて頂ければと思います。 行数足りないので、下にフィルタを貼ります。&は半角です。
[HTTP headers] In = FALSE Out = TRUE Key = "Referer: byebye kusokkasu (Out)" Match = "?" Replace = "\k"
高スキルの人がいなくなったスレにようそこ。
>>326-327 ここは元々Windows板の本スレからクレクレ君を隔離したスレだドアホ。
それを承知の上で書いてるんだドアホ。
>>333 サンクス。マッチングコマンドってあんま使ったこと無いんで、後でリファレンス読んでみます。
338 :
名無しさん@お腹いっぱい。 :2007/02/12(月) 08:56:58 ID:kXp1N8wL0
こちとら慈善事業でフィルタ作成してんじゃねぇんだ DAT落ちログなんか見れるかよ! まさに外道
失礼しました。当該書き込みの内容は以下のとおりです。
229 名前:名無しさん@お腹いっぱい。[sage] 投稿日:2006/08/16(水) 14:25:27 ID:uWVqRDUT0
>>228 [HTTP headers]
In = FALSE
Out = TRUE
Key = "Cookie: kasamatusan 1MB (Out)"
URL = "kasamatusan.sakura.ne.jp(:80|)/"
Match = "^?"
Replace = "0810imageview=ok"
参考になるか判りませんが、Cookiesの内容です SN_USER hXQiw6L4KOzeM<>1 kasamatusan.sakura.ne.jp/cgi-bin2/ 1600 406055296 31593874 4235352032 29838233 *
解決しました
999 名前:名無しさん@お腹いっぱい。[sage] 投稿日:9/09(水) 14:25:27 ID:uWVqRDUT0 の14:25:27←ここの部分だけを消したいのですが正規表現が分かりません。 誰かお願いします。
2007があるものとして URL = "([^/]++.|)(2ch.net|bbspink.com)" Match = "(200?/??/??\(??\))\0\s[#0:24]:[#0:60]:[#0:60]" Replace = "\0"
>>339 頭が悪いと大変だね、死ぬまでがんばれ。
>>345 神様ありがとう。これで快適な2ちゃんライフがおくれます。
URL = "([^/]++.|)(2ch.net|bbspink.com)" Match = "200?/((1?)\0|0(?)\0)/(0(?)\1|(??)\1)\((??)\3\)\s[#0:24]:[#0:60]:[#0:60]" Replace = "\0/\1 (\3)" こんなのはどうだろう。年は消えてしまうが必要がないのなら。
Jane系なら2chブラウザのスキン弄れば出来そうな。
このフィルタ2chの仕様変更で効かなくなりました。 どなたか改訂版をお願いいたします。 Name = "2ch thread list Tabler [HOME]-R subback" Active = TRUE URL = "[^/]++.(2ch.net|bbspink.com)/[^/]+/subback.html" Limit = 900 Match = "</head>$SET(0=" "</head><style>" "a:link{font-size:9pt;text-decoration:none;color:#0000ff}" "a:visited{text-decoration:none;color:#550088}" "a:hover{color:red}" "</style>\n)|" "(<body> <font size=2>)\1$SET(0=" "\1<TABLE width="85%" border="1" cellspacing="5"" " cellpadding="5" bgcolor="#DDFFDD" align="center">" "<TR><TD valign="top">)|" "</body>$SET(0=</td></tr></table></body>)|" "/l50$SET(0=/l10)|" "(\)</a>)\1$SET(0=\1<br>\n)|" "(50:*\)</a>)\1$SET(0=\1</td><td valign=top>)|" "(00:*\)</a>)\1$SET(0=\1</td></tr><tr><td valign=yop>)|" " (<a href=)\1$SET(0=\1)" Replace = "\0"
143 名前:名無し~3.EXE sage 投稿日:2007/02/13(火) 23:06:32 ID:xcI1/tg5 今日辺りから突然このフィルタが効かなくなりました。 非常に重宝していたのですが・・・ Name = "2ch thread list Tabler [HOME]-R subback" Active = TRUE URL = "[^/]++.(2ch.net|bbspink.com)/[^/]+/subback.html" Limit = 900 Match = "</head>$SET(0=" "</head><style>" "a:link{font-size:9pt;text-decoration:none;color:#0000ff}" "a:visited{text-decoration:none;color:#550088}" "a:hover{color:red}" "</style>\n)|" "(<body> <font size=2>)\1$SET(0=" "\1<TABLE width="85%" border="1" cellspacing="5"" " cellpadding="5" bgcolor="#DDFFDD" align="center">" "<TR><TD valign="top">)|" "</body>$SET(0=</td></tr></table></body>)|" "/l50$SET(0=/l10)|" "(\)</a>)\1$SET(0=\1<br>\n)|" "(50:*\)</a>)\1$SET(0=\1</td><td valign=top>)|" "(00:*\)</a>)\1$SET(0=\1</td></tr><tr><td valign=yop>)|" " (<a href=)\1$SET(0=\1)" Replace = "\0" どなたか、改訂版をお願いいたします。
マルチ課よ
とりあえず修正してみた。これでいいのかな? [Patterns] Name = "2ch thread list Tabler [HOME]-R subback [070216]" Active = TRUE URL = "[^/]++.(2ch.net|bbspink.com)/[^/]+/subback.html" Limit = 900 Match = "</head>$SET(0=" "</head><style>" "a:link{font-size:9pt;text-decoration:none;color:#0000ff}" "a:visited{text-decoration:none;color:#550088}" "a:hover{color:red}" "</style>\n)|" "(<body><div><small id="trad">)\1$SET(0=" "\1<TABLE width="85%" border="1" cellspacing="5"" " cellpadding="5" bgcolor="#DDFFDD" align="center">" "<TR><TD valign="top">)|" "</small></div>$SET(0=</td></tr></table></small></div>)|" "/l50$SET(0=/l10)|" "(\)</a>)\1$SET(0=\1<br>\n)|" "(50:*\)</a>)\1$SET(0=\1</td><td valign=top>)|" "(00:*\)</a>)\1$SET(0=\1</td></tr><tr><td valign=yop>)|" " (<a href=)\1$SET(0=\1)" Replace = "\0"
2ch/JBBS changer for popupが効かなくなってるね。 とりあえず <html>*<font size=$AV(\+1) color=*</font> な部分を ↓ <html>*(<h1 style="*">*</h1>|<font size=$AV(\+1) color=*</font>) に変えて応急処置した。
>>356 乙
シングルクリックで閉じるには
どのようにすればよいのですか?
恥を忍んで添削をお願いします……。
youtube検索結果の動画ページリンクの横に、どの動画を直接ダウンロードするリンクを付加したいです。
[Patterns]
Name = "YouTube Results DL [07/02/16]"
Active = TRUE
URL = "$TYPE(htm)(www.|)youtube.com/results\?search_query=*"
Limit = 512
Match = "<a href="/watch\?v=\1" rel="nofollow" onclick="_hbLink('','VidHorz');">\2</a>"
Replace = "<a href="/watch\?v=\1" rel="nofollow" onclick="_hbLink('','VidHorz');">\2</a> <a href="
http://youtube.com/get_video.php?video_id=\1 " title="\2">[DL]</a>\n"
URL欄は前方一致なので最後の * はいりません。
>>358 2ch/JBBS changer for popup の
「ondblclick」って書いてあるところを「onclick」にすればOK。
副作用として範囲選択が出来なくなるけど。
YouTubeが文字化けします。 Bypass List に www.youtube.com/* を入れると文字化けしません。 YouTubeの調子のいいフィルターが使えないので困っています。 どうすれば 文字化けしなくなりますか? Log貼ったほうがいいのかな? 偉い人教えてください。
自己解決しました。 ヘッダの「Content-Type: character set filter (in)」が効いていた模様です。 スレ汚ししません。
IDを色で識別するフィルタ作ってみました。 パソと携帯の0とOの識別も。 寒色系の背景に合わせてます。 指摘あればよろしく。
Name = "2ch ID: colored [070217]" Active = TRUE URL = "([^/]++.|)(2ch.net|bbspink.com)(|*:[0-9]+{1,*})" Limit = 16 Match = "ID\:((([a-f0-9])\9|([g-i])$SET(9=e)|([j-l])$SET(9=d)|([m-n])$SET(9=c)|([o-q])$SET(9=b)|([r-t])$SET(9=a)|([u-w])$SET(9=9)|([x-z])$SET(9=8)|([/+.])$SET(9=d))" "(([a-f0-9])\8|([g-i])$SET(8=e)|([j-l])$SET(8=d)|([m-n])$SET(8=c)|([o-q])$SET(8=b)|([r-t])$SET(8=a)|([u-w])$SET(8=9)|([x-z])$SET(8=8)|([/+.])$SET(8=d))" "(([a-f0-9])\7|([g-i])$SET(7=e)|([j-l])$SET(7=d)|([m-n])$SET(7=c)|([o-q])$SET(7=b)|([r-t])$SET(7=a)|([u-w])$SET(7=9)|([x-z])$SET(7=8)|([/+.])$SET(7=d))" "(([a-f0-9])\6|([g-i])$SET(6=e)|([j-l])$SET(6=d)|([m-n])$SET(6=c)|([o-q])$SET(6=b)|([r-t])$SET(6=a)|([u-w])$SET(6=9)|([x-z])$SET(6=8)|([/+.])$SET(6=d))" "(([a-f0-9])\5|([g-i])$SET(5=e)|([j-l])$SET(5=d)|([m-n])$SET(5=c)|([o-q])$SET(5=b)|([r-t])$SET(5=a)|([u-w])$SET(5=9)|([x-z])$SET(5=8)|([/+.])$SET(5=d))" "(([a-f0-9])\4|([g-i])$SET(4=e)|([j-l])$SET(4=d)|([m-n])$SET(4=c)|([o-q])$SET(4=b)|([r-t])$SET(4=a)|([u-w])$SET(4=9)|([x-z])$SET(4=8)|([/+.])$SET(4=d))" "??)\0((0)$SET(1=ID:<font color="#\9\8\7\6\5\4">\0</font><font color=#bbe417>0</font>)|(O)$SET(1=ID:<font color="#\9\8\7\6\5\4">\0</font><font color=#ef20ef>O</font>)|" "$SET(1=ID:<font color="#\9\8\7\6\5\4">\0</font>))|" "ID\:(\?\?\?)\0O$SET(1=ID:\0<font color=#ef20ef>O</font>)|" "ID\:(\?\?\?)\00$SET(1=ID:\0<font color=#bbe417>0</font>)" Replace = "\1"
URL欄の(|*:[0-9]+{1,*})はあっても無くても同じだからイラネ。:に\はイラネ。
>>354 ありがとうございました。助かりました。
100以降も緑の枠に入れる方法なんてありますか?
一度質問したんだから、解決したなら解決済みのフィルター書くのが礼儀。 運がよければアドバイスも貰えるかもしれないし。
371 :
369 :2007/02/18(日) 14:13:40 ID:yl8Igbxg0
>>370 omitronのバージョン違いでした。
>>372 確かに素のIEで見ると文字化けしてるんで調べてみたら
In = TRUE
Out = FALSE
Key = "Content-Type: charset deleter (2006.09.09) (in)"
URL = "web.archive.org/"
Match = "text/html; charset=*"
Replace = "text/html"
これが効いてたよ
>>372 >とりあえずフィルタの書き方は合ってる……?
残念ながら…
375 :
名無しさん@お腹いっぱい。 :2007/02/19(月) 01:22:32 ID:s3bBYpWe0
/::^'´::::::::::::i、::::::::::::::::::::::::::::\ ‐'7::::::::::::::::::::::::ハ:ハ::|ヽ:::;、::::::::::::丶 /::::::::::::::/!i::/|/ ! ヾ リハ:|;!、:::::::l /´7::::::::::〃|!/_,,、 ''"゛_^`''`‐ly:::ト /|;ィ:::::N,、‐'゛_,,.\ ´''""'ヽ !;K ! |ハト〈 ,r''"゛ , リイ)| 死ねばいいと思うよ `y't ヽ' // ! ぃ、 、;:==ヲ 〃 `'' へ、 ` ‐ '゜ .イ `i;、 / l 〉 ` ‐ ´ l`ヽ / ! レ' ヽ_
>373 それ、自分が書いたやつですな。 >372 それだと書き換えている意味がないわな。化けて当然。 Shift_JISだろうとUTF-8だろうと、 文書の中身とヘッダの文字コードが一致していなければ化ける。 web.archive.org の管理者が適当にUTF-8を指定しているのが原因なので、 web.archive.org の管理者が改善してくれればいいのだが。
おまえが書いたから何なんだ
自己主張したい年頃なのさ。
答えてくれてるのに何故叩く? 文句言うなら、何のレスも返さない372のほうだろ。
YouTubeのタイトル文字化けを直すフィルタってありませんか?
叩きたいお年頃なのさ。
382 :
372 :2007/02/21(水) 02:57:48 ID:QShqnMMI0
チェック怠ってて済みません。
>>373 わざわざ調べてくれてありがとう……! 感無量です。バッチリです。
>>374 ……出直してきますっ。
>>376 そもそもの間違いは、フィルタ名に Content-Type: が入ってなかったことでした。鬱死。
以下のフィルタで特定の日本語ページの Internet Archive は文字化けしなくなりましたが、
ドイツ語ページとかだと当然のように化けます。役立たず。
[HTTP headers]
In = TRUE
Out = FALSE
Key = "Content-Type: web.archive.org charset (in)"
URL = "web.archive.org/"
Match = "text/html; charset=UTF-8"
Replace = "text/html; charset=Shift_JIS"
質問なんだけど、Yahooの広告を消す場合、Yahooの広告だけを消すフィルターを入れるのと、リストがたのフィルターで登録しておくのではどちらが処理的にかるいのでしょうか?
自 分 で 調 べ ろ
どうなんだろう。
1GHz超えなら$LSTであらゆるmatchぶち込んでも全然気にならないけど。
場合わけしてみると
1. URLマッチングでyahoo.co.jpだけでTXT内では$URL(
http://tv.yahoo.co.jp )とは書かないであらゆる*.yahoo.co.jpにmatchさせる。
2. URLマッチングでyahoo.co.jpだけにして$LSTのTXT内で$URL(
http://tv.yahoo.co.jp )
として分岐させる。
3.$LST使わないでtv.yahoo.co.jp、weather.yahoo.co.jp各々フィルタ作成。
俺はわからない・・w
Google Image: Image Change (070124) また駄目になりました。 お願いします。
[Patterns]
Name = "Google Image: Image Change (070115)"
Active = TRUE
URL = "images.google.co(m|.jp)/"
Limit = 128
Match = "<a href="\+e\+b.m\+"><img"
Replace = ""+(b.a=b.c='')+""
"<a target=\\"_blank\\" href=\\""+decodeURIComponent(e.match(/[?&]imgrefurl=([^&]+)/)[1])+"\\">ref</a> / "
"<a target=\\"_blank\\" href=\\""+(b.b.indexOf("://")<0?"
http:// ":"")+b.b+"\\">img</a>"
"<br><img ondblclick=\\""
" this.src = '';"
" this.style.display = 'none'"
"\\" onclick = \\""
" if (this.a) {"
" this.src = this.a;"
" this.a = 0"
"} else {"
" this.a = this.src;"
" this.src = '"+(b.b.indexOf("://")<0?"
http:// ":"")+b.b+"'"
"}\\"$STOP()"
googleイメージがまた戻ってるw ふるいの消しちゃったよ・・・
ってログ読んでるうちに書き込みが! ばっちり動いたよ。GJ!
>>387 ありがとう。でもうちの環境だと駄目みたいです。
それでこれに戻したらいけました。
[Patterns]
Name = "google image (061103) +js+"
Active = TRUE
URL = "images.google.co(.jp|m)/"
Limit = 1024
Match = "var\ e=\"/imgres\?imgurl=\"\+\0\+\"\&imgrefurl=\"\+\1\+[^;]+;c\+=[^;]+;[^;]+;[^;]+;$STOP()"
"$SET(9=var e=unescape(\1.match(/^[^&]+/));var proxvar=\0;"
"c+="<a href="+e+" target=_blank>imgref</a> / <a target=_blank href="+unescape(proxvar)+">img</a><br>"
"<img ondblclick='this.src="+'"";this.style.display="none"'"
"+"' onclick='if(this.a){this.src=this.a;this.a=0}else{this.a=this.src;this.src="+'"
http:// '+unescape(proxvar)+'"}'"
"+"' src=/images?q=tbn:"+b.d+proxvar+">";)"
"|"
"<a href=/imgres\?imgurl=[^&]+\&imgrefurl=([^&]+)\0[^>]+> <img[^>]++(src=/images\?q\=tbn:[^:]+:([^ >]+)\2)\1*</a>"
"$SET(9=<a href="$UESC(\0)" target="_blank">imgref</a> / <a href="\2" target="_blank">img</a><br>"
"<img ondblclick="this.src='';this.style.display='none'" onclick="if(this.a){this.src=this.a;this.a=0}else{this.a=this.src;this.src='\2'}"\1</a>)"
Replace = "\9"
391 :
名無しさん@お腹いっぱい。 :2007/02/22(木) 18:51:13 ID:n67R39dJ0
すいません。見れました。↑は無視してくださいゥ。
www.youtube.com/watch?v=(^*[&]) だと簡単すぎるかな
[^/]++youtube.com/watch\?=[^&]+(^?) とすれば「URLは?を含むことがない」という条件を与えられる (^?)は「もう何も続きませんよ」という印 もしかしたら[^\&]としないと動かないかもしれないけど、それは自分で検証してくれ
*youtube.com/watch\?v=[^&]+(^?)
1時間パソコンほったらかしにしてるあいだにかぶったorz
あんがと!!! なんとかできた! これで夕立がまた使えそうです
>>391 ADListに www.google-analytics.com/urchin.js を追加。
>>354 "2ch thread list Tabler [HOME]-R subback [070216]"
何故かまた効かなくなりました。
ページソースを見ても問題ないような気がするのですが・・・
お手数ですが、再び改訂版をお願いいたします。
390のフィルター、一昨日はいけたけどまたダメになってるね… なんなんだGoogle image
387は問題なく使えてる
なにか他のフィルタが干渉してるのでは? 例えばAdd Link
静かですね
うちも
>>405 と同じでだめです。
4.4 4.5j フィルター全部はずしてもどっちもダメ
わがんね
409 :
名無しさん@お腹いっぱい。 :2007/03/02(金) 18:51:02 ID:KOh5VbwA0
スクリプトタグ無いの urchinTracker(); って部分だけフィルターで消したいのですが、 タグ内の一部分だけ消す方法が良くわかりません。 どなたか教えてくれませんか?
410 :
名無しさん@お腹いっぱい。 :2007/03/02(金) 20:18:25 ID:fhmIoiDy0
>>387 とか
>>390 って何?
Googleイメージで検索して出た画像クリックするとホームページじゃなしに
元のサイズで画像を表示するってフィルタ↓使ってたんだけど、使えなくなった
これの新しいのってあります?
>>387 >>390 は違うみたいでした
Name = "Google: Replace natural sized img [2006.04.20]"
Active = TRUE
URL = "images.google.co(m|.jp)/im(ag|gr)es\? $TYPE(htm)"
Limit = 512
Match = "(<a\s[^>]++href=)\#$AV((/imgres\?imgurl=[^&]+(^*\&frame=small)?+)\0)(^(^[ >]))"
"$SET(#="\0&frame=small")|"
"<a\s[^>]++href=$AV((http(://|s://)?+)\0)[^>]+>"
" <img\s[^>]++src=$AV(/images\?q=tbn:[^:]+:$TST(\0))[^>]+> </a>"
"$SET(#=<img style="margin: 5px; border-style: none" src="\0">)$STOP()"
Replace = "\@\r\n"
ようつべの認証が必要なページをスルーする方法ない?
ちなみに直接flvにリダイレクトすればflv動画保存はできた。 でも動画タイトルとか説明とか載ってるページが見たい
>>410 387を使ってるけどクリックすると元画像サイズになるよ
>>409 文面通りの意味だと
Limit 1024 (適当)
Match <script\s\0urchinTracker\(\);\1</script>
Replace <script \0\1</script>
こういう事?
もっと深い意味があるのかな
414 :
名無しさん@お腹いっぱい。 :2007/03/02(金) 20:45:52 ID:fhmIoiDy0
>>413 ありがとう
マジですか、俺
>>387 、
>>390 ともに試したけど全然だめでした
もしかして、Javaとかオンじゃないとだめなのかなあ
>>410 のはJavaなしでもいけたんだけど、う〜ん
もう一度試してきます
415 :
名無しさん@お腹いっぱい。 :2007/03/02(金) 20:53:36 ID:fhmIoiDy0
だめだ、出来ないorz Firefox使ってるんだけど、もしかしてIE限定かな?
>>414 ほんとだ
Script Offだと効かないね
387効かないって人が多かったのはそのせいだったのか
ちなみに私はIEエンジンのタブブラウザですね
418 :
名無しさん@お腹いっぱい。 :2007/03/02(金) 21:00:20 ID:fhmIoiDy0
>>416 そうなんだ
Firefox2.0.0.2でJavaオフ = 普通にホームページに飛ばされる
Firefox2.0.0.2でJavaオン = サムネイル画像すら表示されず、なすすべなし(泣)
誰かFirefox用の
>>410 のフィルタ作ってくださいm(_ _)m
FxならgreasemonkeyいれてGreased Lightbox使った方が便利だと思う GoogleImage以外でも使えるし。
このスレはOperaユーザが多いからそのせいもあるんじゃない?
421 :
名無しさん@お腹いっぱい。 :2007/03/02(金) 22:51:58 ID:fhmIoiDy0
>>419 Greasemonkeyは入れてるけど、Greased Lightboxってのは初耳です。
さっそく探してきます、ありがとう
422 :
409 :2007/03/02(金) 23:04:03 ID:KOh5VbwA0
>>413 どうもです。
狙いはその通りで、試してみましたが、
ロード時に読み込まれるので、後ろの</script>が読み込まれる前に
urchinTracker()を呼び出そうとするみたいで、
とりあえず、後ろの</script>を削って
Match <script\s\0urchinTracker\(\);\1
でやってみたら動いてるようです。
こんな感じでいいんでしょうか?
>>422 ん、テストページが無いので良くわからない。
入れ子でおかしくなるかもなので
Match
$NEST(<script\s[^>]\0+>,\1urchinTracker\(\);\2,</script>)
Replace
<script \0>\1\2</script>
のほうが安全かな。
>>422 >>413 を使えばブラウザにurchinTracker();が削除されHTMLたソースが渡されるから
urchinTracker();が動くなんてことはありえないよ。
↑フィルターが正しく動いてればの話ね。 limitが足りなかったとかそういう原因かも知れない。
ふたばのオミトロンスレ見れよ
気づきませんでした いってきます
429 :
409 :2007/03/03(土) 09:31:45 ID:fwIzo8pg0
>>423 >>424 どうもです。
いろいろ勘違いがあったみたいです。
とりあえず以下のようにしました。
まれに
urchinTracker();
に引数が入ってるのがあるのでMatchに*を入れてみました。
後はBounds指定ってこれだと意味ないんでしょうか?
[Patterns]
Name = "Kill urchinTracker"
Active = TRUE
URL = "$TYPE(htm)"
Bounds = "<script($INEST(<script,</script)</script>|*)"
Limit = 1024
Match = "<script\s\0urchinTracker\(*\);\1</script>"
Replace = "<script \0\1</script>"
inestの使い道が違う。 この場合はnest。 $NEST(<script,\1urchinTracker\(\);\2,</script>) これで十分だからboundsはいりません。
>>420 Operaなら確かGreasemonkeyいれないで直にGreased Lightbox使えた気がする。
432 :
409 :2007/03/03(土) 19:43:56 ID:fwIzo8pg0
>>430 ありがとうございます。NESTの件、了解しました。
また別件というか別パターンが出てきました。
<a href="/index.html" onclick="javascript:urchinTracker('/sample/2007/misc/');">
みたいな感じでタグのイベント属性で追加されるパターンがあるみたいです。
なんかこのパターンを考えるとキリが無いのですが、
このパターンも消すとするとフィルターは別途書く必要があるので負荷が高くなるので、
ダミーのスクリプトを入れるフイルターを作った方が良いかと思うようになりました。
<head>タグの直後あたりにスクリプトブロック込みでダミーのurchinTracker()ファンクションを入れる
事で対応しようかと思い、以下の感じで作りましたが、なんか手抜きというか情けないような内容です。
アドバイスいただけますでしようか。
[Patterns]
Name = "New HTML filter"
Active = TRUE
URL = "$TYPE(htm)"
Limit = 256
Match = "<head>"
Replace = "<head>"
"<script type="text/javascript">function urchinTracker(){};</script>"
ひとつのフィルタに纏める事できるよ match欄 matchpattern1 $SET(9=replacepattern1)| matchpattern2 $SET(9=replacepattern2) replace欄 \9 みたいな感じ
具体的に書くと
例えばこんな感じ。
これだとurchinTrackerの記述のあるscriptタグ全部消しちゃうけど。
Match
$NEST(<a\s[^>]++href=$AV(*urchinTracker*),</a>) $SET(9=)|
$NEST(<script\s[^>]+>,*urchinTracker*,</script>) $SET(9=)
Replace
\9
>>432 なんだけど
空の関数の後に実際のソースに実態があれば効かないんじゃない?
テストしてないからわからないけど
>>432 その方法なら1ページにつき一度のマッチングで済むので$STOPコマンドが使えますよ。
<script\s[^>]+>
早漏した <script\s[^>]+>って<script>にマッチしたっけか こっちで確認した限りではしないようだが
あぁ <script>だけの場合? それは想定外でした。
↓これじゃだめなの?
400 :名無しさん@お腹いっぱい。:2007/02/25(日) 00:51:04 ID:SRmz9w6X0
>>391 ADListに www.google-analytics.com/urchin.js を追加。
これがONになっているとアマゾンで検索したときに画像が出ません。
どうしてですか?
Name = "Banner Blaster (limit text)"
Active = TRUE
Multi = TRUE
Bounds = "<a\s[^>]++href=*</a>|<input*>|<ilayer*</ilayer>|<iframe*</iframe>|<object*</object>"
Limit = 900
Match = "(<(ilayer|iframe|object)*|\1<i(mg|mage|nput)*src=$AV(*)*>\3)"
"&(*(href|src)=$AV($LST(AdKeys)*)|"
"*
http://*<i (mg|mage|nput)\s(*>&&"
"(*width=[#460-480]&*height=[#55-60]*)|"
"(*width=[#88]&*height=[#31]*)))"
"&(*alt=$AV((?+{18})\2*|\2)|$SET(2=Ad))"
441 :
409 :2007/03/04(日) 01:13:16 ID:9b7LgS8o0
>>434 本物の関数は常に別ファイルで読み込まれるので、AdlistでBlockしてます。
>>435 どうもです。
HEADなんで$STOPは効果的ですね。
>>439 それだけだと、関数の呼び出しが残っているので、
Javascriptエラーが毎回でるので。
結果はこんな感じでにしました。
[Patterns]
Name = "Kill urchinTracker"
Active = TRUE
URL = "$TYPE(htm)"
Limit = 256
Match = "<head*>$STOP()"
Replace = "<head>"
"<script type="text/javascript">function urchinTracker(){};</script>"
このフィルターは他人の所に足跡を残したくないのではなくて、
自分が管理してるサイトの分析に自身のアクセス記録を入れない為なので、
実際にはURLには実サイト名が入ってます。
Googgle Anlytics側にもフィルターがあるのですが、
出先で内容を確認したりする時のまでフォローしきれないので。
OperaでUAがMozilla含まれてないからこれでUA変更してるんだけど バージョン変わるたびに修正するの面倒だから変更するときに 変更元のUAのバージョンつけられないかな? 今こんな感じの設定 key:User-Agent: Opera 9 (out) URL: Match:Opera Replace:Mozilla/5.0 (compatible; MSIE 6.0; Windows NT 5.1; U; ja) Opera/9.10
[HTTP headers] In = FALSE Out = TRUE Key = "User-Agent: Opera (out)" Match = "Opera/\0(\s|(^?))" Replace = "Mozilla/5.0 (compatible; MSIE 6.0; Windows NT 5.1; U; ja) Opera/\0"
華麗にスルー
www.jtw.zaq.ne.jp/animesong/y.js への接続を遮断するだけ
>>445 from
<BODY BGCOLOR="#CCFF99" onselectstart="return false" oncontextmenu="return false">
to
<BODY BGCOLOR="#CCFF99" onselectstart="return true" oncontextmenu="return true">
任意のタグ群から任意の要素群を除去するフィルタを書いてみた。 とりあえずはbodyとimgからoncontextmenu, onselectstaart, oncopyを除去できる感じに。 ひどいスパデティ状態だけど要は<body >みたいなスペースが入らないようにしたかったので。 [Patterns] Name = "oncontextmenu deleter" Active = TRUE Limit = 256 Match = "$NEST(<(body(^(^\s))|img(^(^\s)))\#,((\s|)on(contextmenu|selectstart|copy)=$AV(*)|((\s|)[^=\s]+(=$AV(*)|))\#)+,>)" Replace = "<\@>"
書き忘れてたけどサンプル before : <body onselectstart="return false" oncontextmenu="return false" bgcolor="#ccff99"> after : <body bgcolor="#ccff99">
Firefox のように、ブラウザ側で コンテキストメニューを強制的に使用可能にする手もある。フィルタ不要だし。
>>449 恐ろしく細かなところなんだが
JISコードのページで「alt="連携"」と言う文字が含まれてたりするとダメだよね?
2バイト目が「"」とかの文字だと$AV系は誤爆するから
>>449-450 そのフィルタは <body bgcolor="#ccff99"> にもマッチしてしまう問題を持っていますね。
((\s|)[^=\s]+(=$AV(*)|))\# を (([^>]++)\#\son(contextmenu|selectstart|copy)=$AV(*))+{1,*} に変更してはどうでしょうか?
[Patterns]
Name = "oncontextmenu deleter type2 [2007/03/06]"
Active = TRUE
URL = "$TYPE(htm)"
Limit = 256
Match = "<(body|img)\#(^(^\s))"
"(([^>]++)\#\son(contextmenu|selectstart|copy)=$AV(*))+{1,*}"
Replace = "<\@"
455 :
名無しさん@お腹いっぱい。 :2007/03/06(火) 22:42:58 ID:+rFDbjSB0
マッチの部分をhref=$AV(*12345678912*) にすりゃいいのでは。about:blnakはともかくProxymoitronってなんやねん。
$NEST(<a\s(*href=$AV(\1)*|)&(*title=$AV(\3)*|)&(^(*(href|title)*)\7|)[^>]+>,\0,</a>) aタグのhrefとtitleの値を\1,\3に順不同で入れるのには成功したんですが、 それ以外のものを\7に入れる事ができません。 とりあえず(^(*(href|title)*)\7|)としてますが効きません。 助言お願いします。 ソース例 <a href="/aaa/bbb/ここは1に" title="これは3に" class="これは7に">ここは0に</a>
458 :
449 :2007/03/07(水) 18:08:54 ID:JUv0ENxk0
思ったよりも反響があったようでビックリ。 >453 なるほど、そういうケースもあり得るのでしたら汎用フィルタとした使うためには手を加える必要がありますね。 手っ取り早いのは$AV(*)を使う代わりに [^=]+=[^ ]+ とすることでしょうか。 これでもまだ誤爆例がありましたら教えてください。 #ところで今までずっと[^\s]としていたのですがこれは大きな誤りであると分かりましたorz >454 確かに、例えば <body> で終わらない全てのbodyタグに(極端な例では<body >にも)マッチしますが、そこに何か問題があるとは思えません。 <body bgcolor="#ccff99"> を挙げれば、それ全体を\#に代入して<\@>で出力しているので一見してムダではありますが。 そこで試しにプロファイルで速度比較をしてみました。 私のver1とthinkさんのver2では、ver2がver1の1.5倍多くの時間が掛かるようです。 <img alt="hogehoge" src="hogehoge.jpeg"> を29986バイト分だけコピペしたサンプルでの計測です。 <img alt="hogehoge" src="hogehoge.jpeg" oncopy="hogehoge"> とした場合も速度比はほぼ同じでした。 もしマッチングさせたくないという場合にはver2を選択すると良いでしょう。
肝心の445が出てこない件
>457 目的がよく分からなんのですが、\1と\2と\3と\0に属性値を入れるわけですね。 \1はhrefに対応しなければならないんですか? たいていの場合は必ずしもそういう対応関係を成り立たせなければならないわけではないと思いますが。 例えば (href|title|((^(href|title)[^=])+))\1=$AV(\2) \s (href|title|((^(href|title)[^=])+))\3=$AV(\4) \s (href|title|((^(href|title)[^=])+))\5=$AV(\6) とでもすれば\1と\2や\3と\4はセットなので、何が入ろうともかまわないということになります。 これで問題があるかはフィルタで何をしたいかによります。 ちなみにアスタリスク"*"をそういうふうに使う場合は aタグを$NEST()で独立させたほうが良いです。 $NEST($NEST(<a\s,*hogehoge*,>),\0,</a>) もう一度フィルタの目的をよく考えてから作り直しては?
461 :
449 :2007/03/07(水) 18:28:11 ID:JUv0ENxk0
>458について日本語のミスがありましたorz >私のver1とthinkさんのver2では、ver2がver1の1.5倍多くの時間が掛かるようです。 1.5倍の時間が掛かる、もしくは0.5倍多くの時間が掛かる、に訂正します。 例えばver1で2sec要する場合にver2はおよそ3sec要します。
>>460 目的はtitle欄にhref以下のurlその他をぶち込んでマウスを当てると見えるようにするためです。
ORで分岐すると順不同(hrefの前にtitleが来たり)のとき面倒なので&を使ってます。
ですから
>>457 の場合だとreplece欄でtitle="\1 \3"みたいに続けて記述します。
>462 つまりtitle要素があれば中身をhrefで書き換え、title要素がない場合はtitle="href属性値"を追加するということ? 言い換えればtitle要素があれば除去し、title="href属性値"を追加する、とでもすればうまくいきそうですな。 やり方はいくつもあると思うけど私ならこうやります。 その場合は&を使うよりはスタックを使ったほうがよさそうです。
チープな>449の焼き回しですが、一例として マッチ欄 $NEST(<a(^(^\s)),(\s(title=$AV(*)|href=$AV(\0)|([^= ]+=$AV(*))\#))+,>) 置換テキスト <a href="\0" title="\0" \@) サンプル例 before : <a href="ljilfejalfejla" src="ljfiejlajflea" title="fea.fae"> after : <a href="ljilfejalfejla" title="ljilfejalfejla" src="ljfiejlajflea")
>>463 あらかじめtitleの無い場合は,titleにhrefを入れます。
titleのある場合は、既にあるtitle+hrefにします。
具体的には
<a href ="\1" title="\3 \1" \7>\0</a>
3は既にあるタイトルで空の場合もとりあえず入れときますw
記述してくださった$NESTの入れ子を試してみたところ7にその他のものが入ってくれました。
$NEST($NEST(<(a|area)\s,(*href=$AV(\1)*|)&(*title=$AV(\3)*|) \7,>),\0,</a>)
ただこれだと\7に既にあるhrefやtitleも入ってしまいますが
<a href ="\1" \7 title="\3 \1" >\0</a>
こうすれば大丈夫みたいです。
ありがとうございました。
>>456 > そこに何か問題があるとは思えません。
"oncontextmenu deleter" でマッチすると、他のフィルタで <body> にマッチしなくなるという問題がありますが、"oncontextmenu deleter" を優先するなら些細な問題かもしれませんね。
アプローチの仕方が違うだけとも言えるので、好みの問題だと思います。
> 私のver1とthinkさんのver2では、ver2がver1の1.5倍多くの時間が掛かるようです。
検証お疲れ様です。
>454は読み取るバイト数が少ないので、速いと思っていましたが $NEST の方が速くなるんですね。
せっかくなので、速度重視で最適化してみました。(下記の状況で、+{1,*} が効かない理由は解りません)
[Patterns]
Name = "oncontextmenu deleter type3.1 [2007/03/07]"
Active = TRUE
URL = "$TYPE(htm)"
Limit = 256
Match = "$NEST(<(body|img)\#(^(^\s)),"
"\#\son(contextmenu|selectstart|copy)=$AV(*)"
"(\#\son(contextmenu|selectstart|copy)=$AV(*))+"
"\#,>)"
Replace = "<\@>"
ところで、>454で示したフィルタは "type2" であって、「最新のフィルタ」として掲示したわけではないですよ。(^^;
449氏の作成したフィルタを引き継いで改良したなんて、おこがましいことは言えません。
私の経験,ポリシーに則って作成した別のフィルタだと思っています。
>466
一度マッチした部分にはほかのフィルタはマッチしないというのは不覚にも知りませんでした。
ちょっとしたテストをしてみましたが、確かにそのようです。
フィルタ同士でループしないようにとのことでしょう。
こうだと分かると何でもかんでもマッチングしてしまう
>>449 のフィルタは曲者ですね。
thinkさんの>466が正当な改良版だと思いますよ。
>456の段階では単にver違いという意味で書いたのですが。
>>465 仰ることが正確に掴めていませんが...
> $NEST($NEST(<(a|area)\s,(*href=$AV(\1)*|)&(*title=$AV(\3)*|) \7,>),\0,</a>)
> <a href ="\1" \7 title="\3 \1" >\0</a>
どちらの表現でも、
<a id="test" title="string" href="URL">
のHTMLソースにマッチしないという問題が残っているようです。
>464の表現を使い回しするとこれに対応できますが、「全てのa要素にマッチしてしまう」という問題がまだ残ります。
HTML4.01仕様書によれば、
------------
ユーザエージェントは、CDATA型属性値の、冒頭あるいは末尾の空白文字を無視してよい。
(例えば「 myval 」を「myval」として解釈してよい。)
著者は、冒頭あるいは末尾に空白文字のある属性値を宣言することを避けるべきである。
http://www.asahi-net.or.jp/%7Esd5a-ucd/rec-html401j/types.html#type-cdata ------------
とあり、空白文字のみの属性値によるUAの動作を明示していません。(「してよい」は「しなくてもよい」とも受け取れる表現だからです。)
可能なら、「空の属性値」「空白のみの属性値」は避けるべきだと思います。
>469の続き。
この条件なら二重に$NESTを使うまでもなく、</a> までマッチさせずとも、<a> の開始タグのみにマッチさせるだけで十分だと思います。
期待する動作を、「href属性のあるa要素があったとき、title属性にhref属性値を挿入する」とすると。
[Patterns]
Name = "Insert <a> title [2007/03/07] test2"
Active = TRUE
URL = "$TYPE(htm)"
Limit = 256
Match = "$NEST((<a(rea|)\s)\#(^(^[^>]++href=$AV(\0))),"
"(\#)title=$AV(\1)$SET(2=\1 \0)\#|"
"$SET(2=\0)\#"
",>)"
Replace = "\@ title="\2">"
(^(^[^>]++href=$AV(\0))) は & に読み替えてもらっても構いません。
(\#) は置換スタックのバグ回避のための暫定措置です。
ttp://abc.s65.xrea.com/prox/wiki/MatchingRules/#stack-bug | と $SET を組み合わせているのは、title属性値の先頭に空白を含めないためですが、title属性値を格納した変数を $TST で判定して分岐させてもよいかもしれません。
>>469-470 まだ理解してませんが、参考になります。
titleにあらゆる属性をつっこもうとしてまして
(例えばaタグの後にimgタグが来た場合のhrefも)。
470を検討してみます。ありがとうございます。
aタグ内にimgがある場合に対応させようとするなら↓のようにすればいいよ $NEST($NEST(<a\s,*hogehoge*,>), \0((<img[^>]++src=$AV(\3)[^>]+>)\1\2|), </a>) で置換部分は <a>\0\1\2<\a> とすれば良いし、srcの属性値は\3に入っている。 >(例えばaタグの後にimgタグが来た場合のhrefも)。 但し、これをhrefじゃなくてsrcのことだと解釈しての話。 *hogehoge* を>470に置き換えればそのまま動くはず。
ぶった切ってすみませんが、YOUTUBEで再生のデフォルトを、 全画面にするフィルター(リンク追加でもかまいません)がもしできたらお願いします。
>>474 [Patterns]
Name = "YouTube fullscreen"
Active = TRUE
URL = "$TYPE(htm)(www.|)youtube.com/watch\?"
Limit = 256
Match = "<!DOCTYPE$SET(0=<!--)"
"|"
"-->"
"|"
"new\sSWFObject\(\"/player2.swf\?(video_id=[^"]+)\1\""
"$SET(0=--><meta http-equiv="refresh" content="0;url=
http://www.youtube.com/player2.swf?\1 ">\k)"
Replace = "\0"
JavaScriptをOFFにすればいいんじゃね?
>>476 超適当だけど一応作ってみた
[Patterns]
Name = "www.jtw.zaq.ne.jp/animesong/ kasi kopipe"
Active = TRUE
URL = "www.jtw.zaq.ne.jp/animesong/"
Limit = 256
Match = "<script type="text/javascript" src="../../y.js"></script>"
"|"
"<NOSCRIPT><META HTTP-EQUIV="Refresh" CONTENT="0;URL=index.html"></NOSCRIPT>"
"|"
"on(selectstart|contextmenu)="return false""
>>470 ,
>>472 を使ってあれこれいじってましたが
$NESTを使うと<img*>の記述のある場合と無い場合でうまくいかなかったので
単純にして全部作り直してしまいました ;;
リンクをクリックすれば_selfで、右に出るblanktab.gifをクリックすれば_blankで開きます。
(blanktab.gifはなんでもいいです)
>>470 ,
>>472 はかなり参考になりました。またよろしくお願いします。
おかしなところ多々あると思いますが、以下source
\(^^)/ ←ソース
Name = "Insert title & blankGIF [2007/03/08]"
Active = TRUE
Bounds = "<(a|area)\s[^>]+>(^(\>|click here|<dd>|ID:))*</a>"
Limit = 2048
Match = "<(a(rea|))\9\s(*(*href=$AV(\1)*|)&(*title=$AV(\2)*|) *)\5[^>]+>"
"\7((<img\s(*src=$AV(\3)*|)&(*alt=$AV(\4)*|) *[^>]+>)\6|)"
"</(a(rea|))>"
Replace = "<\9 target="_self" \5 target="_self" title="[URL]\1\r\[TITLE]\2\r[SRC]\3\r[ALT]\4">\7\6\8</\9>"
"<\9 target="_blank" \5 target="_blank" title="[URL]\1\r\[TITLE]\2\r[SRC]\3\r[ALT]\4">"
"<img border="0" src="
http://Local.ptron/blanktab.gif " alt="[URL]\1\r\[TITLE]\2\r[SRC]\3\r[ALT]\4"></\9>"
誤爆ありまくりなので$NESTつけました・・
Name = "Insert title & blankgif set [2007/03/08]"
Active = TRUE
Bounds = "<a(rea|)\s[^>]+>(^(\>|click here|<dd>|ID:))*</a(rea|)>"
Limit = 1024
Match = "$NEST(<(a(rea|))\9\s,(*(*href=$AV(\1)*|)&(*title=$AV(\2)*|) *)\5,>"
"\7((<img\s(*src=$AV(\3)*|)&(*alt=$AV(\4)*|) *[^>]+>)\6|)"
"</(a(rea|))>)"
Replace = "<\9 target="_self" \5 target="_self" title="[URL]\1\r\[TITLE]\2\r[SRC]\3\r[ALT]\4">\7\6</\9>"
"<\9 target="_blank" \5 target="_blank" title="[URL]\1\r\[TITLE]\2\r[SRC]\3\r[ALT]\4">
"<img border="0" src="
http://Local.ptron/blanktab.gif " alt="[URL]\1\r\[TITLE]\2\r[SRC]\3\r[ALT]\4"></\9>"
自分で考えてフィルタを作りたいならもう少しプログラミング(論理学でもいい)の基礎を勉強したほうがいいよ。 もしくはほかの人がこれまでに書いてきたものを読んで理解したほうがいい。 例えば <a(rea|)>...</a(rea|)> としたんじゃ <a>...</area> にも <area>....</a> にもマッチするし、たぶんそれは意図していないマッチングだろう。 もう一つだけど最初のうちはアスタリスクを乱用しないほうがいい。 初心者にとってのアスタリスクというのはおそらく面倒なことをブラックボックスに詰め込んでどっかにやるためのツールなんだろうけど それじゃ何も上達しないし理解もすすまないだろう。 >(*href=$AV(\1)*|)&(*title=$AV(\2)*|) これなんかはアスタリスク乱用の好例だね。 やりたいことはhrefがあればその属性値を\1に代入し、titleがあればその属性値を\2に代入する、ということなんだろうけど hrefとtitle以外の属性値をすべて無視してしまえば、もっとシンプルな場合わけができるはずだ。 <a>, <a href>, <a href title>, <a title>, <a title href> というように。 あとはこのスペースを[^>]++で置き換えてやればhrefとtitle以外の属性値を上手に無視することができる。 例えばこうなる。 <a\s ([^>]++href=$AV(*)([^>]++title=$AV(*)|)[^>]+>|[^>]++title=$AV(*)([^>]++href=$AV(*)|)[^>]+>|[^>]+>) #これは<a>にはマッチしないけど、現実的にはそれでも問題はないだろう。 >(*href=$AV(\1)*|)&(*title=$AV(\2)*|) は初心者の好むブラックボックス化で ><a\s ([^>]++href=$AV(*)([^>]++title=$AV(*)|)[^>]+>|[^>]++title=$AV(*)([^>]++href=$AV(*)|)[^>]+>|[^>]+>) は論理的思考にある程度慣れた人が好むブラックボックス化だと考えてくれてもいいと思う。(優劣の問題にあらず) 論理学的には中身はまったく一緒だけどよりシンプルでより破綻しづらいのは後者。 { (A|B)&(C|D) = (AC|AD|BC|BD) } Proxomitronでのアスタリスクは賢い上に速度も最速な便利な道具だけど慣れるまでは上記のようなスタンスで取り組んだほうがいい。 高速化チューニングはその後からやってもいいんだから。
属性値と要素を混同している部分があるけど、適宜読み替えてほしい。 <a(rea|)>...</a(rea|)> について。 残念ながらProxomitronの仕様ではこれに多少の修正を加えることで「意図」通りに動かすということはできない。 方法は二つ。 一つは括弧を閉じないやり方。 Proxomitronからすれば一番合理的なやり方だけど、人間からすれば読みづらいしフィルタサイズが大きくなるわ追加・修正が面倒だわ。 <a(rea...>...</area> | ...>....</a>) もう一つはTSTを利用するやり方。 <a(rea...>(\1)<\area> | ...>(\1)<\a>)$TST(\1=foobar) これなら人間にとって把握しやすいし修正が楽になるというメリットがある。 後者は同じようなことをANDやBoundsを使って表現することもできる。 ANDとBoundsとTSTでどれが一番早いかは……不明。
簡単なテストでANDとDOUBLEANDとTSTの速度比較をしてみた。 AND : <a\s([^>]+>&href=$AV(*)) TST : <a\s([^>]+)\0>$TST(\0=*href=$AV(*)*) DAND : <a\s([^>]+>&&*href=$AV(*)*) フィルタとしては考え得る限りで同一の動作をすると思う。 結果から言うと所要時間は AND ≒ DAND < TST でした。 TSTが一番遅いだろうとは思ってたけどANDとDANDがほぼ同じというのは少し意外。 #もちろんサンプルによっては結果は異なると思うので、本来なら色々なサンプルでテストしてみるべきところだが #今回は二つのサンプルでほぼ同一の結果(所要時間の比率)を得たのでよしとした。 AND/DANDとTSTの速度差は数回の平均を取った場合で0.7%。 ANDとDANDの差は誤差範囲内。 ちなみに <a\s[^>]++href=$AV(*)[^>]+> は上記三つの約7倍の速さだった。 [^>]++をアスタリスクに置換すると更に6%早くなった。(但しこのアスタリスクの使い方は非推奨) 長い文字列に対しては$NESTを使うことで更に早くなる場合もあるがそれはケースバイケース。
ニコニコ動画から直接.flvをDLできるフィルタきぼん
間接キスでガマンして
490 :
名無しさん@お腹いっぱい。 :2007/03/09(金) 05:36:25 ID:TLLxfe8n0
素人な人は、ここで質問して作ってもらったフィルターは、すぐに試さない方がいいかもしれない。 半日程度寝かして、否定的なコメントが出ないぐらいまで待った方が良いかもね。 とんでもないスクリプトを混ぜられるかもしれん。
>>485-487 どうも
作成途中の段階で冗長になりすぎてわけがわからなくなったので
全部おじゃんにして作り直して出来たと思った途端に半端なまま
UPしてしまいました。
出直します..
<a(rea|)>...</a(rea|)> についてすっかり忘れていたことがあったので追記します。 >残念ながらProxomitronの仕様ではこれに多少の修正を加えることで「意図」通りに動かすということはできない。 これはまったくの誤りで実はもう一つの(比較的小規模な修正で意図通りに動かせる)方法がある。 第三の方法は変数をフラグとして用いてOR関数で分岐させるというもの。 例: <a(\s$SET(flag=0)|real\s$SET(flag=1))[^>]+>*<($TST(flag=0)/a|$TST(flag=1)/area)> 但しこの手法ではローカル変数は使えないので、グローバル変数を使うことになるが使用後に解放することを忘れずに。 解放のやりかたは不要になった段階で$SET(flag=)というように空でSETすれば良い。 グローバル変数自体は基本的にほかのフィルタに値を渡すために使うためのもので、フラグとして使うというのはトリッキーな部類に属すのだが Proxomitronの仕様上、ローカル変数をフラグとして利用することができない(一度使ったローカル変数をマッチ欄で再度使うことができない)ので仕方がない。
>>494 遅くなりましたが、ありがとうございます。
オミトロン入れてるのにadblockplusとかアホちやうかと思う。
>>492 一生懸命なとこ申し訳ないけど、日本語訳ヘルプサイトのマッチングコマンドページの
$TSTの説明文のところにそれと同じことをローカル変数で実現する例が載ってる。
あとその方法でやるなら$TSTはもっと後ろに置くべき。 </a>、</area>の後ろで。
>>470 置換スタックに代入するためだけに先頭の<aを()で囲うのは
処理速度の低下になるから高速化に拘るのであれば避けるべき。
>498 $TST(\0)の存在を完全に忘れてた。使い所はまだあまり思い浮かばないけど参考になったよ。 <([a-z]+)\1*</$TST(\1)> すごく……スマートです。 >置換スタックに代入するためだけに先頭の<aを()で囲うのは >処理速度の低下になるから高速化に拘るのであれば避けるべき。 該当部分を $NEST(<a(\s|rea\s)\#, .....) に変えて 置換テキストの先頭に <a を加えたほうが良いということ? 前後での速度変化は検知すら不可能な気がするけど調べてないから何とも言えない。 しかし個人的には修正するときに弄る箇所が多くなる可能性があるフィルタというのは使い勝手がよくないと思う。
myspace(例えば
http://www.myspace.com/hellogoodbye )で
一番上に出る"今週のお勧めアーティスト"のバナーを消したいのと、
おそらくインターネットオプションの言語が日本語だと
メニューが中途半端に日本語になるのがいやなのですが(英語のままがいいです)、
フィルターで解決できますでしょうか?
もしできるのであればどなたか作っていただけませんか?
よろしくおねがいします。
>>498 > 置換スタックに代入するためだけに先頭の<aを()で囲うのは処理速度の低下になる
今回はa要素かarea要素かを覚え込ませる必要があるので、置換スタックを使わざるを得ませんでした。
(rea|) で変数に格納した方が望ましいということでしょうか?
ところで、何の前提も無しに私がフィルタを作成しようと思ったら、$NESTは使わないと思います。 $NESTを使用すると、最小限のマッチが実現しにくくなる(マッチしなくても良いところまでマッチする)場合があり、今回はその状況なので…。 [Patterns] Name = "Insert <a> title [2007/03/10] test4" Active = TRUE URL = "$TYPE(htm)" Limit = 256 Match = "(<a(rea|)\s)\#(^(^[^>]++href=$AV(\2)))" "(([^>]++)\#title=$AV(\1)$SET(#=title="<a title>: \1\r\n<a href>: \2)|" "$SET(#=title="<a href>: \2))" "(" "[^>]+>(^<img\s[^>]++title=)" "(<img\s(" "[^>]++src=$AV(\3)$SET(#=\r\n<img src>: \3)&" "([^>]++alt=$AV(\4)$SET(#=\r\n<img alt>: \4)|)" ")|)" ")\9" Replace = "\@"\9" ---- サンプルソース <a id="a_id" title="a_title" href="a_href"><img alt="img_alt" src="img_src" title="img_title" /></a> <a id="a_id" title="a_title" href="a_href"><img alt="img_alt" src="img_src" /></a> <a id="a_id" title="a_title" href="a_href">text</a> IE7とSyleraで検証したところ、img要素のtitle属性が存在するときは、img要素のtitle属性がツールチップに表示されるようです。 そのため、img要素のtitle属性が存在する状況ではマッチしないようにしてあります。 どうせなら、img要素用のフィルタがあっても良いかもしれません。
>502の続き。 「最小限のマッチ」を最優先で考えるならば、>502のフィルタは \9 ではなく「肯定先読み」を使うべきですが、それでは置換スタックに該当テキストが代入されませんでした。 仕方がないので、ローカル変数で代替えしていますが、他に良い手段があれば改善したい部分です。
ニコニコ動画から直接.flvをDLできるフィルタきぼん
>>325 遅レスですが、作成したのを忘れていました。(汗)
[Patterns]
Name = "Mooter: Kill ad [2007/02/09] test1"
Active = TRUE
URL = "$TYPE(htm)www.mooter.co.jp/moot/\?"
Limit = 2048
Match = "$NEST(<td[ >],[^>]++bgcolor=$AV(*)*<div\s[^>]++id=$AV(sponsor)*,</td>)"
"$SET(0=\r\n<!-- Kill Mooter ad -->\r\n)|"
"<div(^(^\s[^>]++id=$AV(sp)))$SET(0=<div style="display: none")$STOP()"
Replace = "\0"
参考までに、どんな時に「Mooter」で検索するのか、聞かせていただけると嬉しいです。
パスを変換するフィルタはときどき話題になるけど、面倒な問題だと思う。 自分も以前考えたことがあったけど、 わざわざパスを変換しなくても目的さえ達成できればいいかと考えて、 まったく別の見方からフィルタを書くことで解決した。 パスを書き換えることが本当に必要なのかを考え直すのも手だと思う。
509 :
498 :2007/03/11(日) 14:17:22 ID:LSOWJrEn0
>>499 >>501 >置換テキストの先頭に <a を加えたほうが良い
>(rea|) で変数に格納した方が望ましい
そうです。 でもこれは’高速化を重視する場合は’という条件での
話なので必ずこう書かなければいけないということではないです。
>>470 は高速化のために$NESTを使ってると思ったので
>>498 のレスを
付けたんですが、
>>502 を読むとどうやら違ったみたいです。
こちらの勘違いだったようなのですみませんが忘れて下さい。
>>503 (^(^$SET(#=…)))は使えないようですね。
(^(^$SET(ローカル変数=…)))は動いたのでこれで代用してはいかがでしょうか。
511 :
名無しさん@お腹いっぱい。 :2007/03/11(日) 17:50:01 ID:0EO6G7xs0
title要素内の改行をスペースに置換するにはどうしたらいいでしょう。
>>506 試してないので推測ですが、wikiの$SETの説明文に書いてある現象が
起きていると思われるので最短一致にならない書き方にすれば直ると思います。
>>511 改行は\r\n。
513 :
511 :2007/03/11(日) 21:44:41 ID:0EO6G7xs0
アメーバ動画をDLできるフィルタきぼん
516 :
511 :2007/03/12(月) 00:16:20 ID:/2yG7ZeG0
>>515 違います。
私は既存のどのフィルターに対しても言及していません。
ただ、私のやりたいことについて言っているのです。
改行をスペースに置換する方法は知ってるんです。
それをtitle要素に限定する方法がわからないのです。
>>510 ローカル変数で万事OKでした。多謝。
# まさか、置換スタックの制限だったとは…。$SET が使えないものと想定していました。
[Patterns]
Name = "Insert <a> title [2007/03/12] test4.1"
Active = TRUE
URL = "$TYPE(htm)"
Limit = 256
Match = "(<a(rea|)\s)\#(^(^[^>]++href=$AV(\2)))"
"(([^>]++)\#title=$AV(\1)$SET(#=title="<a title>: \1\r\n<a href>: \2)|"
"$SET(#=title="<a href>: \2))"
"(^(^"
"[^>]+>(^<img\s[^>]++title=)"
"(<img\s("
"[^>]++src=$AV(\3)$SET(\8=\r\n<img src>: \3)&"
"([^>]++alt=$AV(\4)$SET(\9=\r\n<img alt>: \4)|)"
")|)"
"))"
Replace = "\@\8\9""
>>511 ,513,516
$NEST でマッチ範囲を制限してみてはどうでしょうか?
どなたかSHOUTcast Song HistoryをShift-JISで表示する ヘッダフィルタをお願いしマス
520 :
511 :2007/03/12(月) 01:35:35 ID:/2yG7ZeG0
>>517 ,519
ありがとうございます。
私、$NEST()の使い方がどうもわからないのです。
Match = "$NEST(<title*>,\r\n,</title>)"
Replace = " "
と書いてみたんですが、駄目でした。おそらくこれは間違った書き方なんでしょう。
正しい書き方をご教示願います。
>>520 "$NEST(<title*>,\r\n,</title>)" は "<title>\r\n</title>" にマッチします。
$NEST の第二引数 (上例では "\r\n") は完全一致ですので、「改行を含む文字列」を指定してやれば良いでしょう。
「改行を含む文字列」の簡単な例は
*(\r\n|[\r\n])*
ですが、これでは一つの改行しか置換できません。
複数の改行を置換するためには、「グループ化を利用して、再帰的にマッチ」させる必要があります。
ttp://www.pluto.dti.ne.jp/~tengu/proxomitron/help/Tips_And_Tricks.html (「再帰的なマッチングを使わない方法」を参照)
(*(\r\n|[\r\n]))+{1,*}*
この表現で期待通りにマッチすると思います。
後は、置換スタックに格納して、変換してあげてください。
改行が見つかったときに、$SET で置換スタックに半角空白を格納するのがポイントです。
今更ですが。 title要素内の「空白」と「改行」は同様に「空白としてWebブラウザに解釈される」ので、ブラウザの挙動を変更したいのなら、ご希望のフィルタは期待通りに動作しません。 今回は別の意図が質問者さんにあるのかと思っていたのですが、やはり、気になってしまいました…。
523 :
511 :2007/03/12(月) 06:33:53 ID:/2yG7ZeG0
thinkさんのレスを参考にして、title要素内の改行をスペースに置換するフィルターを作りました。 [Patterns] Name = "Opera History Saver" Active = TRUE Multi = TRUE Bounds = "<title(\s*|)>*</title>" Limit = 256 Match = "(\#(\r\n|[\r\n])$SET(\#= ))+\1" Replace = "\@\1" これで適切なのかどうか不安ですが、テストをした限りでは私の望み通り働いてくれます。 thinkさんありがとうございました。 なぜtitle要素内の改行を空白に置換したかったのかといいますと… Operaの履歴ファイルがたまに破損するから調べてみると、原因はタイトルに含まれる改行らしい。 そこで、Proxomitronを使って、改行を空白に置換してしまえと思ったわけです。 でもですね、もっとよく調べてみると、メディアタイプがapplication/xhtml+xmlの場合において タイトルに改行を含むと履歴ファイルが破損するらしく、text/htmlならセーフみたいなんです。 だからHTTPヘッダーフィルターでapplication/xhtml+xmlをtext/htmlに書き換えれば済む話でした。 せっかく作った "Opera History Saver" ですが、存在意義がなさそうです…。
以前このスレでYahooBlog検索の右側にあるニュースとかを消すフィルターを作ってもらったものですが Name = "test" Active = TRUE URL = "blog-search.yahoo.co.jp/" Limit = 50 Match = "(<!-- [%b1][%a6]\w --> )\1<td [^>]+>$SET(#=\1<td style="display: none;">)" Replace = "\@" これがいつのまのか通用しなくなってしまいました。どこをどう変えればいいのかご教示してくれれば幸いです。
IEが受け取れないメディアタイプを指定するほどのニッチなウェブサイトがタイトル要素に改行を含めるなんてなかなか飲み込めない話だね。 もしかしてインデントでもしてるのかな。 どちらにしろそんなウェブサイトは見る価値がないだろうと思うのでURL killfile.txtに追加するのも一つ。 <title> タイトル </title>
>>485 >もう一つだけど最初のうちはアスタリスクを乱用しないほうがいい。
>初心者にとってのアスタリスクというのはおそらく面倒なことをブラックボックスに詰め込ん>>でどっかにやるためのツールなんだろうけど
>それじゃ何も上達しないし理解もすすまないだろう。
>>(*href=$AV(\1)*|)&(*title=$AV(\2)*|)
>これなんかはアスタリスク乱用の好例だね。
Tips and Tricks
ttp://www.pluto.dti.ne.jp/~tengu/proxomitron/help/Tips_And_Tricks.html アンパサンド「&」を使用すれば、タグの属性を、見つけた順番に関係なく
取り込むことができます。
たとえば、「<img ... >」タグを書き換えて、あなたが持っている画像と置き換え、
元の「width」と「height」の値はそのまま残す、という例を考えてみましょう。
その場合、以下のようにします...
Matching: <img ( (*(height=\w)\1*| ) & (*(width=\w)\2*| ) ) >
この表現真似したんだろ。少し意地悪過ぎないか?
527 :
511 :2007/03/12(月) 21:51:58 ID:xzItuT7B0
>>525 私のOperaの履歴が破損する原因だったサイトは――こんな言い方するとそのサイトが悪い見たいだけど、
もちろん悪いのはOperaのバグ――IEからのリクエストが来たらtext/htmlを吐くように配慮しているサイトでした。
ところで「ニッチなウェブサイト」って何でしょう。
>ニッチ【niche】 >西洋建築で,壁面を半円または方形にくぼめた部分。 >彫刻などを飾ったり噴水を設けたりする。壁龕(へきがん)。 >転じて,広く,隙間をいう。 スキマ産業的Webサイト???
ニッチもサッチもどうにもこうにもブルドッグ
google imageまたダメになった?
>>531 Google Image: Image Change (070115)だったら
<a href="\+e\+b.m\+"><imgを
<a href="\+e\+b.n\+"><imgにすればいいよ
>>524 とりあえず作り直してみた。
Name = "Yahoo blog search"
Active = TRUE
URL = "blog-search.yahoo.co.jp/"
Limit = 80
Match = "<td [^>]+>( <!-- [%a5][%c8])\1$SET(#=<td style="display: none;">\1)"
Replace = "\@"
xhtmlって要素内に改行入れちゃいけないの? ってそんなことあるわけないか。
>>535 トップページがEUCで検索した後のページがUTF8 …… なのか?
これで動くはず。
Name = "Yahoo blog search"
Active = TRUE
URL = "blog-search.yahoo.co.jp/"
Limit = 80
Match = "<td [^>]+>( <!-- [%a5][%c8][%a5][%d4])\1$SET(#=<td style="display: none;">\1)"
"|</head>$SET(#=<style>\n<!--\ntd#rightcol { display: none; }\n-->\n</style>\n</head>)"
Replace = "\@"
おはようございます。
最近、書くだけ書いて投稿を忘れてしまうことが多い気が…(汗)。遅レスですみません。
>>523 なるほど、そういう訳でしたか。
> これで適切なのかどうか不安ですが、テストをした限りでは私の望み通り働いてくれます。
比較的、良くできていると思います。少しアドバイスしますと
-- <title(\s*|)> を <title(\s[^>]+|)> に変更
アスタリスクは制限された領域でない限り、2つ連続で使わない方がよいです。
ttp://vird2002.s8.xrea.com/proxomitron/meta_character/m-chara_asterisk.html -- \1 を \# に変更
置換テキストを \@ のみにできます。
-- Multi を外す。
私の書き方も悪かったのですが、このやり方はProxomitronHelp記述上の「再帰的なマッチングを使わない方法」です。
ヘルプ上のマッチという表現は「フィルタのマッチ」を指していると思われますが、私は「ある表現部分のマッチ」という意味で用いていましたので、ややこしくなっていました…。
Multiに依存しない表現を使う場合は、Multi を外した方が高速化されますし、誤爆を最小限に抑えられます。
>>536 br要素のことでしたら、XHTML1.1 でも使用できます。
<p> で括るべきところで <br /> を使うのはNGですが、論理構造にそってマークアップされていれば仕様上は問題ありません。
最も、「論理要素でないbr要素は非推奨」というポリシーの方もいるようで、それも納得できる話ですけど…。
余談ですが、XHTML2.0 では br要素 は廃止され、新しい要素として l要素 ("line"を意味し、空要素ではなくなります) が導入される見込みです。
ですので、前方互換性を考慮するなら、br要素は使わない方が良いと思います。
>>537 > トップページがEUCで検索した後のページがUTF8 …… なのか?
Yahoo!ブログ検索 - 「Proxomitron」の検索結果
ttp://blog-search.yahoo.co.jp/search?p=Proxomitron ↑の検索結果はEUC-JPで出力されているようですが、そのフィルタではコメント部分がマッチしていないようです。
つまり、<td ... id="rightcol"> へのスタイルのみが適用されているわけですが、これで必要条件を満たしているように思えます。
[%a5][%c8][%a5][%d4] をデコードしてみると、"トピ" となりましたがこれはどの部分にマッチさせようとしているのでしょうか?
Proxomitronによる改変前のhtmlソースを検索してみましたが、HITしませんでした。
>>537 完璧です!本当にありがとうございました。お手数をおかけしました。
541 :
536 :2007/03/14(水) 18:17:41 ID:72ybzZdr0
>>539 やはりOKでしたか、どうもありがとう。
( ´ー`)。oO(…ぬう、何者かがいきなり自画自賛を・・・・)
544 :
537 :2007/03/15(木) 12:43:08 ID:M2i2oHhr0
>>539 > トップページがEUCで検索した後のページがUTF8 …… なのか?
↑ この文字コード云々……というコメントは全然関係なくて、自分の勘違いでした。
> つまり、<td ... id="rightcol"> へのスタイルのみが適用されているわけですが、これで必要条件を満たしているように思えます。
検索結果のページの右側の部分には <td valign="top" id="rightcol"> という風に idが振られているんですが、
トップページ
ttp://blog-search.yahoo.co.jp/ の同じ <td>タグの箇所にはidとかclassが無いんですよ。
それで仕方なく後続のコメント(<!--トピックス関連検索-->)にマッチするような書き方になりました。
そうそう、質問しに来たんですが……
ttp://www.amazon.co.jp/dp/4480062858/ たとえばこのページに行って、「マーケットプレイスに出品する」のボタンを押して、次の画面で
ALT + 1キーを押すと「商品説明」のフォームにフォーカスが行くようにしたいんです。
それで以下のようなフィルタを書いたんですが、上手くいきません。
Name = "test"
Active = TRUE
URL = "s1.amazon.co.jp/"
Limit = 100
Match = "(name=$AV(sdp-sai-condition-comments))\1$SET(#=accesskey="1" \1)"
Replace = "\@"
テスト画面ではちゃんとマッチするのですが、実際の画面ではマッチしてないようです。何が原因でしょうか?
>>544 トップページも考慮していたのですか。納得しました。
>>545 掲示されたフィルタをAmazonでテストしてみましたが、期待通りにマッチし、[Alt + 1] キーでフォーカスが移動しました。
インターネットキャッシュが残っているのではないでしょうか?
# そのままでも支障はありませんが、そのフィルタは置換スタックを使わなくとも、置換テキストに accesskey="1" を記述するだけで機能します
547 :
537 :2007/03/15(木) 22:09:16 ID:5Hl7rs480
>>546 >>545 のフィルタで上手くいきますか?
自分の環境では CTRL + F5 で強制リロードしても、「インターネットオプション」の
「インターネット一時ファイル」でキャッシュを削除しても変わらないです。
いったい何が悪いのやら……
ともかく、検証してもらってありがとうございました。
他のフィルターに邪魔されてるのかも。 デバックモードを試してみれば分かります。
>>547 ええ、動作の上でもhtmlソースを見ても正常動作を確認しています。
>548氏の指摘が当たっているかもしれませんね。
フィルタは早い者勝ちなので、ある範囲にフィルタがマッチすると他のフィルタがマッチできなくなります。
Multiを有効にすることでこの制限を外せますが、動作が重くなるのと複雑なロジックなので、このオプションはあまり使わない方がよいです。
アクセスキーは例えば、検索画面等で [Mat] $NEST(<input\s,\0name=$AV((query|p|q)\1)\2,>) [Rep] <input \0name="\1"\2 accesskey="1"> pはyahoo,qはgoogle な感じで色々使えそうな気がする。
と、対処法を書き忘れました。
フィルタは上に配置してあるものの優先度が高いので、特定のURLにのみ適用させるフィルタ等、出来るだけ有効にしたいフィルタは上に配置してください。
基本的に、上に配置してあるフィルタから作用しますが、マッチングパターンによっては下のフィルタが先に働く場合もあります。
例えば、以下の状況があるとします。
---- htmlソース
<a href="
http://test.com/ ">TestLink</a>
---- フィルタ
Name="test filter1"
Match="TestLink"
Name="test filter2"
Match="$NEST(<a\s[^>]++href=$AV(
http://test.com/ ),</a>)"
「test filter1」は「test filter2」より上に配置しています。
但し、Proxomitronはファイルの先頭から1バイトずつ読み込んでフィルタに合致する状況かどうかテストしています。
ですので、初めにマッチするのはa要素から始まる「test filter2」です。
「test filter1」を優先させたい場合は、
Match="<a\s[^>]+>[^<]++TestLink"
と書きます。
「test filter1」と「test filter2」はa要素から始まるパターンを持っている事になります。
同じ状況のフィルタが2つある場合は、優先度の高いフィルタから働きます。
>551 下に置いたフィルタが先にマッチする現象は、ずっと前から疑問に思ってた。 Proxomitron の仕様なのね。 フィルタを書き直すなどしないとだめなのか……。 優先度を設定することができるといいんだけど。
そいうのは「仕様」とはいわないだろ。 むしろどうしてそれを疑問に思えるのかが疑問なくらいに 至極当たり前の挙動だ。
いや、日本語としては「仕様」で間違ってないと思うけど。
>>552 と
>>553 がどういうニュアンスで捉えているか知らんが。
まさに、仕様。
仕様であってると思うよ。 これが至極当たり前の挙動と思ってるほうがおかしい。 検索アルゴリズムにはいろいろあるがオミトロンのこの方式はその中の1つでしかない。
まぁ確かに 0 < 1 と評価するのはProxomitronの仕様なのね みたいなこと言われたら 日本語として見ても主張の内容として見ても100%正しいけど なんか妙だなって違和感は覚える どちらの言いたいことも分かるが
>>552 「現在のProxomitronの動作」と「>552氏が求めるProxomitronの動作」をまとめると以下のようになると思います。
---- 現在のProxomitronの動作 (以降、「動作A」とする)
1. ファイルの先頭の1バイト目から読み込み、優先度の高いフィルタから順番にテスト
2. 1バイト進み、優先度の高いフィルタから順番にテスト
3. 「3. の動作」をファイルの末尾([EOF])まで続ける
---- 「フィルタの優先度」を最優先した場合のProxomitronの動作 (以降、「動作B」とする)
1. ファイルの先頭の1バイト目から読み込み、「優先度の最も高いフィルタ」をテスト
2. 1バイト進み、「優先度の最も高いフィルタ」をテスト
3. 「2. の動作」をファイルの末尾([EOF])まで続ける
4. ファイルの先頭の1バイト目から読み込み、「前回テストしたフィルタの次に優先度の高いフィルタ」をテスト
5. 1バイト進み、「4. でテストしたフィルタ」をテスト
6. 「4. 〜 5. の動作」をファイルの末尾([EOF])まで続ける
ここで、フィルタテストに必要とするバイト数に注目してみてください。
動作A … 「フィルタテストするバイト数 = 読み込んだファイルのサイズ」
動作B … 「フィルタテストするバイト数 = 読み込んだファイルのサイズ×フィルタの数」
このことから、「動作B」はフィルタの数が多ければ多いほど、Proxomitronの動作が顕著に重くなるでしょう。
「動作A」でもフィルタの数が多いほど、Proxomitronの動作が重くなりますが、フィルタテストするバイト数はファイルサイズ分だけに留まるため、「動作A」の負荷は「動作B」程には大きくならないと想像できます。
日本語としては私も「仕様」であっていると思いますが、上のところの内部事情を知っているか否かで見方が変わってきます。
特に、「フィルタの優先度」という表現は、如何にも「最優先されそうな設定」ですから、勘違いがあっても致し方ない気がします。
# 余談ですが、2chブラウザ「JaneDoe View」の ReplaceStr.txt は「動作B」に近い動作になっていると思われます。
Jane板見たけど、結構大変そうなことやるつもりみたいだねぇ。 ガンガレ。
JaneViewのReplaceStr.txtをオミトロン方式にしたら早くなるのではとViewスレに書き込んだら 複数の人に否定されたことがある。 何故なのか未だに分からない。
>558 ややっ、詳しい解説ありがとうございます。 そういう事情があると極めて妥当な動作ですね。 今後は、優先度を高くしたいフィルタは ほかのフィルタと競合しても問題ないように努力します。
TOK2のWebスペースの広告が激しくUzeeeee!! 消すこと自体は簡単なんだが、 こちらが対応した数日〜1週間後に10〜数百バイトくらいずつ増やして、 バイト制限を潜り抜けてきやがる。 このまま増やし続ける気か(#゚Д゚)ゴラァ!
>562 自分の場合、limit は16384(16KB)になってる。 1回につき最低でも512バイト、最大で2KBくらい増やして、 いったい何回 limit を増やしたことか。
いま思いついたけど、 <!-- tok2_top --> → <div class="tok2-ad"> <!-- tok2_top_end --> → </div> こんな感じで置き換えて、 div.tok2-ad { display: none !important } こうすれば消える。 バイト制限を増やす必要がなさそうだし、動作も軽くなるかも。
>>560 あまり知らずに言ってるんじゃない?
手間と見返りを考えるとその価値があるかは別として、確かに悪くはなさそうな気はする。
566 :
560 :2007/03/17(土) 12:29:59 ID:MSvIFEtK0
>>565 どうなんでしょうね、検索アルゴリズムに詳しそうなレスを書く人ではありましたが
本当に詳しい人だったのか私には分かりませんでした。
>>563 自分は現在13160っす。
>>564 ユーザスタイルシートはキャッシュするからなぁ。
ソース見たときすっきりせんし。
>>564 >>567 <noembed><nolayer><comment>で囲めばキャッシュしないはず。
>>562 トクトクの人気ランキングに出てるサイトいくつか見たけど、そんなに広告だらけって感じでもなかったけど……
>>570 無料の方だよ。
人気ランキング上位は有料が多い気がする。
URLの最後が.jpgで終わっててContent-Type: がimage/jpegで、中身が普通のhtmlになってると WEBページフィルタ適応されないんですが対処方法ありませんか?
>>562 とりあえず作ってみた。
広告部分にidが振ってあったのでCSSで消したよ。
Name = "TOK2"
Active = TRUE
URL = "[^/]++.tok2.com/$TYPE(htm)"
Limit = 120
Match = "(<script * </script> && *(prego.jp)*)"
"|</head>$SET(#=<style>\n<!--\n"
"#TOK2-TOP-BANNER, #TOK2-SIDE-BANNER, #TOK2-SEO { display: none; }\n"
"-->\n</style>\n</head>\n)"
Replace = "\@"
>>572 Name = "1rk"
Active = TRUE
URL = "www.1rk.net/$TYPE(htm)"
Limit = 80
Match = "(<img *> && *(image.jpg)*)"
"|</head>$SET(#=<style>\n<!--\n"
".ad, p.ads, p.adw { display: none; }\n-->\n</style>\n</head>)"
Replace = "\@"
イメージファイルの中にアドビのタグ?が入っていると 誤爆するのを防ぐにはどうしたらよいですか
>>573 Content-Type: をimage/jpegからtext/htmlに置換するフィルタで対処。
URL欄を使ってフィルタが動作するサイトを絞ってから使うといいよ。
[HTTP headers]
In = TRUE
Out = FALSE
Key = "Content-Type: image to html (In)"
URL = "www.hoge.com/"
Match = "image/jpeg"
Replace = "text/html"
>>576 画像ファイルはデフォルトではフィルタリング対象外のはず。
その画像を見れば対策方法が分かるかも。
578 :
ROMラー :2007/03/18(日) 23:52:16 ID:WywTxmu/0
>>506 これで期待通りに動くようです。
# NoAddURL
(#?+)\9$URL(\8)$SET(ABS=\8\9)
./(?+)\9($TST(SWITCH1=1)$SET(ABS=$GET(CURRENTURL)\9)|
$URL(([^:]+://*/([^/]+/)+)\8)$SET(CURRENTURL=\8)$SET(SWITCH1=1)$SET(ABS=\8\9))
/(?+)\9$URL(([^:]+://*/)\8)$SET(ABS=\8\9)
../($TST(SWITCH2=1)$SET(NUM=$GET(LEVEL))|$URL([^:]+://*/$SET(NUM=1)
([^/]+/$LST(increment))+)$SET(SWITCH2=1)$SET(LEVEL=$GET(NUM)))
($LST(decrement)../)+$URL(([^:]+://*/([^/]+/$LST(decrement)
$TST(NUM=[^0]*))+)\8)(?+)\9$SET(ABS=\8\9)
([a-z]+:?+)\9$SET(ABS=\9)
(?+)\9$URL(([^:]+://*/([^/]+/)+)\8)$SET(ABS=\8\9)
>>575 遅くなりましたが、ありがとうございます。
本スレが不毛な言い争いの場に… DOCTYPE宣言があればそのまま、無ければ付加ってフィルタを作ろうと思ったのに 前者が実現できなくて問答無用に付加されてしまう 有効リストなり無効リストなりを作ってマッチさせる手もあるけど それじゃ汎用性が落ちるからなぁ
581 :
ROMラー :2007/03/19(月) 00:48:14 ID:7ZzHzeuq0
>>506 $GET(ABS)と\8\9が一致しない原因は以下のフィルターを試せば分かります。
テストウインドウに"abc"と書いて下の3つのフィルターを試して下さい。
Name = "$SET test1"
Active = FALSE
Limit = 256
Match = "*"
Replace = "<match>"
Name = "$SET test2"
Active = FALSE
Limit = 256
Match = "*$SET(\0=text)"
Replace = "<match>"
Name = "$SET test3"
Active = FALSE
Limit = 256
Match = "?+$SET(\0=text)"
Replace = "<match>"
1と2の違いは$SET(\0=text)が付いてるかどうかの違いしかありませんが結果が
変わっていると思います。 3では2で起きた問題を修正するために*を?+に書き換えています。
582 :
ROMラー :2007/03/19(月) 01:09:43 ID:7ZzHzeuq0
>>506 何故こうなるかというと、*は後ろに何かがあれば最短一致として動作、無ければ
最長一致として動作するためです。 *の後ろに$SETコマンドがあると*は最短一致として
動作するようになってしまうので2のようにカラにマッチしてしまうわけです。
そこで後ろに何があっても最長一致をする?+を使うことでこの問題を回避しています。
>>580 こんな感じですかね。
Active = FALSE
Limit = 256
Match = "("
"(^(^ <!DOCTYPE))"
"|"
"$SET(0=<!DOCTYPE ....)"
")"
"$STOP()"
Replace = "\0"
583 :
580 :2007/03/19(月) 06:43:35 ID:NXCUdEyC0
>>582 お、これはありがとうごぜぇやす
ブックマークから適当に踏んで試してみたらXML宣言ありなページで誤爆したんで
回避する為に”(^(^ *<;!DOCTYPE))”に変えてしばらく使ってみるっす
そこでSTOPかけるのを思い付かんかったのと
宣言文に続く<HTML〜まで見るようにしてたのが敗因か
586 :
ROMラー :2007/03/20(火) 17:30:14 ID:PPne+SNt0
>>584 Protect Contents except HTMLというフィルタが誤爆しているようなので
このフィルターを修正するしかないですが、ログを検索してみてもこのフィルターを
配布しているところが見つかりません。
よろしければここに貼るか、うpして頂けないでしょうか。
問題が起こるところがそのサイトだけならば (^([^/]++.|)mxtv.co.jp/) をそのフィルターの
URL欄の先頭に入れれば回避出来ますが、根本的な解決にはなりません。
>587-588 ありがとうございました。 俺もそろそろ自分でフィルター作れるように勉強しないとな・・
ん、あれ?dpの商品名部分が削れればそれでOK?
>>587 だと、(私の知る限りの)全ての形式のURIに対応、
かつASIN以降を全て消し去るという方向で書いてます。
お好きな方をお好みで、かな。
と思いきや、肝心の/dp/に対応してなかったので修正。
その他、商品画像ページ対応、ジャンプ先URIを更に短縮など。
[HTTP headers]
In = FALSE
Out = TRUE
Key = "URL: Amazon URI Simplizer alpha.1.4 (out)"
URL = "(www.|)amazon(.co|).jp/\w((ASIN|obidos|dp|product(/images|))(/|=))[0-9A-Z]+{10}?"
Match = "*((images/|)([0-9A-Z]+{10}))\0"
Replace = "$JUMP(
http://amazon.jp/dp/\0 )"
アカウントサービス内での誤爆が一番恐い。
URIに含まれる文字列と[0-9A-Z]+{10}?でのASIN探しで
一応の防御はしてるつもりなんだけど。
>>592 これは恥ずかしい…。
URLマッチばっかり気にして実際のマッチを手抜きしてたのが原因でした。
[HTTP headers]
In = FALSE
Out = TRUE
Key = "URL: Amazon URI Simplizer alpha.1.4.5 (out)"
URL = "(www.|)amazon(.co|).jp/\w((ASIN|obidos|dp|product(/images|))(/|=))[0-9A-Z]+{10}?"
Match = "\w((ASIN|obidos|dp|product)(/|=))((images/|)([0-9A-Z]+{10}))\0"
Replace = "$JUMP(
http://amazon.jp/dp/\0 )"
まだまだ弄ってみたら、今のところ不具合が
・ユーズド商品関連に対応できない
・商品画像ページで他のカラーが見れない
どんどん冗長になってくし、やっぱり
>>588 ぐらいシンプルな方が
機能的にも精神衛生的にもいいみたいです。勉強になりました。
タブブラウザでJavascriptが有効だとアドレス短くならないよね? IEだと短くなるね
アマゾンのアフィリエイトをやっている身としては、 アソシエイトIDまで削られるのは遺憾だな。
オミトロン使うような奴ならアフィは全殺しするだろ・・・常識的に考えて
確かアフィIDを指定のものに書き換えるフィルタっていうのも以前あったな
アマゾンのアフィリエイトは真っ先に殺す。
アフィが見えなくなるのは別に構わないけどさ、 でも自ら進んで踏んだものは有効にしようよ。
( ゜σ・・ ゜) ホジホジ
>>602 Content-Encoding: text/html; charset=csiso2022kr
つ SJIS
>602に行ってみたけど、 ヘッダで文字コードを詐称されると、フィルタがまったく効かなくなるね。 これは Proxomitron を無効化させるための手段になる。危険だな。
変なContent-Encodingは消したほうが良いみたいだな gzip, chunk 以外知らんけど
>>602 [HTTP headers]
In = TRUE
Out = FALSE
Key = "Content-Encoding: Kill Content-Encoding (in)"
Match = "*"
[HTTP headers]
In = TRUE
Out = FALSE
Key = "Content-Type: Kill charset (in)"
Match = "text/html; charset="
Replace = "text/html;"
>>606-607 ですね。
Match = "(^gzip|x-gzip)?" とかにしとかなくていいの
文字コード詐称されてフィルターが効かないと言う状態なら ブラウザも正しく認識出来ないのだからどっちにしろ危険は無いんじゃないのか?
オミトロン装備してるとどうも一部の頁が西ヨーロッパ言語になってしまうんだが、どうすればいい?
すまない。スレ違いだった。
>>602 ,615
こちらの環境では、「>609の "Content-Type: Kill charset (in)" を取り入れて、JavaScriptを有効に」すれば、支障なく閲覧できています。
万が一問題があるようでしたら、以下のフィルタを取り込んでみてください。
[HTTP headers]
In = TRUE
Out = FALSE
Key = "Content-Type: Fix g-kaizou charset (in) [2007/03/24]"
URL = "karen.saiin.net/~g-kaizou/"
Match = "text/html; charset=(^shift_jis|euc-jp|iso-2022-jp|utf-(8|16))"
Replace = "text/html; charset=shift_jis"
>616の続き。
Content-Typeヘッダの不正が原因なわけですが、Firefox, Opera9 (IE6, IE7 は [日本語(自動選択)] にチェックONで正常に閲覧可) で閲覧不可では少なからず訪問者を逃がしてしまいます。管理人の運営方針にもよりますが、サイト側の問題と受け取れると思います。
当分は、Proxomitronで凌ぐとしても、サイト運営者に報告しておいた方がお互いの益になるのではないでしょうか。
該当Webサイトのトップページには
-------------
2007年3月18日
なぜか全ページが文字化け(原因不明)
-------------
とあるので、運営者は原因を把握していないと思われます。
おそらく、htaccess に
AddType "text/html; charset=csiso2022kr" .html .htm
の記述があるので、これを
AddType "text/html; charset=shift_jis" .html .htm
に変更すれば、問題は解消されるでしょう。
…ということを運営者に報告してあげてください。
文字化け対策としての.htaccess
ttp://www.shtml.jp/htaccess/mojibake.html @IT:Javaの文字化け対策FAQ(1)
ttp://www.atmarkit.co.jp/fjava/rensai3/mojibake01/mojibake01.html
問題提起されている件は、
Content-Encoding: text/html; charset=csiso2022kr
でProxomitronフィルタが無効になるという現象ですね。
# Content-Typeの方はフィルタの挙動とは無関係のようです。
# 何より、Content-Typeヘッダを意図的に不正にするとWebブラウザでの閲覧の支障が出るので、そういう設定にされる可能性は低いと思います。
で、この
Content-Encoding: text/html; charset=csiso2022kr
という記述は、正しい書式なのでしょうか?
よく解らないなりに、調べてみると以下の文献が見つかり、
-----------------
内容コーディングは、section 3.5 にて定義されている。使用例を見よ。
HTTP/1.1: ヘッダフィールド定義 - 14.11 Content-Encoding
ttp://www.practical-lamp.com/LAMP/PHP/reference/rfc/html/sec14.html#sec14.11 -----------------
最初は、登録機構は以下のトークンを登録している。... gzip, conpress, deflate, identity
HTTP/1.1: プロトコルパラメータ - 3.5 内容コーディング
ttp://www.practical-lamp.com/LAMP/PHP/reference/rfc/html/sec3.html#sec3.5 -----------------
とあるので、少なくとも>602のWebサイトの出力するContent-Encodingヘッダの書式は誤っているような気がします。
>618の説が正しいとすると、Content-Encodingヘッダも運営者側で修正する方が望ましいので、サイト運営者が .htaccess から AddEncoding "text/html; charset=csiso2022kr" .html .htm を削除するという配慮があると有り難いですね。(書式は少し自信がないです…。) あえて、Proxomitron排除のために残すというサイトがあった場合は、以下のフィルタで回避できる…と思います。 [HTTP headers] In = TRUE Out = FALSE Key = "Content-Encoding: Kill faulty value (in) [2007/03/24]" Match = "(^gzip|compress|deflate|identity)"
乙。 httpd.confも疑ったほうがいいですな。
>>619 Content-Encodingヘッダが無い時でもマッチしてしまうようだ。
Match = "(^gzip|compress|deflate|identity)?+"
>>620-621 レス有難う御座います。
>621を取り込ませていただきました。m(_ _)m
[HTTP headers]
In = TRUE
Out = FALSE
Key = "Content-Encoding: Kill faulty value (in) [2007/03/25]"
Match = "(^gzip|compress|deflate|identity)?"
> httpd.confも疑ったほうがいいですな。
>602は自宅サーバじゃないようなので、httpd.conf を編集する権限がないと思います。多分…。
メンテの後文字化けしたんじゃなかったっけ? 運営側が何かやらかしたのでは。
何にしても両方チェックしておくに超したことはないですね。 その辺りも加味して、>602のサイトへ報告しておきました。
ローカルに保存したhtmlをこれを通して閲覧する方法はありますか? 極力改変を加えずに保存し、閲覧時には無駄な広告やflashへのリンクを 殺して動作を軽くしたいです。
628 :
626 :2007/03/25(日) 15:25:33 ID:Dk5Qg+wy0
>>627 そうですか・・
ありがとうございます。
>602のサイト復旧。 結果的に、"Content-Type: text/html", Content-Encodingなし の状態に落ち着いたようです。 # 匿名で報告したので、具体的な対処法(原因)は判りませんでした。 何はともあれ、>602氏の問題は解決しました。
失礼。 >629の件ですが、掲示板に復旧までの経緯が記載されていました。 .htaccess は無関係で、サーバの管理者に報告したのみ…ということです。
すべらない名無し(
ttp://by774.blog73.fc2.com/ )にある、
Brainerのテキスト広告をカットしたいのですが、下記ではうまく仕事をしてくれません。
どなたかご教授願えせんでしょうか。
[Patterns]
Name = "[User] AD @ Brainer"
Active = TRUE
Limit = 1139
Match = "$NEST(<script[^>]+>,</script>)<script[^>]++ad.brainer.jp[^>]+></script>$NEST(<iframe[^>]+>,</iframe>)"
Replace = "<!-- AD @ Brainer - Blocked by Proxomitron -->"
>>626 FirefoxならAdblockが使える。
>>631 該当Webサイトのhtmlソースを拝見しました。
マッチさせたい箇所は以下の部分ですよね?
<script type="text/javascript"><!--
brainer_partner_id = "****";
...
brainer_channel = "****";
//--></script>
<script type="text/javascript" src="
http://ad.brainer.jp/ad.js "></script>
## 引用元:
ttp://by774.blog73.fc2.com/blog-entry-2210.html iframe要素が見あたらないために、マッチしていないと思われます。
更に簡単に書くならば、<script type="text/javascript" src="
http://ad.brainer.jp/ad.js "></script> だけにマッチさせても良いですね。
前述のscript要素の内容コードは、変数の初期化だけですので本元の処理部分をカットするだけでも広告を取り除けます。(script要素の順番に配慮しなくても良いのも利点)
細かいことをいえば、ad.brainer.jp はsrc属性値に限定した方がベターだと思います。
>>632 どうもありがとうがざいます。
火狐の「選択した部分のソースを表示する」を使ってしまい、確認を怠っていましたorz
今までのテストでおkなのに引っ掛からなかったフィルタも確認しなければ(´・ω・`)
前半の$NEST部分は仰るとおり必要ないのですが、
ソースを見たときに痕跡があると何故かヽ(`Д´)ノフォオオオ!となるので、
個人的にくっつけていたりいなかったり。
[Patterns]
Name = "[User] AD @ Brainer"
Active = TRUE
Limit = 640
Match = "$NEST(<script[^>]+>,</script>)<script[^>]++src="
http://ad.brainer.jp/ad.js "[^>]+></script>"
Replace = "<!-- AD @ Brainer - Blocked by Proxomitron -->"
634 :
620 :2007/03/27(火) 21:51:05 ID:WBi+faku0
>>629-630 お疲れ様でした。 運営側のミスでしたか、こういうこともあるんですね。
>>626 ブラウザを起動してるときにProxomitronのメインウインドウに目的のhtmlファイルをD&Dすれば
フィルタリングされたページがブラウザに表示されます。 このときブラウザのアドレスバーに
表示されるURLをお気に入りに入れておくと便利かも知れません。
「URLのマッチ」欄では"http(s|)://"は含めないで下さい。
>>634 の方法だとファイルパスの中の ":" が何故か "%7C" に置換されてしまう。( %7C = "|" 、正しくは %3A。)
このためページが見つからずにエラーになるのでそれを修正するURL Control系のリスト用コード。
--------------------------------------------------------------------------------------------
# ProxomitronウインドウにhtmlファイルをD&Dした時のURLを修正。 "prefix.." は各自のprefixに書き換える。
http://prefix..file//([a-z]+{1,2})\0%7C/\1&$JUMP(http://prefix..file//\0:/\1)
--------------------------------------------------------------------------------------------
この現象はデフォルトの4.5June、4.5 338で確認。
>>636-637 試してみましたが、期待通りに動きませんでした・・・論外って事ですね。
フィルタ自体はテストも動くし、同一内容のhtmlをコピーして別サーバにアップして試したところ
問題なく動いたので、フィルタが間違っているわけでは無いと思うのですが・・・。
ログを見ているとローカルに対しては全くフィルタを適用しようとしていない様に見えます。
設定のチェックは外しているのですが。
諦めます・・・レスありがとうございました。
Sageは使ったことないからよく知らないけど、 広告だったら何か規則性があるんでないの? <div class="ad"> の中に入っているとか、 <a href="広告サイトのURL"> とか。 スタイルシートで消すことが可能かもしれない。
ありがとうございます。 おっしゃるとおりで、普段はIEとFirefoxを使い分けているので、どちらかのブラウザに 依存する方法で広告削除はしたくなかったのですが、今回はFirefoxに依存した 問題なのだから、FirefoxのCSSで消してしまえば良かったのですよね。 Proxomitronで消す事ばかりを考えてしまって、そこに考えが至りませんでした。 件の広告はCSSを用いて無事に削除出来ました。 フィルタがローカルに適用されないというのが未だに解決していないのが 気持ちの悪いところではあるのですが、ともあれレスをくれた皆さん、 ありがとうございました。
>>639 Ctrl+F5で強制リロードしてもダメ?
>>642 キャッシュを読まずにリロードって事ですよね?
ダメでした・・・。
検索表現で改行コードを"\n"にしている。 WebにASCIIモードでアップ → 改行コードが 0Ah となり、マッチ ローカルでフィルタリング → 改行コード 0Dh 0Ah でマッチせず とか。(苦しいか...)
>643 chrome://sage/content/feedsummary.html?uri=[URL] URLがこういう感じの形式だからじゃないの?
>>644 検索条件に改行コードは含んでいないです。
>>645 ロケーションバーに表示されるsageのURLは、
file:///C:/Documents%20and%20Settings/UserName/(省略)/chrome/sage.html
です。省略部分は一般のプロファイルの場所です。
レスが頂けるのは大変嬉しく勉強にもなるのですが、
流石にスレ違いな気がしてきたので、スルーしていただいて結構です・・・。
すみません、ありがとうございます。
FXがローカルのファイルを直接開いてるんじゃないの? そうだとしたら対処不能
>>648 特に問題は見あたりませんでした。
マッチしないフィルタを開示できるのであれば、アドバイスできるかもしれません。
<font style="cursor:url(mailto:kuso.ani)">feffeffe</font>
TOK2広告、4月1日現在、Limit = 13640 確実に増え続けている。 Proxomitronを意識しているとしか思えないんだが。
↑馬鹿
やっつけ Match = "(c|\c)(u|\u)(r|\r)(s|\s)(o|\o)(r|\r) (:|=) [^;}>]+"
ぐは これでどうだ Match = "(c|\c)(u|\u)(r|\r)(s|\s)(o|\o)(r|\r) (:|=) [^;}>]+"
これ、10進とかにも対応とか考えると重くなるだけな気がするな $UESCの検索側版って無いのかな?
CSS内の数値文字参照を本来の文字に戻してから、 他のフィルタで処理したほうが良いような
>>650 ユーザースタイルシートで
*{cursor:auto!important;}
とやったらどうかな
IE6じゃ!important使えなかった希ガス
>>653 >>658 うん、TOPではなくUNDERのほうだよ。
TOPは増えないから通常通りで大丈夫。
>>659 なるほど、その方法は良さそうだな
考えつけなかった
>>659 ,663
それ、ちゃんと機能する?
IE6では駄目だった。
>>650 ,655の10,16進大文字小文字対応…重いかな?
実体参照の区切り文字 ; が無くても有効だ!
Match = "(c|\&#(x63|x43|67|99)(;|))"
"(u|\&#(x75|x55|85|117)(;|))"
"(r|\&#(x72|x52|82|114)(;|))"
"(s|\&#(x73|x53|83|115)(;|))"
"(o|\&#(x6F|x4F|79|111)(;|))"
"(r|\&#(x72|x52|82|114)(;|)) (:|=)[^;}>"]+"
実体参照が有効なのはインラインでのスタイル定義(
>>651 )だけで
.cssファイルと<style>ブロック内では無効みたいだね。
アニメーションカーソルはfaviconにも使えるそうだし拡張子偽装も出来るそうだから 弾くの難しいだろうね
IEを使わない。これで>665も解決できると思われ。 MIME-Type もろくに見ないようなブラウザを使うのが悪いと言わざるをえない。 favicon は、*.ico か image/x-icon を\kすればいいのかな。
うは、数字前部複数の 0 、文字間に %00 があっても有効だった。
キリがない…orz もう、これで終わりにしますぅ。
>>664 でした。
Match = "(c|\&#(x[0]+{0,*}(63|43)|[0]+{0,*}(67|99)) (;|)) "
"(u|\&#(x[0]+{0,*}(75|55)|[0]+{0,*}(85|117)) (;|)) "
"(r|\&#(x[0]+{0,*}(72|52)|[0]+{0,*}(82|114)) (;|)) "
"(s|\&#(x[0]+{0,*}(73|53)|[0]+{0,*}(83|115)) (;|)) "
"(o|\&#(x[0]+{0,*}(6F|4F)|[0]+{0,*}(79|111)) (;|)) "
"(r|\&#(x[0]+{0,*}(72|52)|[0]+{0,*}(82|114)) (;|)) (:|=) [^;}>"]+"
>>664 ちょいとcとかにすりゃもうすり抜けられちゃうし。
こういうのってそうやってゴチャゴチャ書いててもやっつけ解決にすらならんよ。
669 :
668 :2007/04/03(火) 02:52:16 ID:O0ftgExI0
入れ違いになってしまった。
ちなみにキミの書いているのは(文字)実体参照ではなくて数値文字参照だ。 どうでもいいけど。
>>667 補足です。
>・・・文字間に %00 があっても有効だった。
& # x 0 0 6 3 ; u r s o r :
↑半角スペースを %00 と読み替えて下さい。
当然ながら
>>667 ではマッチしませんから…中途半端でスマソでした。
>>669-670 了解です。
仮に理想的なフィルタができたとしても、 よほど処理が軽くない限りは使いたくないものだな。 そこまで悪意を持ったサイトなんてあるんだかというのが知りたい。 まあ、精神的ブラクラを集めたような物好きサイトがあるのも確かだが。
この手の物をおみとろんで全部弾くには相当な手間になると言う事か
>>672 半分は思考実験かと
今回だけでなく、今後にも役に立つ可能性が残るし
プロファイル結果...
サンプルテキスト : 30000 バイト(このスレのhtmlソース)
成功マッチ数 : 1
(5回試行した平均値)
>>650 平均時間 : 0.37 (ミリ秒)
>>655 平均時間 : 0.72 (ミリ秒)
>>664 平均時間 : 0.73 (ミリ秒)
>>667 平均時間 : 0.73 (ミリ秒)
↓平均時間 : 0.73 (ミリ秒)
Match = "(c|\& # (x (0 )+{0,*}(6 3|4 3)|(0 )+{0,*}(6 7|9 9)) (;|)) "
"(u|\& # (x (0 )+{0,*}(7 5|5 5)|(0 )+{0,*}(8 5|1 1 7)) (;|)) "
"(r|\& # (x (0 )+{0,*}(7 2|5 2)|(0 )+{0,*}(8 2|1 1 4)) (;|)) "
"(s|\& # (x (0 )+{0,*}(7 3|5 3)|(0 )+{0,*}(8 3|1 1 5)) (;|)) "
"(o|\& # (x (0 )+{0,*}(6 F|4 F)|(0 )+{0,*}(7 9|1 1 1)) (;|)) "
"(r|\& # (x (0 )+{0,*}(7 2|5 2)|(0 )+{0,*}(8 2|1 1 4)) (;|)) (:|=) [^;}>"]+"
興味本位の改変なので、突っ込まんで下され。
>>672-673 同意。
>>675 おお!
他にどんなパターンが考えられますか?
nico動画のID表示フィルタってありませんか?
URLをリストで管理する際に、ずっと感じている疑問。
href=$AV((
http://| https://|//| )$LST(リストの名前)*)\1
まず最初に使い方を書いておくと、このような感じ。
疑問1。
「~」と「%7E」のどちらにもマッチさせるには (~|%7E) と書くしかないのかな。
href="http://somehost.jp/~anyname/"
href="http://somehost.jp/%7Eanyname/"
このような例はリンク先が同じになるけれども、両方にマッチさせるには、
somehost.jp/(~|%7E)anyname/
このように書いているのが現状。なんとなくメンテナンスしにくい。
$UESC が使えないかと思うものの、いい方法はないのかな。
疑問2。
href="http://www.yahoo.co.jp/"
href="http://www.yahoo.co.jp"
href="http://www.yahoo.co.jp/index.html"
など、トップページへのリンクのみにマッチさせたいときは、
www.yahoo.co.jp(/|/index.html|)(^?)
こう書いているんだけれど、これもメンテナンスが面倒。
上記は yahoo の例だけど、google に対しても同じことをしたければ、
www.google..co.jp(/|/index.html|)(^?)
やはり(各サイトごとに)このように書かなければならない。
上記2点のようなことがあると、リスト(URL)の内容が煩雑に見えるので、
もっと見やすい(煩雑に見えない)書き方があれば教えてください。
(/|/index.html|)(^?) の部分をフィルタ側に書くなど、何か工夫できるといいんだけど。
>>679 %7Eの件はURLを$UESCしたものをグローバル変数に入れて
そのグローバル変数を$TSTでテストする。 (リストを$TSTの中に置く)
ただし速度的にかなり遅くなるので遅いマシンではもっさりしてしまうかも。
(/|/index.html|)(^?)の件はこれだけを記述したリストを別に用意して
www.google.co.jp$LST(ROOT) のように使う。
>>679 > (/|/index.html|)(^?) の部分をフィルタ側に書くなど、何か工夫できるといいんだけど。
未検証の上、効率が下がりますが。
href=$AV((^(^[_0-9a-z-]+{2,*}(.[_0-9a-z-]+{2,*})+{1,*}(:[0-9]+|(^:))((^?)|/index.(html+|php|cgi)(^?))))
\0(index.(html+|php|cgi)(^?)$SET(Temp=\0)|(^?)$SET(Temp=\0/)))
$TST(Temp=$LST(リストの名前)*)
あるいは、煩雑なコードに目をつぶって、テキストエディタの一括置換でメンテナンスするぐらいでしょうか。
パッチも出たことだし用済みとなりましたが…
>>650 ,655,664,667,674
>>651 ,671,675
Match = "cursor[^:=}]+(:|=) url\([^)}]+\)(;|) \1}$SET(0=\1})|"
"style=$AVQ(\1"
" (c|\& # (x (0 )+{0,*}(6 3|4 3)|(0 )+{0,*}(6 7|9 9)) (;|))"
" (u|\& # (x (0 )+{0,*}(7 5|5 5)|(0 )+{0,*}(8 5|1 1 7)) (;|))"
" (r|\& # (x (0 )+{0,*}(7 2|5 2)|(0 )+{0,*}(8 2|1 1 4)) (;|))"
" (s|\& # (x (0 )+{0,*}(7 3|5 3)|(0 )+{0,*}(8 3|1 1 5)) (;|))"
" (o|\& # (x (0 )+{0,*}(6 F|4 F)|(0 )+{0,*}(7 9|1 1 1)) (;|))"
" (r|\& # (x (0 )+{0,*}(7 2|5 2)|(0 )+{0,*}(8 2|1 1 4)) (;|))[^;"]+ \2"
")$SET(0=style=\1\2)"
Replace = "\0"
サンプルテキスト : 30000 バイト
平均時間 : 0.511000 (ミリ秒)
一行目を {} で括って {\1cursor[^:=}]+(:|=)[^;}]+(;|) \2}$SET(0={\1\2}) のようにすると
平均時間 : 0.881000 (ミリ秒)
a{ cursor アXXXイ ウYYYエ: url( mailto: kuso.ani オZZZ ) } ←こんなのも有効でした。
半角スペースの部分は[%00]から[%20]までマッチさせた方が望ましい。
684 :
679 :2007/04/07(土) 06:24:57 ID:xLSZD1g90
どうもありがとうございます。 遅くなる上に誤動作の可能性ありですか。パワーのないマシンでは厳しい。 $LST(ROOT) を使う場合、中身は以下のようになるのかな。 (/|/index.html|)(^?) (/|/index.php|)(^?) index.php などになっているサイトもあるので。 wƾw.google.co.jp$LST(ROOT) のような場合、 ドメイン名の後に$LST(など、何かしらの文字)を書かねばならないので、 見やすくはなるものの、(/|/index.html|)(^?) を書くのとあまり変わりないかもしれない。 軽さを重視して、何より誤動作させたくないのであれば>679のままでよさそう。 余談だけど>679を書いたのは、 \kの対象などになる URL のリストが長くなったのがきっかけ。 一度登録すると削除することがなかなかないものだから、 ドメインなどのリンク切れチェックや誤爆チェックをするため、 URL を最初から書き直すことにした。 個人サイトのウェブリングや、中小規模のショップなどはリンク切れがけっこうありそう。 1年から2年に1回くらいはリストを書き直すといいかもしれない。
685 :
680 :2007/04/07(土) 08:35:42 ID:8xuLEh/P0
>>684 すみません、質問の内容を勘違いしてました。
$LST(ROOT) はサイトのトップだけでなくその他のURLもリストに登録するような場合に使うと便利ですが、
サイトのトップだけをリストにまとめる場合には無駄になります。
この場合はthink氏のようにフィルター側で対応するべきでした。
>$LST(ROOT)の誤動作
私の知る限りは誤動作する心配はいらないと思います。 むしろ(/|/index.html|)(^?)を書く際の
記述ミスの心配が無くなり確認もラクになるので二者択一の場面があれば私なら積極的に使います。
>>682 実際にフィルターを書く場合にはURLの一部を取り出し、そこだけ変換するような書き方になると思います。
しかしURLの一部を改変してしまうことには変わりはないので何らかの不具合は覚悟の上で使うことになります。
この方法は (~|%7E) と比べると余計に面倒なことになるのであまり現実的ではありませんね。
>>683 流れを追い切れてませんが、お疲れ様です。
>>684 誤動作に関しては、しっかりとテストを行えば、クリアできる課題だと思います。
しかし、遅くなるのはどうしようもありませんね…。
(/|/index.html|)(^?) の書き方をする場面は限られてくると思うので、速度も気になるのでしたら、テキストエディタの「一括置換」で管理する方が用途に合うと思います。
>>685 > しかしURLの一部を改変してしまうことには変わりはないので何らかの不具合は覚悟の上で使うことになります。
>682の他に、マルチバイト文字をデコードしたときにも誤爆する可能性があることに気がつきました。
ASCII文字のみに絞ってURLエンコードされた文字列を指定すれば、誤爆を回避できそうですが、面倒なことには変わりなく。
以下の表現からの派生を考えてみましたが、思いの外、時間がかかりそうだったので中断しました。
(
http://[_0-9a-z-]+{2,*} (.[_0-9a-z-]+{2,*})+{1,*}(:[0-9]+|(^:))/)\#
(([^#?/%]++)\#(((%([0-7][0-f]))+)\0$SET(#=$UESC(\0))((%[0-f]+)+[^#?/%]+)\#)+(/)\#)+\#
チラシの裏。 リストの拡張子を.cfgに変更して、.cfgをメモ帳よりもちょっと高機能なエディタに関連付けした。 .txtはいまだにメモ帳を使っているけど、 リストを編集するときにはアンドゥくらいは楽にできるとよいので 拡張子変更という手段をとってみた。 タスクトレイのアイコン右クリックからでも、指定したエディタが起動してなかなかよさげ。
妙な関連付けを一般化するよりは エデター+パラメターでショーツカッツ作った方が利口そうに思えるのだが
>688 1. 使用したいエディタのショートカットをSendToフォルダに入れる。 2. リストがあるフォルダを開いてから右クリック→送る こういうやり方でもいいかなーと思ったけど、 タスクトレイのアイコン右クリックから開けるのが便利なので関連付けすることにした。 .cfgなんて拡張子はProxomitron以外だとあまり見かけないし、 .cfg専用にアイコンを設定しておいたので、開きたくない.cfgを誤って開くこともないかなと。
いずれにせよ 100歩遅れてるぞ
それなりのエディタ持っててメモ帳使う意味が分からん。
cfgはOTBEditに関連付けしてる。 関連付けして不都合でもない限りしたほうが利口だと思う。
>>693 [Patterns]
Name = "nicovideo randomgif to static"
Active = TRUE
URL = "www.nicovideo.jp/random $TYPE(htm)"
Limit = 256
Match = "<script type="text/javascript" src="js/illust.js"></script></a><noscript><img src="img/tpl/head/illust/000.gif" alt=""></noscript>"
Replace = "</a><img src="img/tpl/head/illust/030.gif" alt="">"
>>695 きまぐれ検索ページ限定じゃなかったんだな。
ごめんな。
こちらこそごめんなさい。
>>683 修正
Match = "$NEST({,\1cursor[^:=]+(:|=)[^;]+(;|) \2,})$SET(0={\1\2})|"
"style=$AV(\1"
" (c|\& # (x (0 )+{0,*}(6 3|4 3)|(0 )+{0,*}(6 7|9 9)) (;|))"
" (u|\& # (x (0 )+{0,*}(7 5|5 5)|(0 )+{0,*}(8 5|1 1 7)) (;|))"
" (r|\& # (x (0 )+{0,*}(7 2|5 2)|(0 )+{0,*}(8 2|1 1 4)) (;|))"
" (s|\& # (x (0 )+{0,*}(7 3|5 3)|(0 )+{0,*}(8 3|1 1 5)) (;|))"
" (o|\& # (x (0 )+{0,*}(6 F|4 F)|(0 )+{0,*}(7 9|1 1 1)) (;|))"
" (r|\& # (x (0 )+{0,*}(7 2|5 2)|(0 )+{0,*}(8 2|1 1 4)) (;|))[^;]+(;|) \2"
")$SET(0=style="\1\2")"
Replace = "\0"
<font style = ' cursor feffeffe : url( " mailto: kuso.ani " ) '>nmooi</font> ←に対応
1行目比較
サンプルテキスト : 30000 バイト
平均時間 : 0.571000 (ミリ秒) ← cursor[^:=}]+(:|=) url\([^)}]+\)[^;}]+(;|) \1}$SET(0=\1})
平均時間 : 0.821000 (ミリ秒) ← {\1cursor[^:=}]+(:|=)[^;}]+(;|) \2}$SET(0={\1\2})
平均時間 : 0.701000 (ミリ秒) ← $NEST({,\1cursor[^:=]+(:|=)[^;]+(;|) \2,})$SET(0={\1\2})
特定のサイトだけUAをIEに変えるフィルターありませんか? 具体的に言うとDELL・・
そのくらい自分で
>>701 自分でやって覚えようってことで、テンプレを示してみるってのはどうかと思ったが
[HTTP headers]
In = FALSE
Out = TRUE
Key = "User-Agent: Template (out) "
URL = ""
Match = "*"
Replace = ""
ほとんど空白になったのでまぁ自分でがんばれ。
URL MatchにDELLのURLを入れて、Replaceに任意のUAを入れるんだよ。
ワイルドカードいらない
Vectorでダウンロードのたびに、Vアップ通知画面見させられるの回避するフィルター教えてください。 JUMPとか使いそうなんですけどさっぱりわかりません。
>>705 Vector ってゲームとソフトとで別の構成なのよね。
Vアップ通知画面を回避するという意味で、こんなのはどう?
Leeyes(WindowsNT/2000/XP / 画像&サウンド)
http://www.vector.co.jp/soft/dl/winnt/art/se381425.html とかの、ダウンロード画面でいきなりリダイレクトするWEBページフィルタ。
[Patterns]
Name = "Vector Soft DL Redirect"
Active = TRUE
URL = "*vector.co.jp/soft/dl/"
Limit = 200
Match = "<META NAME="download" CONTENT="\0">"
"$STOP()"
Replace = "<meta http-equiv="refresh" content="0;url=\0">"
"\k"
[Patterns] Name = "Vector download add link- (2007/04/15)" Active = TRUE URL = "www.vector.co.jp/soft/(dl/|)win" Limit = 256 Match = "(<META NAME="download" CONTENT="http://download.\8">)\0$SET(_link=\8)|" "(<META NAME="ve_@title" CONTENT="\8">)\0$SET(_title=\8)|" "(<!-- soft data -->\s<table id="soft_data">)\8" "$SET(\0=\8\n" "<tr>\n" " <td class="celltitle">Download : </td>\n" " <td> <a href="ftp://ftp.$GET(_link)">FTP</a> <a href="http://download.$GET(_link)">HTTP</a> $GET(_title)</td>\n" "</tr>\n" ")$STOP()" Replace = "\0" ダウンロードのリンク追加するフィルタ
漏れもメタタグを置換してリンクにしてる
>>706 助かります!事前にリンク持ってくるって手もあるんですね、なるほど。
似たような例探していじってるだけだから全然応用力ない('A`)
>>707 さらに便利そうだと思って試したら何故かうちの環境じゃCPU100%で固まる・・・
うちでも固まった どこで暴走しているんだろう
うちでは使えてるんだけどなぁ…
他のフィルタ全部切って
>>707 だけにしても固まるなあ
一応環境書いておくか
Win2kSP4 IE6SP1 Naoko4.5+日本語化
開こうとしたURLは
>>706
713 :
名無しさん@お腹いっぱい。 :2007/04/15(日) 16:04:18 ID:BZwh9YcC0
全部切っても動作した
XPSP2 Firefox2.0.3 4.5June+6
開いたURLは
>>706 なにが駄目なのかはわからん
みんなVectorをそんなに利用しているのか。 自分はゲームの新作チェックを週1回と、 よく使うソフトの一部がたまにバージョンアップするときくらいかな。 (こっちは不定期チェック) 広告消しなら作ったけど、リダイレクトのフィルタは使ってないなあ。
Vectorのなにもかも削ぎ落として、
直接ファイルへのリンクを張るWEBページフィルタ。
Treasure Search
http://www.vector.co.jp/soft/win95/game/se422845.html 動いたり動かなかったりだけど、とりあえず ↑みたいなソフト紹介のページ用。
[Patterns]
Name = "Vector Soft All cut"
Active = TRUE
URL = "*vector.co.jp"
Limit = 20000
Match = "<HTML>*"
"<META NAME="download" CONTENT="*/pack/\9">*"
"<META NAME="ve_@title" CONTENT="\1">*"
"<META NAME="ve_@description" CONTENT="\2">*"
""
"treeOnOff'*</script>"
"\0<div class="fr">*<!-- left -->*<!-- /left -->"
"*<!-- soft data -->*<!-- soft data -->\6 <BR clear="ALL">"
"$STOP()"
Replace = "<HTML><head><TITLE>\1</TITLE></head><BODY>"
"<table border="0" width="700" align=center><tr>"
""
"\0 <!-- directory navi -->"
"<hr noshade="noshade" />"
"<font size=6><a href ="
http://my.vector.co.jp/servlet/System.FileDownload/download/http/0/407081/pack/\9 ">\1</a> </font> <!-- title -->"
"\6 <!-- explanation -->"
"\k"
>>717 おおっ。確かに、ラスト三行のとこははこれで十分だった。
すっきりしてよかった。ありがとう。
"<font size=6><a href ="
http://ftp.vector.co.jp/pack/\9 ">\1</a> </font> <!-- title -->"
"\6 <!-- explanation -->"
"\k"
メタタグに書かれてないアドレスは、拾うのがめんどくさいよなー。
ttp://vird2002.s8.xrea.com/download/#filter_web の汎用Webフィルタ集内のReplace vlink colorフィルタなのですが
background-colorにも誤爆してしまいます
どうすれば誤爆しないように出来るのでしょう?
以下コピペ
Name = "Replace vlink color (html+css) [2005/11/24]"
Active = TRUE
URL = "$TYPE(htm)|$TYPE(css)"
Limit = 256
Match = "(<body(^[^ ]))\#("
"([^>]++\svlink=)\#$AV(\0)([^>]+>)\1&"
"[^>]++\slink=$AV($TST(\0))"
"$SET(#="purple"))|"
"(a:visited {[^}]++color : )\#([0-9a-z#]+)\0"
"([^>]++a:link {[^}]++color : $TST(\0))\1"
"$SET(#=purple)|"
"(a:link {[^}]++color : ([0-9a-z#]+)\0"
"[^>]++a:visited {[^}]++color : )\#$TST(\0)"
"$SET(#=purple)"
Replace = "\@\1$STOP()"
>>719 懐かしいフィルタですねー。
CSSの表現はスマートな書き方ができなくて苦慮した覚えがあります。
> background-colorにも誤爆してしまいます
[^}]++color を ([^}]++[\t\n\r ;]|)color に変更してやれば、回避できると思います。
ご報告ありがとうございました。
[Patterns]
Name = "Replace vlink color (html+css) [2007/04/23]"
Active = TRUE
URL = "$TYPE(htm)|$TYPE(css)"
Limit = 256
Match = "(<body(^[^ ]))\#("
"([^>]++\svlink=)\#$AV(\0)([^>]+>)\1&"
"[^>]++\slink=$AV($TST(\0))"
"$SET(#="purple"))|"
"(a:visited {([^}]++[\t\n\r ;]|)color : )\#([0-9a-z#]+)\0"
"([^>]++a:link {([^}]++[\t\n\r ;]|)color : $TST(\0))\1"
"$SET(#=purple)|"
"(a:link {([^}]++[\t\n\r ;]|)color : ([0-9a-z#]+)\0"
"[^>]++a:visited {([^}]++[\t\n\r ;]|)color : )\#$TST(\0)"
"$SET(#=purple)"
Replace = "\@\1$STOP()"
mixiの広告が書き込み後にまで出てくるのでばっさりしたいのですが どなたかお願いできませんでしょうか
ごめんなさいとか負けましたとか、相手に言わさないと気が済まないタイプだな
ごめんくさい
禿げました
725 :
名無しさん@お腹いっぱい。 :2007/04/24(火) 21:37:27 ID:dm3t6qtQ0
このスレ開く度に JS.WindowBomb.G 検出する
Multiを有効にしたフィルタAが動作(マッチ)した際にフラグを立て、 フラグが立っているときのみフィルタBをバイパスすることはできませんか? $TSTを使えばよいのかと思うものの、 $TSTの使い方はいつまで経ってもよくわからない……。
慣れれば簡単 以下はテキストエリア以外のスクリプトタグを全てテキストエリアに代えるサンプル [Patterns] Name = "$in_textarea = true (1/2)" Active = TRUE Multi = TRUE Limit = 256 Match = "<textarea" Replace = "$SET(in_textarea=1)<textarea" Name = "$in_textarea = false (2/2)" Active = TRUE Multi = TRUE Limit = 256 Match = "</textarea*>" Replace = "$SET(in_textarea=0)</textarea>" Name = "if (not $in_textarea) <scripit> to <textarea>" Active = TRUE Limit = 256 Match = "<(/|)\0script\1>" "(^$TST(in_textarea=1))" Replace = "<\0textarea rows=5 cols=100><\0script\1>"
729 :
名無しさん@お腹いっぱい。 :2007/05/01(火) 15:13:54 ID:XSGQ9HTn0
ニコニコ動画の広告を削除するフィルタきぼん
ニコ動のID表示のために導入したけど なんか面白そうだなw
>>731 どうでもいいけど、今現在時間限定開放ユーザはいませんよ
60万までのIDは全て24時間開放。
>>729 頻繁に書式変わってるから自分でメンテできないと無駄だ
む…、>732をよく見ると「今現在時間限定開放ユーザはいません」ですね。 文章は良く読もう。orz
>>736 とりあえず……どう?
[Patterns]
Name = "nicovideo.jp UPPER AD cut"
Active = TRUE
URL = "*www.nicovideo.jp"
Limit = 250
Match = "<DIV*"
""
http://ad.nicovideo.jp/* "*"
"</DIV>"
"$STOP()"
Replace = "<!-- CUTTED -->"
まあ頻繁に書式変わってるからすぐに使えなくなるけどな
やっべ、寝ぼけて同じ内容書いちまったorz
知らない間にニコニコ絡みで話題になってたのね。 どうせそのうちニコニコ側でIDあぼーん実装するんだろうけど、 Greasemonkey全盛の時代にこんなイベントが発生するとは。
[Patterns]
Name = "Kill NicoNico Ad"
Active = TRUE
URL = "www.nicovideo.jp"
Limit = 256
Match = "<a href="
http://ad.nicovideo.jp/*</a >"
Replace = "<!-- Kill nicovideo ad -->"
[Patterns]
Name = "Kill NicoNico Ad2"
Active = TRUE
URL = "www.nicovideo.jp"
Limit = 1024
Match = "<tr><td*<strong>dwango.jp*</td></tr>"
Replace = "<!-- Kill nicovideo ad -->"
適当に書いたんだけど一応いまは消えた
743 :
名無しさん@お腹いっぱい。 :2007/05/02(水) 15:58:03 ID:s+ecP+200
おまえらFlash広告どうやって消してるの?
>728 遅くなりましたが、どうもありがとうございます。懲りずに練習します……。 >743 見えなくするだけだったら、 ヘッダフィルタでapplication/x-shockwave-flashを\kするとか。 CSSだったらobject[data$=".swf"], embed[src$=".swf"] { display: none !important; }とか。
サイトのにあわせて作る
>>736 ,738
今日、いくつかの動画閲覧しましたが、AdListの方法(>731)で広告は消えているように見えました。
キャッシュが残っているか、他のフィルタが先にマッチしているか。
そのあたりを確認してみてはどうでしょうか。
オミトロンでニコニコ動画のNGIDじゃなくてNGワードって出来ないですかね・・・
とっくに出来てる
自分のID偽装は?
>>752 うっかりしてました。ご指摘ありがとうございます。
>>753 広告はまず、AdListを試してみてくださいな。
www.bb-chat.tv/ で消えます。
「Kill href/src ad」なら bb-chat.tv/
AdListってスラッシュ入れないと機能しないの?
ハッシュ化というのは前から気になっているんだけど、 リストの用途によっては「/」で終わらせることができなくて悩む。 href="*click.*" こういうものにマッチさせようとするときとか。 ドメイン名にマッチさせるときはだいたい問題ないようだけど、 ファイル名や特定の文字列にマッチさせるときは諦めるしかないのかな。
>>759 ファイル名や文字列にマッチさせるときには、「固定プレフィックス スタイル」のハッシュ化を利用するぐらいしかないです。
条件は「行頭から7文字目までにワイルドカードを含まない」という緩いものなので、何とか頑張って条件を満たすしか。
Last-Modifiedの値をSaved from URLみたいにページ内にコメント出来ますか? できるならフィルターの作成をお願いしたのです。
>>743 とりあえずソースを見て、script、object、embed などで検索して該当箇所を探す。
proxomitronをつかって、Adsense、Amazon広告とか消せますか?
消せます
2ちゃんのレス内容の「w」を「・」に変えるフィルターって作れますか? もし作れるなら作ってくれると嬉しいです。
>>767 利用するブラウザは「Jane Doe Style」です。
ReplaceStr.txtはJane Doe Styleだと使えないみたいなんですよね・・・
postするデータを書き換えたいんですが <div len="-10" ver=5 />のlen=を必ず-500にするにはどうすれば良いのでしょうか ヘッダでオウトをonにして [HTTP headers] In = FALSE Out = TRUE Key = "New-HTTP-header" Match = "<div\slen=$AV(-[0-9]+) Replace = "<div len="-500" にしてるんですが、作動していないみたいです
間違えた。必要な”も削ってしまった [HTTP headers] In = FALSE Out = TRUE Key = "New-HTTP-header" Match = "<div\slen=$AV(-[0-9]+)" Replace = "<div len="-500"" です
最近のHTTPヘッダはHTMLタグを含むのか、すごいな
RFC2616始まったな
のちのHTTP/2.0である
>>775 某スレッドでコメント取得の話題が出たばかりですからw
ttp://yp.peercast.org/ このサイトの下のほうにあるPage: 1, 2, 3, 4, 5, 6 >>>をページの
上のほうにも表示させるフィルタ作ってくれる人はいませんでしょうか。
出来れば1から8までのリンクが常に表示されるようにして頂けるととてもありがたいです。
>>768 ごめんなさい。レスし忘れていました(汗)
「Jane Doe Style」では「2ch-BBS: Replace BlockList character」のフィルタで置換できるということしかわかりません…。(>767)
解決しましたので、このスレは削除依頼出しておきます。 答えてくださった方々、本当にありがとうございました。
>>778 ありがとうございます。
とりあえず「2ch-BBS: Replace BlockList character」を試してみます。
変数の比較についてどうしてもうまくいかないので質問です。 \1と\2を比較して一致しているかで分岐したいのですが、 $TST(\1=\2) と記述すると比較ではなく代入になってしまうのですが仕様なんでしょうか。 $TST(1=\2) でもうまくいきません。今度は常にヒットしなくなります。 文字変数に代入して比較したりいろいろと工夫してみてもやっぱり駄目。 どう記述するのが正しいんでしょう?
$TST(\1=$TST(\2))
786 :
名無しさん@お腹いっぱい。 :2007/05/11(金) 18:34:01 ID:rADFD0Jg0
>sageでオミトロン使いに なんていうか・・・卑屈だな そんなに仲悪いの?
何か嫌われてるみたいだな
789 :
名無しさん@お腹いっぱい。 :2007/05/11(金) 19:30:19 ID:fHP/rSL30
Arneだろ
そりゃこのフィルタスレ見てたってまともに自分で使えない厨房がいっぱいだし うざいってことじゃないのかな
791 :
777 :2007/05/12(土) 11:36:19 ID:u1eBPKNo0
どうもすみませんorz
792 :
777 :2007/05/12(土) 13:24:28 ID:u1eBPKNo0
見よう見まねで作ってみました。 上下に2列ずつページリンクが出て変だけどこれで妥協しよう。
[Patterns]
Name = "YP Link 070512"
Active = TRUE
URL = "yp.peercast.org/(\?|(^?))"
Limit = 512
Match = "(<hr\ssize="1">)\0|(Page:(([^<]|<<<)+<(/|)[ab](^[a-z])[^>]+>)+[^<]+)\3"
"$SET(4=<br><br>)$STOP()$SET(5=\r\n<style type="text/css">\r\n"
"<!--\r\nspan#pagelink { position: absolute; top: 140px; left: 340px;"
" font-size:16px; font-weight:bold; }\r\n-->\r\n</style>\r\n\r\n"
"<span id="pagelink">\r\n\3\r\n</span>\r\n\r\n)"
Replace = "$SET(6=  <a href="?from=)\0\r\n<div style="font-size: 16px;"
" font-weight:bold;">\r\n\3\4\r\nPage:\61">1</a>\r\n\621">2</a>\r\n\641">"
"3</a>\r\n\661">4</a>\r\n\681">5</a>\r\n\6101">6</a>\r\n\6121">7</a>\r\n"
"\6141">8</a>\r\n\6161">9</a>\r\n\6181">10</a>\r\n</div>\r\n\5"
ttp://yp.peercast.org/
2ch見ててウイルスコード書く奴が居てアンチウイルスが過剰反応するので、 このウイルスコードを読み込まない様にするフィルターが欲しいんですが。<(_ _)>
アンチのほうで除外できんのか
datファイルの場所を検査除外するようにすればいいだけ
>>794-795 レスドウモデス
出来るとか出来ないとか話がありますが、これからそう言う書き込みが増えそうな予感がするのでオミトロンで出来れば遣りたいな、と思いまして。
ウィルスコードに共通する部分が無いと駄目かと
増えそうならますます795の方が良いと思うけどなあ。 その度にフィルタ増やすより。
>>796 いまさら誰もそんな予感はしてない
自分の希望を他人のせいにすんな
>>795 datファイルの除外では無く、そのレスだけ除外してアンチウイルス補助(と言うか2ch対策?)
みたいな感じに使えたらと思ったんだけど。
>>797 の言う通り共通コードとか考えるとちょっと使い方違うかなとは思った。
でもフィルターだけ作っておけば後は除外コードを追加していけば・・・、
何て素人考えでいたんだけど。(^o^;; とりあえづ、除外とか対策があるのでありがとう。
ニコ厨
>>800 申し訳ないが仰っている意味が全くわからない
無理しなくていいよ
ウイルス対策ソフトなんて使ったことないが、オミトロンだけあれば十分でないか? よほど凝ったしかけでもされなければ、ウイルスを入れられることはないと思うが。 (使っているフィルタにもよるけど) あとはIEを使わないとか、ブラウザを選択するだけでもある程度の効果はあるだろう。
ウイルスは油断してる奴ほど引っかかりやすい。
>>800 そういうフィルタを作ることは出来るよ。 2chブラウザのNG処理みたいなことをオミトロンで
やればいいだけだから簡単。 もしかしたら既成のNGフィルタで出来るかも。
ただし、登録の仕方を工夫しないとフィルタ内のウイルスコードがアンチウイルスソフトに
ウイルス認識されてしまい、その結果オミトロンの設定ファイルがまるごと消されたり、
隔離されたりしてしまうことが考えられるので注意されたしw
余談だが、アンチウイルスの設定でdatのある場所を除外するという方法は、
この場所にウイルスが投下された場合に無防備になるという欠点があるので
これをやればいいというレスは正しいとは言えない。
今回はオミトロンで回避するにはどうすればいいかという質問なのでこれは答えになってない。
こういう場合はアンチウイルスの設定でも回避出来ることを示しつつ、
オミトロンで実現するにはどうすればいいかを書くべきだろうと思う。
<#`∀´>ノ よっ
(-@∀@)ノ
定型文から一部当たったらその場所を適当な文字に置き換えればいいが ただし容量が変わると次の読み込み時に読み込み開始位置がずれるので Janeでのdatの置き換えは実用的でない
ウイルスが投下って、テキストなんだから投下されてもええやん。
>>811 ウィルスに感染した際に、datフォルダが作業フォルダになってしまうってことでは?
何かもうチンプンカンチンだな
おまいら日本語を勉強しなおして来い
ニホンゴノ ベンキョウハ トテモ ムズカシイデス。
>>810 Jane系ならWickedStr.txtで解決
全角文字と半角文字を区別しないのが問題悩みの種なんですが、 たとえば検索条件に「@」を指定すると「 」(全角空白)にヒットしたりしますよね。 こういうのは根本的に解決できないんでしょうか。
818 :
名無しさん@お腹いっぱい。 :2007/05/15(火) 01:13:26 ID:bvbbhwzO0
アクセス解析切るフィルタってどう書けばいいの?
アクセス解析のURI切るようにすればいいんじゃない
>>820 過去ログ見ながら作ったらいけました。ありがとうございます。
もう一つ
サーバーのアクセスログに残らないフィルターはどうやって作ればいいんでしょう。
>821 そんなものができたらサーバ攻撃の踏み台になってしまうではないか。 まあ無理だと思うけど。
>>821 そのサーバにアクセスしないようにするといいよ。いやマジで
すみませんorz では、サーバーのアクセスログに自分のホストを残さないためには プロキシを経由するしかないんでしょうか proxomitronで経由させる方法を教えて下さいorz
つか、823で答えが出てるんだけどな
>>824 プロキシと書いてあるボタンを押してプロキシサーバを登録する。
>>824 それが出来るなら串鯖なんてこの世に存在しないわ
おはよ Prox系の悪用はよく聞くが 俺が聞いたのは、プロクシ立てたよ、使ってね->ヘッダログ表示->ベーシック認証キーごっそりいただき Prox系じゃなくてもやろうと思えばできるけど簡単にできるのはまずいね だから外部接続は対応しないほうがいいに賛成 俺がやったいたずらは、「です。」を「でんねん」、「ます。」を「まんねん」に変換するやつ みんな似たようなことやってるな
「おばんです。」を「おばんでんねん」にしたのはお前か!
プロキシ経由でそういう認証する方に問題があると思うよ
流れぶったぎって コメントタグと無関係の”-->”を削除するにはどう表記すれば良い? --\>じゃ消せなかったんだ
>>832 こうかな?
[Patterns]
Name = "Kill incorrect comment end [2007/05/20] test1"
Active = TRUE
URL = "$TYPE(htm)"
Limit = 4
Match = "(^(^<!--))(^$TST(Comment=start))$SET(Comment=start)|"
"(^(^-->))($TST(Comment=start)$SET(Comment=)|"
"-->$SET(Comment=incorrect end))"
Google Imageまた変わった?
835 :
名無しさん@お腹いっぱい。 :2007/05/20(日) 21:09:18 ID:/FLyeVGw0
Kill nest ad で <!-- Bar --><!-- /Bar --> の消す書き方教えて
>>834 Google Image: Image Change (070115)だったら
<a href="\+e\+b.m\+"><imgを
<a href="\+e\+b.n\+"><imgから
<a href="\+e\+b.o\+"><img
にすればいいよ
<a href="http:// foo.bar/"> こんなソースでもリンクとして機能するとは。Firefox/2.0.0.3 で確認した。 リストでURLを管理しているんだけど、普通ならマッチするものがマッチしなかった。 // の直後にある改行を削ったらマッチした。 HTML lint だと改行は禁止されてないと書かれているけど、 この例では改行がなかったことにされてしまっているから危険。
<img src="foo .jpg"> とか普通に可能だよ。クォーテーション内の改行は無視される。 クォーテーション無しなら改行以降は無視。 <img src="bar.gif .jpg"> ↑ bar.gif.jpg が呼び出される <img src=bar.gif .jpg> ↑ bar.gif が呼び出される
じゃあこうすればよくね? [Patterns] Name = "delete break inside tag attribute value 20070521-4" Active = TRUE Multi = TRUE URL = "$TYPE(htm)" Bounds = "<[^/][^>]++=("[^"]++|'[^']++)\n" Limit = 1024 Match = "\1\n" Replace = "\n\1"
あ、ごめんBoundsおかしいね。 <[^/!][^>]++=("[^">]++|'[^'>]++)\n とかで大丈夫かな。
うへー、クォートの扱いの理解が足りなかった。 出直してくる。
参考資料は HTML4.01 が適当かな?
Basic HTML data types (ja)
http://www.asahi-net.or.jp/%7Esd5a-ucd/rec-html401j/types.html#h-6.2 上の資料によると、
・a要素のhref属性値は「CDATA」に分類される。
・「CDATA」は改行文字LFを無視し、改行文字CRは1つの空白文字で置き換える。
となっています。
ところが、実際には CRLF (\r\n) がhref属性値に存在しても無視されています。
Webブラウザの挙動に合わせるなら、
[Patterns]
Name = "Delete break inside tag attribute value [2007/05/21] type1"
Active = TRUE
Multi = TRUE
URL = "$TYPE(htm)"
Limit = 1024
Match = "(<[^>]++\s(href=|src=))\#"
"$AVQ((\#[\r\n]+{1,*})+{1,*}\#)(^(^[ >]))"
Replace = "\@"
となるのでしょうけれど、仕様書通りに動作しないのが気になりますね…。
altテキスト/titleテキスト は改行を解釈してポップアップするので、改行を取り除いてしまうと改行なしの長文が表示されてしまう可能性があります。 >843のフィルタでは、効果範囲を href属性,src属性に限定しています。
[Patterns]
Name = "Delete break inside tag attribute value [2007/05/21] type ex1"
Active = TRUE
Multi = TRUE
URL = "$TYPE(htm)"
Limit = 1024
Match = "(<[a-z][^>]++\s(href=|src=)(^(^["'])))\#"
"$AVQ((\#[\r\n]+{1,*})+{1,*}\#)"
Replace = "\@"
<a href="
http:// foo.bar/"
>
>>845 属性値の外側の改行は消さなくてもいいのでは?
>>847 あ、なるほど。
Sylera3では改行されるので、Firefoxも同じだと安易に考えていました。
GREのバージョン違いかな?
>>848 属性値の外は空白として処理しないと困るケースがあります。
<a
title="test"
href="
http://www.google. com/">
それに、Proxomitronでマッチさせるだけなら、属性値の外はそれほど気にしなくて良いような気が…。
デフォルトで有効になっているフィルタで、HTML文書先頭にスクリプトが挿入されてしまう不具合を修正しました。
[Patterns]
Name = "Kill pop-up windows [2007/05/21] fixed"
Active = TRUE
URL = "$TYPE(htm)"
Limit = 8
Match = "(^(^</head>))$STOP()"
Replace = "<script src="
http://local.ptron/WindowOpen.js "></script>\r\n"
Name = "Suppress all JavaScript errors [2007/05/21] fixed"
Active = TRUE
URL = "$TYPE(htm)"
Limit = 8
Match = "(^(^</head>))$STOP()"
Replace = "<script> function NoError(){return(true);} onerror=NoError; </script>\r\n"
Name = "Stop browser window resizing [2007/05/21] fixed"
Active = TRUE
URL = "$TYPE(htm)"
Limit = 8
Match = "(^(^</head>))$STOP()"
Replace = "<script> function moveTo(){return true;} function resizeTo(){return true;} </script>\r\n"
他にも同様の不具合を抱えているフィルタがありますが、面倒なのでそっちは書きません。
(例) 「Stop status bar scrollers」「Kill Dynamic HTML JavaScripts」「Stop JavaScript Timers」等。
, - ,----、 (U( ) | |∨T∨ <Google image redirectorの対応お願いします (__)_)
>>852 完全に私の勘違いでした。
申し訳ありません。m(_ _)m
>848で指摘された違いはこういうことですね。
[Patterns]
Name = "Delete break inside tag attribute value [2007/05/21] type1.1"
Active = TRUE
Multi = TRUE
URL = "$TYPE(htm)"
Limit = 1024
Match = "(<[^>]++\s(href=|src=))\#(^(^["']))"
"$AVQ((\#[\r\n]+{1,*})+{1,*}\#)(^(^[\r\n\t >]))"
Replace = "\@"
>843は末尾に改行が存在するケースに対応していませんでした。
(^(^["'])) はクォートなしの属性値には改行を含まないため、と捉えました。
>>853 いやすんません、私が寝ぼけたのが悪いんです
ほんとごめんなさい(´;ω;`)ぶわっ
>>333 を参考にAAKiller作ろうと思ってるんだけど参考例の中にある「,」の意味がわからない・・・
どういう用途に使ってるんでしょう
なるほど、入れ子の始まりと中と終わりを「,」で仕切るわけですね ってよく見たらヘルプのNESTの説明中にも「,」が書いてありました 詰まってイライラしてる状態だと理解できるものも理解できなくなりますね・・・ 精進します。ありがとうございました
>>850 ありがとうございます
ttp://pc11.2ch.net/test/read.cgi/streaming/1177645673/743 にてお願いしたものです。
>他にも同様の不具合を抱えているフィルタがありますが、面倒なのでそっち
>は書きません。
>(例) 「Stop status bar scrollers」「Kill Dynamic HTML JavaScripts」
>「Stop JavaScript Timers」等。
書き換え例をみるとMatchな部分を置き換えReplaceの行頭を少しけづるだけと気づき同じように書き換えてみました。
列挙されてない残りは下記の3つなんだろうか〜?
Force pop-ups to have browser controls
Kill alert/confirm boxes
Frame Exploder
もし単純な書き換えじゃまずい場合はご指摘ください。
デフォルトのフィルタって、改善してでも常用に耐えるほどのものなのかね? 自分でフィルタを書くようになってからは、ルールを覚えるにつれてだんだん数が減り、 現在ではヘッダフィルタのみいくつか残っている。
検索やらiframeやら検索パネルには対応してない手抜き版・・・というか誤爆が多そうな・・・
せめて[]内で小文字大文字区別してくれれば誤爆は格段に減るだろうになんでこんな仕様なんですか('A`)
[Patterns]
Name = "Amazon Affiliate Kill"
Active = TRUE
URL = "$TYPE(htm)"
Limit = 512
Match = "$NEST(<a\s,[^>]++href=$AV(
http://www.amazon.co.jp/[^ >]++([0-9A-Z]++{10})\1*)*,>)"
Replace = "<a href="
http://www.amazon.co.jp/dp/\1 " title="AAK" target=_"blank">"
自分は面倒だったのでインストールしたときに真っ先に既定のフィルタを切った。
アフィリエイト用フィルタはURLリストでblogだけに絞れば 誤爆しても問題ないよ
http:// (www.|)amazon.co.jp/
で始まるリンク内の
[^/\&=]++-22
を適当な文字列に書き換えたら?
リンクを書き換えるよりヘッダを書き換えたほうが簡単なんじゃ
[Patterns] Name = "Delete break inside tag attribute value [2007/05/22] SuperLite" Active = TRUE Multi = TRUE URL = "$TYPE(htm)" Limit = 1024 Match = "<([a-z][^>]++\s(href=|src=)(^(^["'])))\#" "$AVQ((\#[\r\n]+{1,*})+{1,*}\#)" Replace = "<\@"
アフィリンクはIDを無効にすることよりも、 見えなくしたり読込まないようにすることを考えた方が有意義だと思う。 アキバブログの両サイドとかiframeをOFFにすると綺麗さっぱりするよ。 アマゾン以外でアマゾンの画像表示禁止 [HTTP headers] In = FALSE Out = TRUE Key = "Referer: Amazon images kill (out)" URL = "([^/]++.|)images-amazon.com/" Match = "http(s|)://(^((www.|)amazon.(co.jp|jp|com)/))*" Replace = "\k"
>>850 Stop status bar scrollersもきぼん
>>858 Match="(<!DOCTYPE*> |)\1"
で <script> を挿入するフィルタは全て同様の改変で問題ないと思います。
ただ、
<head>
...
<script src="hogehoge.js"></script>
</head>
のHTMLに対しては、<script> の前に置換テキストを挿入した方が良いかも?
外部JSは読み込み順が関係しているかもしれないので、JavaScriptの識者にフォローを頂きたいところ。
[Patterns]
Name = "Kill pop-up windows [2007/05/22] fixed2"
Active = TRUE
URL = "$TYPE(htm)"
Limit = 8
Match = "(^(^<script[ >]|</head>))$STOP()"
Replace = "<script src="
http://local.ptron/WindowOpen.js "></script>\r\n"
> 書き換え例をみるとMatchな部分を置き換えReplaceの行頭を少しけづるだけと気づき
Limitも小さくなっています。
HTML文書の最下部に <script> を挿入するフィルタもちょっと危ないですね。 [Patterns] Name = "Restore pop-ups after a page loads [2007/05/22] fixed" Active = TRUE URL = "$TYPE(htm)" Limit = 8 Match = "(^(^</html>))$STOP()" Replace = "<script>PrxRST();</script>\r\n"
フォントがMSゴシックで指定されてるサイトで、その部分をメイリオに変更汁フィルターお願いできませんか? 置き換えのやり方はうまく理解出来なくて、ダメなんですよ私。
正規表現を1から勉強してこよう;_;
>>871 Proxomitronは日本語の書き換えが苦手なので
ブラウザ側でuser.cssを使うとか、
フォントの設定をユーザー設定優先にする方が良いかも。
MSゴシックで表示されるからといって、MSゴシックが指定されているとは限らないよ。
body { font-family: "メイリオ" monospace !important }
メイリオが手元にないから検証してないけど、これでいいでしょ。
body でなければ、該当する要素に書き換えればよし。
あとは必要に応じて monospace を sans-serif あたりに書き換えてもよし。
ttp://d.hatena.ne.jp/jintrick/20070521 ついでに書くと、こんな話がある。
body { font-family: "メイリオ", monospace !important } コンマ入れ忘れ。
>>850 >>870 いつもありがとうございます。
この際勉強しなおそうとFAQなどから読み始めてるのですが
PRXスレFAQより
ttp://web.archive.org/web/20060519105742/ http://www2.wbs.ne.jp/~go-to/prx/faq.html Name = "Kill pop-up windows(04/07/29)"
Active = TRUE
Limit = 40
Match = "<start>"
Replace = "<!-- --><script type=text/javascript>"
"function PrxKillOpen(){return(this.window);}"
"if(!window.PrxRealOpen)PrxRealOpen=window.open,"
"window.open=PrxKillOpen;"
"</script>\r\n"
Name = "Restore pop-ups after a page loads(04/07/29)"
Active = TRUE
Limit = 40
Match = "<end>"
Replace = "<!-- --><script type=text/javascript>"
"function PrxOpen(url,nam,atr){"
" if(!event||!event.type.match(/load/i))"
" return(PrxRealOpen(url,nam,atr));"
" else"
" return this.window;"
"}"
"window.open=PrxOpen;"
"</script>\r\n"
で修正版があがってるのに気づきました。thinkさまのはデフォルトのフィルタを元に修正されてますがどちらを使うのがよろしいのでしょう?
>>870 便乗で質問。 その"ちょっと危ない"とはどういう意味ですか?
>>863 巡回先にblogじゃないところも結構あるのでそれは厳しいです
>>866 ちょっと自分にはまだ理解できないです・・・。すみません
>>867 試しましたが消えるところがあったり消えないところもあったりでまだ慣れず
なので
>>864 の案を元に作っていたけど
$NEST(<(a\s|iframe\s)[^>]++(href=|src=)$AV(
http://[^ >]++amazon.(co.jp|com)/[^>]++([^/?=]++-22)\0*)*,>)\1|
(<input\s[^>]++(src=|value=)$AV([^>]++(([^?=>]++|)-22)\0)*>)\1
というところまで書いた辺りでどうやっても単なる抽出にしかならないっぽいので挫折
$SETでいけるかと思ったけどそもそも用途が違うっぽい罠。マッチングコマンドは難しい・・・
>>878 >>864 に書いてあることをやるだけならコマンドは使う必要ないと思います。
それと、下のようにアフィID以外の部分を抽出すればアフィIDを書き換えられますよ。
Match
(<a\s[^>]++href=)\1$AV((
http:// (www.|)amazon.co.jp/*)\2あふぃあいでぃ\3)
Replace
\1"\2てきとうなもじれつ\3"
あとは「あふぃあいでぃ」の部分を正規表現で書き、inputタグなどにも対応させれば完成です。
追記、
フィルタを書くときに$NESTが本当に必要なケースというのは滅多にないです。
普段フィルタを書き慣れていない方が$NESTを乱用するのはあまり好ましくありません。
>>877 > "ちょっと危ない"とはどういう意味ですか?
デフォルトの「Restore pop-ups after a page loads」はProxomitronでフィルタを適用可能な全てのリソースの最後にスクリプトを挿入します。
しかし、<script> は HTML文書 だけで有効なので、CSSや外部JSに <script> を挿入すると誤動作を引き起こす可能性があります。
なので、URLマッチに $TYPE(htm) を追加するわけですが、これでもまだ不十分なケースがあります。
サーバから返されるContent-Typeヘッダが text/html でも、実際の中身はHTML文書ではないことがあり、このままではそれにマッチしてしまいます。
これを回避するため、「HTML文書に必ずあるタグ」にマッチさせます。
>750 は </head>
>869 は <script[ >] or </head>
>870 は </html>
にマッチさせているわけです。
>>876 それらのフィルタには、いくつか改善すべき点があると思います。
・<start> <end> は先頭/末尾にあるHTMLタグに置き換える
・URLマッチに $TYPE(htm) を加える
理由は、>881-882で説明したとおりです。
最終的にどちらのコードが良いかは、スクリプトが読めない私にはアドバイスできません…。
>>860 > せめて[]内で小文字大文字区別してくれれば誤爆は格段に減るだろうになんでこんな仕様なんですか('A`)
HTML4.01では、タグの 大文字/小文字 を区別しませんから…。
ちなみに、「Far East Patch」を適用済みであれば、大文字/小文字を区別する方法はあります。
[a-z] は [a-zA-Z] に等しく、[%61-%7a] は [a-z] に等しい。
こういうやり方でどうでしょうか?
ただ、ファイル名の「大文字/小文字」の区別を活用しているサイトを見たことがありませんし、そこまで厳密にチェックする必要があるのか疑問に思うところはあります。
【教えて君は】ニコニコ動画専用オミトロン【半年ROMれ】
http://pc11.2ch.net/test/read.cgi/streaming/1177645673/775+794+808 からの流れで、「Proxomitron-J」で配布されている「Allow right mouse click 3種セット」で誤動作を引き起こしそうな箇所を修正しました。
変更点
- URLマッチに $TYPE(htm) を追加
- <end> を (^(^</html>))$STOP() に変更した
- Limitの調整
- 微調整
[Patterns]
Name = "Allow right mouse click [2007/05/23] fixed"
Active = TRUE
URL = "$TYPE(htm)"
Limit = 16
Match = ".(onmousedown=|captureEvents\()\1"
Replace = ".PrxOff_\1"
>>885 の続き。
[Patterns]
Name = "Allow right mouse click 2 [2007/05/23] fixed"
Active = TRUE
URL = "$TYPE(htm)"
Limit = 8
Match = "(^(^</html>))$STOP()"
Replace = "<script> document.onmousedown=null; </script>\r\n"
Name = "Allow right mouse click plus [2007/05/23] fixed"
Active = TRUE
Multi = TRUE
URL = "$TYPE(htm)"
Limit = 512
Match = "(<[^>]++\s)\0oncontextmenu(^(^=))"
Replace = "\0ProxAllow"
今まで使ってたYoutubeにDownloadリンクを追加するフィルター効かなくなった
[HTTP headers]
In = FALSE
Out = TRUE
Key = "URL: YouTube - Always jump to the permanent URI (Out)"
Match = "
http:// (www.|)youtube.com/watch\?v=([^&]+)\0\&*"
Replace = "$JUMP(
http://www.youtube.com/watch?v=\0 )"
Name = "YouTube Add Download Link [060505]"
Active = TRUE
URL = "$TYPE(htm)(www.|)youtube.com/watch\?(|*\&)v="
Bounds = "$NEST(<script,</script>)"
Limit = 512
Match = "(*new\sSWFObject\(\"/player[0-9]+.swf\?(video_id=[^"]+)\0\"*)\1($KEYCHK(Y)"
"$SET(2=<meta http-equiv="Refresh" content="0;URL=
http://youtube.com/get_video.php?\0 ">\k)|$SET(2=\1))"
Replace = "\2\n<div style="font-size: 20px; font-weight: bold; text-align: center;padding-bottom: 10px;">\n"
"<a href="
http://youtube.com/get_video.php?\0 ">[[[ Download ]]]</a>\n</div>\n$STOP()"
>>887 どうぞ。
更新履歴
- script要素のチェックを外した
[Patterns]
Name = "YouTube: add download link [2007/05/24] test1"
Active = TRUE
URL = "$TYPE(htm)(www.|)youtube.com/watch\?v\="
Limit = 256
Match = "(^(^SWFObject\($AV(/player2.swf(\?video_id=*)\0)[ +,]))"
"$SET(YTube=\0)(^$TST(YTube=?*))|"
"(^(^<div\sclass=$AV(actionsDiv)))$STOP()"
Replace = "<div class="actionRow"><a href="./get_video$GET(YTube)">Download link</a></div>"
"$SET(YTube=)"
基本的なコードは元のままですが、scriptコードが肥大化したためにマッチしていませんでした。
>>888 のダウソリンクを
>>887 のように目立たせてみた。 Replaceだけ書き換え。
Replace = "<div class="actionRow" style="font-size:25px;"><a href="./get_video$GET(YTube)">[[[ Download ]]]</a></div>"
"$SET(YTube=)"
>>888 お疲れ様です。
891 :
名無しさん@お腹いっぱい。 :2007/05/24(木) 17:59:33 ID:Eq/iCgpl0
[HTTP headers]
In = FALSE
Out = FALSE
Key = "Content-Disposition: YouTube File ReNamer [060521] (In)"
Match = "$URL(
http:// (^www)[^/]++.youtube.com/get_video\?video_id=\0)"
Replace = "attachment; filename="\0.flv";"
機能しなくなってしまいました
お願いします
>>888 のだとこの動画ページでダウソリンクがページ下に隠れてしまったので
動画の直下にリンクを表示させるようにいじりました。
ttp://www.youtube.com/watch?v=5wGMn8fbmQs [Patterns]
Name = "YouTube: add download link [2007/05/24] big link"
Active = TRUE
URL = "(www.|)youtube.com/watch\?v\= $TYPE(htm)"
Limit = 256
Match = "(^(^SWFObject\($AV(/player[0-9]+.swf(\?video_id=*)\0)[ +,]))"
"$SET(YTube=\0)(^$TST(YTube=?*))|// ]]> </script>$STOP()"
Replace = "// ]]>\r\n</script>\r\n<div style="font-size:25px; text-align:center;">\r\n"
"<a href="./get_video$GET(YTube)">[[[ Download ]]]</a>\r\n</div>$SET(YTube=)"
あとplayer2.swfがplayer3.swf等にバージョンアップしてもマッチするように修正。
>>893 DLするとget_videoってなるのはようつべの仕様なの?
拡張子をflvに自分で直す
>>891 > [HTTP headers]
> In = FALSE
> Out = FALSE
そりゃ機能しないだろ
ワラタ
>>894 そうです。
>>891 を入れてInにチェックすれば動画毎に違うファイル名になるからおすすめ。
>>891 In = TURE にしてみたけど効いてない気がする
&に関する疑問。 Bounds は <meta\s*> で、 Match を以下のようにしたとき、\1の中身が違うのはどうして? 1. (*http-equiv=$AV(refresh)&*content=$AV(*)\1*) 2. (*http-equiv=$AV(refresh)&*content=$AV(\1)*) マッチさせる対象のサンプル <meta http-equiv="refresh" content="0;URL=index.php"> <meta content="0;URL=index.php" http-equiv="refresh"> <meta http-equiv="refresh" content="index.php"> <meta content="index.php" http-equiv="refresh">
> 1. (*http-equiv=$AV(refresh)&*content=$AV(*)\1*) "(*)"の括弧は$AVの引数を括る括弧であって 変数\1に取り込む範囲を指定する括弧ではないぞ。 君の期待しているのは多分こうだ。 (*http-equiv=$AV(refresh)&*content=($AV(*))\1*) 勿論、その場合でも、 > \1の中身が違うのはどうして? \1にクォートが含まれる/含まれない の違いは発生するけどな。 (君の言う「違う」はそういう事ではないだろう)
>>899 俺もきかないなぁと思ったら
キャッシュ残ってた。
キャッシュ消したり別のやつだと動くはず
>>902 キャッシュクリアしてもだめだったんだけど
もう一度クリア、ちゃんと全部読み込んでダウンロードするといけますた。
>>879 bar-22で登録されてたとしてfoobar-22になれば(foobar-22が登録されてなければ)反応しないわけですね
[^>?=/]++-22の部分を消すことに躍起になっててそっちに考えが向かなかったようです
>>880 うーん何故かほぼ機能しません・・・
ログウィンドウでは大半のRefererが消えてるんですけど。ヘッダフィルタはまだよくわからない・・・
下のiframe to dynamic linkで代用しますね
>>884 ありがとうございます
書き直しでなく書き足しでもOKなら
>>879 の方法でやろうかと思います
[Patterns]
Name = "Amazon Affiliate Kill"
Active = TRUE
URL = "$TYPE(htm)"
Limit = 512
Match = "((<a\s|input\s)[^>]++(href=|src=|value=))\1$AV((
http:// (www.|)amazon.co.jp/*|[^>]++.gif[^>]++|)\2([^?/>=]++-22)\3*)"
Replace = "\1"\2AAK\3""
これでいいのかな?JSにアフィ仕込んでるサイトも見かけたけど特例だろうしそっちは放置でもいいかなと
iframeのみのケース忘れてた
Match = "((<a\s|input\s|iframe\s)[^>]++(href=|src=|value=))\1$AV((
http:// (www.|rcm-jp.|)amazon.co.jp/*|[^>]++.gif[^>]++|)\2([^?/>=]++-22)\3*)"
907 :
891 :2007/05/25(金) 18:14:18 ID:vzSM7iVr0
908 :
900 :2007/05/25(金) 22:31:42 ID:2JakyLnI0
>901 どうもありがとうございます。 ()は階層化のために使うものという考えがくせになってしまったようで……。 (*http-equiv=$AV(refresh)&*content=($AV(*))\1*) だと quot が増えてしまうので、 (*http-equiv=$AV(refresh)&*content=$AV((*)\1)*) だとよさげかもです。
[Patterns] Name = "kill _blank to _top +" Active = TRUE URL = "$TYPE(htm)" Bounds = "<(a|base|form|link|area)\s*[^>]+>" Limit = 256 Match = "\1((target=|window.open)(|\())\4(*|)\2_blank\3" Replace = "\1\4\2_top\3" Name = "js: kill blank to top" Active = TRUE URL = "$TYPE(htm)" Bounds = "<(a|base|form|link|area)\s*[^>]+>" Limit = 256 Match = "\1window.open[(](*|)\2_blank\3" Replace = "\1window.open(\2_top\3" Name = "kill blank to top" Active = TRUE URL = "$TYPE(htm)" Bounds = "<(a|base|form)\s*>" Limit = 256 Match = "\1\starget=("|)\2_blank\3" Replace = "\1 target=\2_top\3"
"_blank"の書き換えについて
filter
>>909 真ん中はJSのターゲット指定で効くように下をまねて書き換えたものです。
上は真ん中と下を無理やり1つにしてみました。
<a href="〜" onclick="window.open(this.href, '_blank'); return false;">
は_topにできましたが、マッチルールとかパーで適当にひっかかるようにしただけなので問題あるところの指摘、修正お願いします。
下は数年前から入れっぱなしなのでどこのかさっぱり忘れてしまいました…。Uploader?
「\1\starget」は「<a href=".html""_blank"」がアウトなので \s 消去してあります。
$AV(_blank)は "・' 等、引用符のつけ分け方法が分からないので使ってません。
というか通常リンクに書き換えてしまった方がいいのでしょうか?orz
>>908 $AV((*)\1)
=
$AV(\1)
>>886 の2で頭じゃなく尻の方の</html>に引っ掛けるってのは何でなんでしょ?
>>912 最後に代入したのが優先されるからでしょ。
でも、</html>が無かったり、2つあるサイトがあるんだよね(ほとんどがアダルトサイト)。
さらに、</html>のあとにスクリプトを自動挿入してるところもある。
914 :
877 :2007/05/26(土) 07:46:47 ID:LJpc5aE+0
>>881-882 遅くなりましたがどうもありがとうございました。
HTMLページの場合でも文書先頭に挿入してはいけない場合もあるのですね。
>>905-906 それだと"-22"を含むドメイン全てにマッチしてしまいます。 amazon以外の所にもです。
$AV()の中の表現を書くのは難しいのでamazonのアフィリエイトURLの全ての種類をここに
貼って頂けたらこちらで最適化しようと思いますがどうでしょうか。
916 :
877 :2007/05/26(土) 08:42:42 ID:LJpc5aE+0
>>914 に書いた
>それだと"-22"を含むドメイン全てにマッチしてしまいます。 amazon以外の所にもです。
は間違いでした、プロトコル部分が無いのでマッチしません。 失礼しました。
>>915 どうもありがとうございます。 そのフィルタは
・ディレクトリ型
・?tag型
の2つ(+URLエンコード)に対応しているようですが、
>>905-906 に書かれている.gifが出てきてませんね。
この.gifとはどういうURLにマッチさせたいのかが分からないままなのでやはりURL一覧を貼って頂けると助かります。
アマゾンのアフィリンクはディレクトリ型と?tag=IDの2つだけだよ。 少し前にアマゾンストアに入店しただけで紹介料が発生したけど、すぐ廃止された。 .gifなんてのは無い。
918 :
877 :2007/05/26(土) 09:30:09 ID:LJpc5aE+0
ニュー速+など一部の板で 2ch Back Ground Changerが効かなくなってしまいました どこを書き換えればよいか教えて下さい
>>913 ああ、単純に頭に置くとその先で上書きされて無効になってしまう事もありえるからですか
>>918 なんというのかわからないけど検索ボックスと言うのかな
自分は使わないしここは意味ないのかもしれないけどソース見ててなんとなく気になったから対応させておきました
ttp://www.golgo31.net/ この中のお勧め商品リンクの上のやつですね
意味ないなら.gif云々の部分削っちゃってもいいんですけど
Icestream のページでいつも文字化けします。
文字コードをShift_JISにしないといけないと駄目なんですけど、
http://203.131.199.131:80**/ のURLのとき、meta タグのcharsetを
Shift_JIS に置き換えればうまくいくのではないかと考えております。
しかし、そのフィルターが完成できません。どなたか作成願えませんでしょうか
923 :
922 :2007/05/27(日) 23:33:43 ID:HD5RdDDu0
お、書き忘れてしまった(;´Д`) ** の部分のポート番号には 8000 〜 8100 の間があります。 どうかよろしくお願いしますm( )m
> ** の部分のポート番号には 8000 〜 8100 の間があります。 「**の部分」、じゃなくて、ポート番号部分全体が、だよな? (ポート番号の有効範囲は 0 〜 65535 だし) 正確に書くように。 よう分からんがXMLの文字コード宣言も書き換えんといかんのでは? [Patterns] Name = "(No Name)" Active = TRUE URL = "203.131.199.131:[#8000:8100]/" Limit = 512 Match = "encoding="UTF-8"\?>\0charset=UTF-8" />$STOP()" Replace = "encoding="Shift_JIS"?>\0charset=Shift_JIS" />" (常時ではないが)本文中に複数の文字コードが混在しているようだし、 どうあれ化けるときは化けると思うけど。
書き換えないで消しちゃえば?
926 :
877 :2007/05/28(月) 19:50:24 ID:CYLPpgkz0
>>921 ありがとうございます。 なるほど、.gifは検索フォームのボタン画像のURLでしたか。
ttp://www.golgo31.net/go-button.gif?tag=golgo31-22 ちなみにこのボタンのGIF画像(GO)はゴルゴ31サイト内にある画像なので
これにアフィIDを付けてもamazonには認識されまぜん。
つまりこの画像にアフィIDを付けてもサイト主さんには何のメリットも・・。
よってフォーム部分で書き換えなければいけないのは
<input name="tag" value="golgo31-22" type="hidden">
のところだけですね。
>>915 さん紹介のフィルタが秀逸なのでそれを利用させてもらって書いてみます。
927 :
922 :2007/05/28(月) 21:08:39 ID:XtYk8PSY0
>>924-925 おーー!すげぇええ!ありがとうございます!
>>924 さまのフィルタと
>>925 さまのアイデアを合成して文字化けが見事
無くなりました。僕はこのページを訪れるたび文字コードを変換する手間
を一年以上続けていた気がします。
>「**の部分」、じゃなくて、ポート番号部分全体が、だよな?
>(ポート番号の有効範囲は 0 〜 65535 だし)
すみませんでした。 ここのページは 8000, 8010, 8020, ... というよう
にプラス10刻みで8100まで、合計10ページ(?)あるのです。
どちらにしても説明が下手糞だな(;´Д`)
ありがとうございました!
その悩んでいた時間をマッチングの学習時間に割り当てた方がしあわせになれる。 文字コードを強制的に変更させるのは別に難しくないしなー。
ニコニコダウンロード追加フィルタきぼんぬ
930 :
877 :2007/05/29(火) 15:50:39 ID:IJXIlbvO0
>>921 試作品が出来たので公開ます。 動作確認が不十分なので人柱版ということで。 効かないページがあればご報告下さい。
メンテのしやすさの面からリンクとinputを別々のフィルタにしました。
それとWEBフィルタでアフィ判定するのには限界があるので
>>915 さん紹介のフィルタを併用することをお勧めします。
WEBフィルタでの判定はサイト主がその気になれば簡単に回避されてしまいますので。
[Patterns]
Name = "Amazon Affiliate Kill - link [2007-05-29]"
Active = TRUE
URL = "$TYPE(htm)"
Limit = 2048
Match = "(<a\s[^>]++href=)\0$AV((http(s|)://([^/]++.|)amazon.(co.jp|jp|com)(:[0-9]+{1,5}|)[?/]"
"(((e|%65)(x|%78)(e|%65)(c|%63)/(o|%6f)(b|%62)(i|%69)(d|%64)(o|%6f)(s|%73)|(o|%6f))/"
"(A|%41)(S|%53)(I|%49)(N|%4e)/[0-9A-Z%]+{10,30}/|*(\?|%26|%3f|\&(amp(;|)|))(t|%74)"
"(a|%61)(g|%67)(\=|%3d)))\1([0-9a-z_%-]++{1,*}(-|%2d)(2|%32)(2|%32)"
"(^[a-z0-9]|%((3[0-9])|[46][1-9a-f]|[57][0-9a]))*)\2)"
Replace = "\0"\1AAK\2""
[Patterns]
Name = "Amazon Affiliate Kill - Form input [2007-05-29]"
Active = TRUE
URL = "$TYPE(htm)"
Limit = 512
Match = "<form\s[^>]++action=$AV(http(s|)://([^/]++.|)amazon.(co.jp|jp|com)(:[0-9]+{1,5}|)/*)$SET(amazonF=on)(^?)"
"|<input\s(([^>]++value=)\0$AV(\1-22)([^>]+)\2(^(^>))&&[^>]++name=$AV(tag)*)$TST(amazonF=on)"
"|</form(\s*|)(^(^>))$SET(amazonF=)(^?)"
Replace = "<input \0"AAK\1-22"\2"
とりあえずみんなフィルタまとめてWikiにあげてよ。
どんどんいろんなフィルターが追加されて何が必要かさっぱりわからん状況・・・ 最近グーグルAD更新された?結果にスポンサーの枠がよくでるようになった
933 :
877 :2007/05/30(水) 12:29:54 ID:gxpyCAit0
おかしな挙動に遭遇したから報告。
[Patterns]
Name = "test ABC\0(^(^E))"
Active = TRUE
Limit = 256
Match = "ABC\0(^(^E))"
Replace = "ABC[\0]"
テスト用文字列: ABCDEF
結果: ABC[DEF]
結果は "ABC[D]" になるものと思っていたら何故か "F" までの文字列が代入されていた。
後ろに "E" があるかどうかの判定は出来ているが、代入時に "\0" が最長一致になっている模様。
>>929 think氏のサイトにありましたよ。
>>1
935 :
877 :2007/05/30(水) 23:22:27 ID:gxpyCAit0
>>934 私がおかしいなと思った点は "(^(^E))" が後ろにあり、かつ "(^(^E))" にマッチしているにも
関わらず最長一致になることです。 ここに違和感を感じるのは自分だけかな。
ポート番号はマッチ判定する上で重要ではないので80に絞る必要は無いです。
httpsの場合は80じゃなく443になったりしますし。 今のところこの2つに絞っても問題無いですけど。
>「amazon.co.jp:000080/」とか「amazon.co.jp:/」
こういう書き方は他にも色々出来ますが対応させてたらキリが無いので・・・。
>ヘッダフィルタだとポート番号は無視される
これは無視されません。 お使いのブラウザがURLからポート番号(80)を消してるだけだと思います。
>
>>915 が少し修正されてる。
あれれ、
>>930 は修正前のフィルタを元に書いたものなのでこちらも修正が必要かも。
>>933 詳しい原理は知りませんが、「アスタリスクの後に肯定先読みor否定先読みを置いても期待通りに動作しない」という印象を持っています。
ですので、
Match = "ABC\0(^(^E))"
は
Match = "ABC\([^E]+)0(^(^E))"
と書くことで、解決するのが妥当な線だと思います。
(解決法ではなく、原理を知りたいのだと思いますが、当座の打開策として書いておきます)
937 :
877 :2007/05/31(木) 00:48:58 ID:/3xElFsc0
>>936 ありがとうございます。 その方法は
>>930 の2つ目のフィルタで使いました。(Match欄の2行目)
3行目にも使うべきところがあったので後で修正しておきます。
原理は不明ですが動作的には下の2つは同じようです。
Match = "ABC\0(^(^E))"
Match = "ABC(\0&*E)"
>Match = "ABC\([^E]+)0(^(^E))"
これは Match = "ABC([^E]+)\0(^(^E))" ですねw
938 :
877 :2007/05/31(木) 00:53:21 ID:/3xElFsc0
>>930 を更新しました。
>>915 のフィルタの修正に対応、その他の微修正。
[Patterns]
Name = "Amazon Affiliate Kill - link [2007-05-31]"
Active = TRUE
URL = "$TYPE(htm)"
Limit = 2048
Match = "(<a\s[^>]++href=)\0$AV((http(s|)://([^/]++.|)amazon.(co.jp|jp|com)(:[0-9]+{1,5}|)[?/]"
"(((e|%65)(x|%78)(e|%65)(c|%63)/(o|%6f)(b|%62)(i|%69)(d|%64)(o|%6f)(s|%73)|(o|%6f))/"
"(A|%41)(S|%53)(I|%49)(N|%4e)/([^?]++/)++|*(\?|%26|%3f|\&(amp(;|)|))(t|%74)"
"(a|%61)(g|%67)(\=|%3d)))\1([0-9a-z_%-]++{1,*}(-|%2d)(2|%32)(2|%32)"
"(^[a-z0-9]|%((3[0-9])|[46][1-9a-f]|[57][0-9a]))*)\2)"
Replace = "\0"\1AAK\2""
[Patterns]
Name = "Amazon Affiliate Kill - Form input [2007-05-31]"
Active = TRUE
URL = "$TYPE(htm)"
Limit = 512
Match = "<form\s[^>]++action=$AV(http(s|)://([^/]++.|)amazon.(co.jp|jp|com)(:[0-9]+{1,5}|)/*)"
"$SET(amazonF=on)(^?)|<input\s(([^>]++value=)\0$AV(\1(-|%2d)(2|%32)(2|%32))"
"([^>]+)\2(^(^>))&&[^>]++name=$AV(*(t|%74)(a|%61)(g|%67))*)$TST(amazonF=on)"
"|</form(\s[^>]+|)(^(^>))$SET(amazonF=)(^?)"
Replace = "<input \0"AAK\1-22"\2"
939 :
877 :2007/05/31(木) 01:02:10 ID:/3xElFsc0
>>937 に追記、これも同じ動作。
Match = "ABC(*E*)\0"
ブラクラ対策フィルタってもうないの? よく張られてる奴は消えちゃってるんだけど
誤爆が多く使い物にはならん 素直にキルURLファイルに登録したほうが安全
tableタグが5個以上あると消すみたいなフィルタ欲しい。 table大量に書いて処理落ちさせるブラクラ怖いよ
どなたか、目欄が空白の書き込みを削除するフィルターを作っていただけないでしょうか? お願いします
>942 table が入れ子で5つ以上ってこと? 単純に、1ページ中に table が5つ以上あったら消すってことになると 多くのサイトが消えてしまいそうだが……。 デフォルトのフィルタだったかに、多重階層の table をどうこうするフィルタがあったと思う。 "Kill Excessively Nested Tables" ってのが検索でかかったけど、これだったっけか?
>>943 とりあえずIEで確認。
Name = "test"
Active = TRUE
URL = "[0-9a-z]+.2ch.net/"
Limit = 100
Match = "<dt>[0-9]+ [%81][%46](^<a href=$AV(mailto:*)>)"
Replace = "<dt style="display: none;">"
>945 サンクス 書き忘れたんだけどfirefox+bbs2chreader新バージョン用でお願いしたいです ↓自分で変えてみたんだけどこれだとだめでした Name = "test" Active = TRUE URL = "localhost:8823/" Limit = 100 Match = "<dt>[0-9]+ [%81][%46](^<a href=$AV(mailto:*)>)" Replace = "<dt style="display: none;">"
目欄が空白の書き込みとか専ブラ使おうぜ
スレ違いになっちゃうけど、専ブラだと空白の書き込みもあぼーんできるんですか?
そもそも専ブラ使わないで2ch見るほうがおかしいと思うけど。
>>944 デフォルトのフィルタじゃ見つからなかった。
よかったらそのフィルタのコードコピペして欲しい。
ある意味専ブラだと思うよ。 bbs2chreader+Foxage2chで専ブラの機能は果たしているだろう。
>949 どうやら toc 氏のブラクラ対策フィルタの中にあったもよう。 サイト閉鎖済だし、Internet Archive にも google のキャッシュにも見つからなかった。 誰かが保存していたら転載してもらうか、新規に書くしかなさそう。
これ? [Patterns] Name = "Kill Excessively Nested Tables (2002/05/14)" Active = TRUE URL = "^$LST(SafeList)" Bounds = "< (/|) table [^>]+>*< (/|) table [^>]+>*< (/|) table [^>]+>*< (/|) table [^>]+>* < (/|) table [^>]+>*< (/|) table [^>]+>*< (/|) table [^>]+>*< (/|) table [^>]+>*< (/|) table [^>]+>*< (/|) table [^>]+>" Limit = 2000 Match = "< table [^>]+>*< table [^>]+>*< table [^>]+>*< table [^>]+>*< table [^>]+>*" "< table [^>]+>*< table [^>]+>*< table [^>]+>*< table [^>]+>*< table [^>]+>" "$SET(#=<font size=1 color=red>[Excessively Nested Tables Found]</font>\k)" Replace = "\@"
toc氏って Replace = "\@" が好きだよな 懐かしい
Wikiのヘッダーなんだよ
>>952 そのフィルタ正常に動作していますか?
<table>
<table><table><table><table><table><table><table><table><table><table>
</table></table></table></table></table></table></table></table></table></table>
</table>
をテストウインドウでテストしても、マッチしないのです。
また、<table> の入れ子をチェックしていないように見えます。
# <table> が入れ子で5つ以上存在するとき、<table> を削除した上で、以降の接続を切断するフィルタをWikiに投稿しておきました。
AntiBrowserCrasher - Proxomitron等に関するWiki
ttp://abc.s65.xrea.com/prox/wiki/AntiBrowserCrasher/#j272fb3d
変数で階層をカウントしないとだめかと思ったものの、こんなやり方があるんだね。 (^</table>)?)++ これは汎用的に使えそうなテクニックだね。
>>961 >958-959のブラクラは防げているので、良いと思います。
厳密には、「Local File Access Killer (2003/05/19)」で
<img title="file:///C:/test/test.html" src="./test.png">
にマッチしてしまう点が望ましくないですが…。
think暇だな。 一体何時間張り付いてるんだよ。
>>963 conという名前のディレクトリは作れないんじゃない?
966 :
名無しさん@お腹いっぱい。 :2007/06/01(金) 22:27:15 ID:+OqPkeGU0
967 :
966 :2007/06/01(金) 22:48:15 ID:+OqPkeGU0
>>965 htmlにパスを書き込めれば、conconバグが誘発されるので、ディレクトリを作る必要はないと思います。
conconクラッシャー対策って必要なのか? NT系OSだと無効だが
物理的ブラクラなんて年単位で遭遇してない気がするけど、今さら対策必要?
googleの検索結果の表示に、日本語とローマ字があった場合 ローマ字のみにクリアタイプが効いてしまって読みづらいんですが 何とかなるフィルタありませんか?
>>972 いえ、ずっとie6です
リンク先見せてもらいましたけどie6だと
その項目すらないんですね
いつ頃かは覚えてないんですけどある日を境に
ローマ字だけクリアタイプかかった状態になったんです
昔、特定の文字コードのページだか、 ブラウザで英語圏の言語を最優先にしてると、 英字部分がTimes New Romanになったことがある。 関係ないか。
975 :
966 :2007/06/02(土) 02:34:09 ID:7UwZaQ1R0
おねがいします
リストに入ってるサーバーの場合セキュリティソフトとかで、 リファラを遮断するような設定でも強制的に リファラを送るフィルタ見たいなのが欲しいんだけどそういうのないかな?
オミトロン→そのソフト→サーバ だとどうしようもないが、 そのソフト→オミトロン→サーバ だと、既にRefererが消えているのでどうしようもない
978 :
965 :2007/06/02(土) 08:10:28 ID:3lmXyOmh0
>>968 ごめんそういう意味じゃない。
> <img src="c:/con/contact.html"> にマッチする意図
こんなパスは存在しないし、パスを指定している時点でそのページを疑った方が良い。
>>969 ブラクラページは1種類だけじゃなくて数十種類も仕掛けてることが多い。
ニュース速報系の板でそういのをよく見かける。
conconは目印にし易いから、その時点で\kすれば、他の未知のブラクラも防げる可能性がある。
ブラクラ発見 p://up.uppple. com/src/up3411.jpg
ソース見てみたらconconとかtelnetとか・・ 古典的すぎてワロタw
フィルターまとめサイト作った方が良くないか?
wkikiでいいじゃん
よろしくお願いします。
無意味に情報を分散させるのは愚者のやること
Wikiのフィルタ、リスト一覧なんて数あるフィルタの極僅かじゃん
>>978 そういうことでしたか。
こちらこそ、早とちりしてすみません。
指摘された件ですが、UNIXでもデバイス名の制約を受けるのでしょうか?
制約がないとしても、Windowsのデバイス名を指定すべきではないということかもしれませんが、少し気になりました。
このスレの過去スレを集めたWebってないかい?
やってみればいいじゃん。 新しいうpろだだって最初はイラネって言われてたけど今ではこっちが主役な感じだし。 ただ、他人まかせにするつもりなら誰もやってくれないだろう。
991 :
名無しさん@お腹いっぱい。 :2007/06/03(日) 17:35:59 ID:RZ6xv2+x0
wkiki age
992 :
名無しさん@お腹いっぱい。 :2007/06/03(日) 17:44:56 ID:K1bYT2tX0
993 :
名無しさん@お腹いっぱい。 :2007/06/03(日) 17:45:15 ID:9vsiz++f0
994 :
名無しさん@お腹いっぱい。 :2007/06/03(日) 17:45:37 ID:+H5gt8nA0
995 :
名無しさん@お腹いっぱい。 :2007/06/03(日) 17:45:51 ID:X3G4Nv+G0
996 :
名無しさん@お腹いっぱい。 :2007/06/03(日) 17:46:05 ID:NTi+Hq7Z0
997 :
名無しさん@お腹いっぱい。 :2007/06/03(日) 17:46:21 ID:RWhASQyL0
998 :
名無しさん@お腹いっぱい。 :2007/06/03(日) 17:46:46 ID:hT7fB/A10
999 :
名無しさん@お腹いっぱい。 :2007/06/03(日) 17:47:23 ID:97JgZM3T0
↓1000取り馬鹿
\∧_ヘ / ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ,,、,、,,, / \〇ノゝ∩ < 1000取り合戦、いくぞゴルァ!! ,,、,、,,, /三√ ゚Д゚) / \____________ ,,、,、,,, /三/| ゚U゚|\ ,,、,、,,, ,,、,、,,, ,,、,、,,, U (:::::::::::) ,,、,、,,, \オーーーーーーーッ!!/ //三/|三|\ ∧_∧∧_∧ ∧_∧∧_∧∧_∧∧_∧ ∪ ∪ ( ) ( ) ( ) ) ,,、,、,,, ,,、,、,,, ∧_∧∧_∧∧_∧ ∧_∧∧_∧∧_∧∧_∧ ,,、,、,,, ( ) ( ) ( ) ( )
1001 :
1001 :
Over 1000 Thread このスレッドは1000を超えました。 もう書けないので、新しいスレッドを立ててくださいです。。。