Proxomitron フィルター作成スレッド Part4
986 名前:名無しさん@お腹いっぱい。[sage] 投稿日:2006/01/22(日) 23:32:54 ID:F0jyqZHP0 楽天のカウンター兼アク解を弾くフィルタはないでしょうか? 987 名前:名無しさん@お腹いっぱい。[sage] 投稿日:2006/01/23(月) 03:45:55 ID:jTOGCdwY0 [Patterns] Name = "楽天" Active = TRUE Limit = 256 Match = "ノムさんチームのスカウト" Replace = "あぼーん" これ?
アプロダに「Proxmine アップローダーの ".PNG" の追加を回避するフィルタ」をUPした人 乙。 ただ、3つめのフィルタは不要だと思うのだが…。 俺は以下のフィルタを作った。 [Patterns] Name = "Proxomine: Replace link (2006-01-23)" Active = TRUE URL = "wind.prohosting.com/proxmine/cgi-bin/uploader/((^?)|index.cgi(\?page=|(^?))) $TYPE(htm)" Limit = 128 Match = "(<a\s[^>]++href=)\0$AV(./download.cgi\?(PmU_?+)\1)" Replace = "<span style="font-size: x-small; color: #7289cc">Replaced:</span> \0"./files/\1.png"" "./files/PmU_****.zip.png" に置換してしまえば、リダイレクトは不要となる。
pngのまま保存すると関連付けが画像ビューワになってしまうよ。
>>8 あぁ、なるほど。
拡張子を png にしたくないから、リダイレクトさせていたのか。
失礼しました。
>>7 は聞き流して下され。
ドンマイ。 あと ?+ は * のほうがいいですよ。
>>10 > ?+ は * のほうがいいですよ。
微妙な違いなのでお気になさらず。
Proxomitronは各種テキストの文字数と速度が比例していないので
必ずしも、「?+ < *」とは限らない。
「* = ?++ < ?+」という考え方もあるし、実際そのような気もするが
後ろがない場合は、ほんの少しの違いで気にする程の変化はないと思う。
「半角スペース と \s+ のどちらを使うか」程度の違いかと。
Webページ中に使われている全角英数を半角にするフィルタくれくれ
>>14 [Patterns]
Name = "Zenkaku Hankaku"
Active = TRUE
Limit = 16
Match = "$LST(zenhan)"
Replace = "\0"
以下の内容を
zenhan.txtとしてブロックリストに登録(略はテキトーに補完してくれくれ)
#
# NOADDURL
#
A$SET(0=A)
B$SET(0=B)
C$SET(0=C)
略
Z$SET(0=Z)
a$SET(0=a)
略
z$SET(0=z)
0$SET(0=0)
略
9$SET(0=9)
大文字小文字同一視されんのか
半角英数に区別なし、全角英数は2バイトなので大・小文字は区別される
20 :
名無しさん@お腹いっぱい。 :2006/02/01(水) 21:55:40 ID:KQVo0Q890
ヤフオクの出品中一覧にアクセス数とウォッチリストに追加した数を表示する フィルタを作って下さい。
21 :
名無しさん@お腹いっぱい。 :2006/02/02(木) 16:30:18 ID:wX4w5p050
age
>>14 アプロダへどうぞ。
可能な限り(私が試した範囲内で、誤爆が回避できる程度に)、誤爆する危険性を低くしましたが、
誤爆する可能性は0ではありません。
誤爆するケースを考慮した上で使うようにしてください。
(テキストに誤爆についての説明を付けたので、フィルタを取り込む前に読むことをお勧めします)
23 :
名無しさん@お腹いっぱい。 :2006/02/03(金) 01:39:17 ID:liZm6FUi0
Proxomitron使ってると、WebDAVの認証って通らない?
24 :
名無しさん@お腹いっぱい。 :2006/02/03(金) 08:42:45 ID:zwcMNUuJ0
>>23 バイパスの有無に関わらず、
ProxomitronでNTLM認証が成功したという話を聞いた事がない
俺も2〜3年解決方法を模索している
google image で検索結果を新しいページを開きたい。 デザイン変更が始まっているようで、単純にtext置換が効かなく なるし、google web ではフィルターがループしているみたい。 どなたかお力を...。
>>26 多謝!!!!!&はずかしー!!!
お陰さまで稚拙な自作フィルターも削除でき、表示も早くなりました。
>>27 自己レス
検索結果をクリックする度に新しいウィンドウを増やしたくて
単純に「taget=nw」を「taget="_blank"」に置換したら
image検索では検索結果が表示されません。
一喜一憂...。
>>28 更に自己レス
使用しているタブブラウザの設定が不適切な設定にしてました。
お騒がせして申し訳ありませんでした。
30 :
14 :2006/02/03(金) 19:40:03 ID:t8hieS6e0
>>31 [Patterns]
Name = "kill eucaly counter"
Active = TRUE
URL = "$TYPE(htm)"
Limit = 256
Match = "<IMG\s[^>]++SRC=$AV((
http://app.eucaly.net/counter* )\0)*>"
Replace = "<a href="\0">[counter]</a>"
最後の一行を消せば[counter]は表示されない。 お好みで。
使えました 有難う御座います
34 :
名無しさん@お腹いっぱい。 :2006/02/04(土) 16:32:17 ID:E97Zh67z0
>>37 [Patterns]
Name = "37"
Active = TRUE
URL = "blog.livedoor.jp/"
Limit = 1200
Match = "<table cellpadding\=\"0\" cellspacing\=\"0\" width\=\"100%\" border\=\"0\" id\=\"header\">*</table>$STOP()"
すまん、>38じゃなくてこっち [Patterns] Name = "37" Active = TRUE URL = "blog.livedoor.jp/" Limit = 1500 Match = "$NEST(<a name\=\"top\">,<div id\=\"container\">)" Replace = "$STOP()<a name="top"></a><div id="container">"
(news19 -> live22x)
http://live22x.2ch.net/news/ ニュース速報
移転したので、効かなくなりました。修正お願いします><。
Name = "2ch thread list tabler two"
Active = TRUE
URL = "[^/]++.(2ch.net|bbspink.com|machi.to)/*/subback.htm"
Limit = 3000
Match = "<font*>$SET(1=\r\n<style>a{"
"font-size:18px"
";text-decoration:none}a:hover{color:red}</style>\r\n<table align=center cellspacing=0 cellpadding=0\0>)"
"$URL([^:]+://[^/]++.(machibbs$SET(0= width=100% style="table-layout:fixed")|))"
"|"
"($SET(#=<td valign=top>)(<a*</a>)\#[^<]+$SET(#=</td>))+{1,1}"
"$SET(1=<tr>)$SET(2=</tr>\r\n)"
"|"
"(</font>|(</body>)\#)"
"$SET(1=</table>\r\n$STOP())"
Replace = "\1\@\2"
続き Name = "2ch thread list tabler [HOME-2]" Active = TRUE URL = "[^/]++.(2ch.net|bbspink.com|machi.to)/([^/]+/)+{1,*}(index|(^?))" Limit = 900 Match = "(<a[^>]++name=("|)(#|)menu*>)\#" "([^<]+(<table\2width=\w\3>$SET(#=<table\2\3>)(*<td*>)\#|<[^a]*>))+[^<]+" "$SET(1=\r\n<table align=center border=0 cellspacing=0 cellpadding=0 style="" "font-size:18px">\r\n)" "|" "($SET(#=<td valign=top>)(<a href=("|)../(test|bbs)/*> [0-9]+{1,4}" "([^<]+</a>[^<]+<a[^>]++href=("|)#[^>]+>|)[^<]++\([0-9]+{1,4}\)</a>)\#([^<]+<[^a]*>)+[^<]+$SET(#=</td>))+{1,1}" "$SET(0=<tr>)$SET(#=</tr>\r\n)" "((<a[^>]++href=[^>]++subback.htm*</td>)\1$SET(#=</table>\r\n<div align=center><font size=-1>)$STOP()|)" Replace = "\0\@\1"
初めてこのソフトを使うのですが、pr0001zipというものでいいのでしょうか? 前のバージョン4の日本語化済みのものも保管してあります OSは98SEです
できました。ありがとうございました。>39
軽快ブラウザOpera総合スレ part42
http://pc7.2ch.net/test/read.cgi/software/1139149664/469 469 名前:名無しさん@お腹いっぱい。[sage] 投稿日:2006/02/10(金) 17:49:09 ID:LRdOWwA10
>>464 scriptに関してのみならProxomitronを使えば擬似的に出来る。
Operaのscriptは有効にしておく。
Proxomitronにscriptを殺すフィルターを入れる。
そのフィルターを ^$LST(KillScript) とでもやって
KillScript.txtにscriptを許可するサイトを登録していく。
KillScript.txtに登録されたサイトはscriptを殺すフィルターをバイパスする。
これで登録されたサイトはscript有効、それ以外は無効になる。
すみません。 上記のスレから来たのですが、
scriptを無効にして、txtに登録したサイトのみscriptを有効に
みたいなフィルタを教えて下さいm(_"_)m
デフォで入ってるDisable JavaScriptフィルタだと、この
"txtに登録したサイトのみscriptを有効に"
というのが出来ないっぽいので・・
>>46 おお、ありがとう!
過去スレにあったんだね わざわざごめん
よく使い方わかってないんだけど、もしかしてDisable JavaScriptフィルタの
URL マッチの部分に$LST(listname) でもいいのかな・・?
>>44 ありがとうございます。
pr0001が4.5juneなので、Juneの方をダウンロードするということでよろしいでしょうか?
それとpr0001を使った場合、日本語化パッチは不要ということでよろしいのでしょうか?
>>47 >45にはKillScript.txtとありますが、
リストには「Scriptを許可するサイト」が登録されるという認識で良いのですよね?
「Disable JavaScript」で、リスト名を「AllowScript」として以下の変更。
URL: $TYPE(htm)(^$LST(AllowScript))
Match: <script*> → <script[^>]+>
>>49 あ、そうです!
ありがとうございます 試しててレス遅れました
Firefoxでバッチリでした
Operaだと、効くサイトと効かないサイトが??相性なんかな・・??
ともかくありがとうございましたm(_"_)m
51 :
50追記 :2006/02/10(金) 19:50:40 ID:5amgqPIZ0
日本語訳ヘルプサイトに、ブラウザごとにJavaScript系のフィルタは 動いたり動かなかったりとありますから、きっとこれですね 色々すみませんでした
>>48 その通りです。 pr0001に同梱のreadmeも読もう。
40 <(font|body)*>
54 :
40 :2006/02/11(土) 10:45:33 ID:16KQ7gNh0
>>53 "(</font>|(</body>)\#)"
↓
"<(font|body)*>"
でしょうか?なんか感でいくつか試したんですけどだめでした。
Match = "<font*> ←ここ
>>55 dクス。出来ました。
(`・ω・´)シャキーン
>>41 のほうも、どなたかお願いします。
57 :
名無しさん@お腹いっぱい。 :2006/02/11(土) 15:14:21 ID:LIu4Y3+30
テンプレにあるKill href/src ad [2005.12.02]ってテキスト広告の文字が透明になるだけでURLは消えないよね。 どうやってURL消えるのきぼん。
58 :
名無しさん@お腹いっぱい。 :2006/02/11(土) 15:21:38 ID:LIu4Y3+30
61 :
名無しさん@お腹いっぱい。 :2006/02/14(火) 20:43:16 ID:z1/Npjya0
>>61 そのフィルタは見たことないけど自分の入れてるフィルタも同じように
効いてなかったからとりあえず自分の入れてるのを直した。
[Patterns]
Name = "2ch subback"
Active = TRUE
URL = "[-a-z0-9]+.(2ch.net|bbspink.com)/*/subback.html(^?)"
Limit = 256
Match = "(<a\s[^>]++href=$AV([0-9]+/l50)[^>]+>)\1([0-9]+:\s+)\2([^<]++)\3\(([0-9]+)\4\)\s+</a>([%81][@]|)"
Replace = "\2\1\3</a>(<font color=red>\4</font>)<br>"
同じフィルタなのかな??
62さん。レスありがとうございますm(__)m
入れてみたところうまく整列されます
ただ2ch subback.html adjust&add menu (JS) (02/11/24)の場合jsをかまして
ページ上部にメニュー表示(dat読み、既読スレ、ワードハイライト)等
のボタンを装備してるのでなんとか使いたいんです
ソースセットはこれ
ttp://wind.prohosting.com/proxmine/cgi-bin/uploader/download.cgi?PmU_0294.zip proxomitron上だけのソースは以下です
Name = "2ch subback.html adjust&add menu (JS) (02/11/24)"
Active = TRUE
URL = "(|64.233.179.104/search?q=cache:*)[^.]+.(2ch.net|bbspink.com|psychedance.com)/[^/]+/subback.html"
Bounds = "</(head*=2|body)>|<a*/a>[^<]+"
Limit = 900
Match = "(<a*>[1-9]00(:|[%81][%46])*)\1</a>*$SET(2=\1</a></td></tr></table><table border=0><tr><td valign=top>\n)"
"|"
"(<a*>(50|[1-9]50)(:|[%81][%46])*)\1</a>*$SET(2=\1</a></td><td valign=top>\n)"
"|"
"(<a*)\1</a>*$SET(2=\1 <br></a>\n)"
"|"
"</head*$SET(2=$FILE(D:\\\Proxomitron Naoko-4\\html\\subbackHeader.txt)<table border=0><tr><td valign=top>)"
"|"
"</body>$SET(2=</td></tr></table></body>)"
Replace = "\2"
すごく汚いフィルタですね・・。 今時間が無いので明日にでも修正します。 もし自分以外にも修正出来る方がいましたらお願いします。
65 :
62 :2006/02/16(木) 06:06:05 ID:UtV2EyXI0
調べた結果、 </head><body><font size=2> がニュー速では </head><body style="font-size:smaller;"> に
変わってるせいでマッチしなくなってました。
Bounds = "</head><body[^>]+>(<font*>|)|</body>|<a*/a>[^<]+"
に書き換えればマッチするばずです。 時間があれば一から書き直すべきフィルタですが無いのでごめんなさい。
それと、
>>63 のフィルタとPmU_0294.zipのフィルタは違うバージョンのフィルタのようです。
オリジナルのは2002年に作られたフィルタなのでPCの高速化を最優先に考えて作ったために
こんな荒削りなフィルタになったと思われます。
この3年の間にPCの性能が飛躍的に向上したために今ではこんな書き方をする人はたぶんいません。
時の流れを感じますね。
66 :
63 :2006/02/16(木) 11:59:48 ID:/aALBFfq0
ありがとうございます! バージョンが違いがあったのならすいません Bounds変えたらsubbackHeader.txtが効くようになりました 親切な65さんに感謝 m(__)m
>>67 Active = TRUE
URL = "live[^./]+.2ch.net/(^test)[a-z]+/(^subback.html)"
Limit = 4096
Match = "<div\s[^>]++(id|class)=$AV(adv+)*</div>"
69 :
67 :2006/02/17(金) 08:06:38 ID:P1LasZWF0
とか言ってくる掲示板ってこの系列ぐらいだよな
うん
Pukiwikiのページの<a target=の要素を_topから_blankにすべて置き換える フィルターってどっかにあります? もし無ければどなたか作っていただけないでしょうか...
PmU_0259.zipを改造すれば? すぐだろ
どもでした、いじってみます
ぐぐるのイメージ検索結果を画像直リンにかえるフィルタ、あったら教えて。
[Patterns] Name = "Direct to image on Google Image (2004-07-02)" Active = TRUE Multi = TRUE URL = "*.google.*/images" Bounds = "<a*>" Limit = 512 Match = "\1href=$AV(*imgurl=([^&]+)\2*)\3" Replace = "\1href="\2"\3"
[Patterns] Name = "Google image redirector" Active = TRUE URL = "images.google." Limit = 2000 Match = "<a href=/imgres\?imgurl=\0\&imgrefurl=\1\&h=*>" Replace = "<a href=$UESC(\0) target=_blank>Link</a> <a href=$UESC(\1) target=_blank>"
ちょ、ちょっと77と78のお方。 凄くいい。少し泣いてるかも。 ありがとう。
グーグルイメージのフィルターいいね。
Yahooのアバターを表示させなくするフィルターをどなたか作ってくださいませ・・・ Mozillaだとアバターがクソ重くて死む。
何故自分で作ろうとしないのか。
[Patterns]
Name = "google image (040516) +js"
Active = TRUE
URL = "images.google.co(.jp|m)/"
Limit = 1024
Match = "<a href=/imgres\?imgurl=[^&]+\&imgrefurl=([^&]+)\0[^>]+>"
" <img[^>]++(src=/images\?q\=tbn:[^:]+:(((^https:)$SET(2=
http:// )|)[^ >]+)\3)\1*</a>"
Replace = "<a href="$UESC(\0)" target="_blank">imgref</a> / <a href="\2\3" 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\3'}"\1</a>"
これじゃだめだったの?
スクリプト使ってる奴は、当然スクリプトを有効にしてないと動かないだろ。
このフィルターを2ch.seや裏口で使えるようにしたいんですけど、どうしたらいいのでしょうか…色々試したのですが分かりません。
Name = "@2ch katjusha like"
Active = TRUE
URL = "\w(kame.tadaima.com|2ch|indexf.htm|iyan.html|2ch.net|2ch.html|bbsmenu.html|subback.html|2chmenu.html)"
Limit = 256
Match = "(<frame \wiyan.html" )\1name="cont"( MARGINWIDTH=0 MARGINHEIGHT=0 FRAMEBORDER=0>)\2"
"$SET(0=<frameset cols=290,*>\1name="cont"\2\1name="sred"\2</frameset></frameset>\k)"
"|(.2ch.net/[^/]++/|bbspink.com/[^/]++/|.machi.to/[^/]++/)\1"
"$SET(0=\1subback.html)"
"|(<base href="
http://\w/test/read.cgi/[^/]++/ " target=)\1"body">$SET(0=\1"sred">)"
Replace = "\0"
Name = "@2ch thread list tabler1.1"
Active = TRUE
URL = "[^.]+.(2ch|bbspink|machi).*/subback"
Bounds = "</(head*=2|body)>|<a*/a>[^<]+"
Limit = 900
Match = "$SET(9=<table border=0 bordercolor="#cfcfcf" rules=rows>)"
"</head*$SET(2=<style>"
"a{font-size:13px;font-weight:nomal;text-decoration:none;color:#000000;line-height:160%}"
"a:visited{font-weight:nomal;text-decoration:none;color:#FFFFFF;background-color:#5E6C78;}"
"a:hover{font-weight:nomal;text-decoration:none;color:#FFFFFF;background-color:#244D95}"
"</style></head><body bgcolor=#ECE9D8>\9<tr><td valign=top nowrap>)"
"|(<a*>(|[1-9])[123456789]0:*</a>)\1*"
"$SET(2=\1</td></tr></table><table border=0 bordercolor="#cfcfcf" rules=rows><tr><td valign=top nowrap>)"
"|(<a*>(|[1-9])[13579]0:*</a>)\1*"
"$SET(2=\1</td><td valign=top>)"
"|(<a*/a>)\1*$SET(2=\1<br>)"
"|</body>$SET(2=</td></tr></table>)"
Replace = "\2"
86 :
85 :2006/02/21(火) 20:24:45 ID:0LrlXFNc0
どのページで何をするためのフィルタかも分からないのでパス。
てか2ch系多いね 専ブラ使えと
なんかエラーが出たときはIEとかで2ch見たりする事もあるし。 と、さっき持ち株云々エラーが出たので言ってみる。
2ちゃん専用ブラ知らない香具師は擬古ナビでOK.
でも、そういう時は出来るだけ素に近い環境で試さない? と、さっき持ち株云々エラーが出たので言ってみる。
すみません。 google imageの大・中・小を、ポチンとクリックするだけで 選択できるようなフィルターをどなたかお願いいたします。
>>92 リンクで切り替えられるようにしたが、これでいい?
Limitはたぶんこれでたりると思うが、足りなかったら増やして。
[Patterns]
Name = "GoogleImage Size Changer"
Active = TRUE
URL = "images.google.com/*"
Bounds = "(<select*</select>)\0"
Limit = 1200
Match = "*"
"<option value=$AV(\1)[^<]+"
"<option value=$AV(\2)[^<]+"
"<option value=$AV(\3)[^<]+"
"<option value=$AV(\4)*"
Replace = "\0\r\n"
" <a href="\1">すべてのサイズ</a>"
" <a href="\2">大</a>"
" <a href="\3">中</a>"
" <a href="\4">小</a>"
こういう細かいやつは自作したほうが自分好みに出来ますよと言っておく。
>>94 nameが全く指定されてないから、飛びようがないわ。
まずソース見れ、基本だ。
[Patterns]
Name = "Prox kakolog filter"
Active = TRUE
URL = "www2.wbs.ne.jp/~go-to/prx/[0-9]+{9,10}*"
Limit = 20
Match = "<dt>([0-9]+{1,3})\1 (:|:)$SET(0=<dt><a name="\1"></a>\1 :)|"
"(<b>$SET(1=<b>)|((\>|>|>|≫|〉)+{1,2})\2)([0-9]+{1,3})\3"
"$SET(0=\1<a href="#\3">\2\3</a>)"
Replace = "\0"
あまりに局所的なフィルタで張ることも躊躇われる。
・・・暇つぶしに作ってたら潰し過ぎた。時間ねぇw
js使えば出来そうだがログを専ブラに入れて使ったほうがぇぇゃろな。
99 :
92 :2006/02/25(土) 09:32:17 ID:9a+eFAYS0
よく行く掲示板で
http://test.html などのアドレスが貼られていた時、2ちゃんねるのように字が青くなり
ハイパーリンクにならない(?)のですが、そのようなフィルタを作成することは可能でしょうか
Add H というのは過去ログで見つけて重宝させていただいているのですが、
h 抜きでないものには効果を発揮しないのです
ご検討のほどをよろしくお願いします
>>100 まず、テンプレを読もう。
・wahaha氏の「AddLink」
・アプロダの「http Text to Link」
102 :
100 :2006/02/25(土) 23:06:07 ID:IcMjORli0
103 :
続き :2006/02/25(土) 23:07:05 ID:IcMjORli0
(↑は
>>101 のミスです。スミマセン)
3つのフィルタから成り立っているとの話なので、
"Add Link 4.2 head tag detection"
"Add Link 4.2 sub-filter"
"Add Link 4.2 beta2"
をコピペで貼り付けて、全部アクティブにしています。
入力に間違いはないと思うのですが、"Add Link 4.2 beta2" の所で間違っているのではないか
と若干の違和感があるぐらいです。
Match の部分が異様に長くて
Match = "((<(/|)(br( 中略 )|))\#"
"((
ftp:// ( 中略 ))\3"
"(((([0 中略 6\5"))"
という感じになっているのですが、貼り付ける際には " 〜〜〜 " のダブルクォーテーションで
挟まれた部分で問題ないですよね? けれど、ダブルクォーテーションつけたとしても抜いたとしても
やはり効果が現れてくれないです;;
前にも
>>3 のサイトに行き着いたときには h 抜きのアドレスを補完してくれる効果が現われてくれず
仕方なく過去ログから
Multi = TRUE
Match = "([^h])\0(
ttp://[^< > ]+)\1"
Replace = "\0<a href="h\1">h\1</a>"
という感じのフィルタを使っていました。これしか効果が現れなかったのです。なにがいけないのでしょうか
長々と失礼します。
Proxomitron は Naoko-4.5 "June" を使っています。
後々の人のために(多分目にはつかないだろうけど)手順を明記しておきます。
1.
>>3 の
http://proxomitron.at.infoseek.co.jp/ のサイトに行って、赤い字の部分をコピー
2. テキストファイルに貼り付けるなりなんなりして、以下の形式に
------------------------------------------
[Patterns] ※ 頭に[Patterns]をつけるのがミソ この形に持っていきたいがための作業
Name = (略)
Active = (略)
URL = (略)
Limit = (略)
Match = (略)
Replace = (略)
------------------------------------------
上の囲いの中の部分を全て選択して再びコピー。
3. Proxomitron起動
4. [ファイル] -> [設定フィルタの併合] -> [クリップボードからデータを併合]のチェックボックスをクリック
5. ファイルはデフォルトの設定(default.cfg)に保存
以上の手順でうまく動作してくれました。特に3.- 5.のついては
無学な部分がありこの度初めて知りました。今までURLをコピーしてペーストする面倒な手順を踏んでいた1年そこそこ
が本当に無駄に思えてきました。なんてすばらしいんだ…orz
これぞProxmitron の本領発揮って感じです
ちなみに、『http Text to Link』のが、Linked:
https://www.hoge.co.jp みたいな感じで、Linked: とかついてくれるし、
Byte の量もすくなそうだからこっち使います。Referer とかあんまよくわかんないし
意識しないんでこっちを使おうと思います。
長ったらしくなってしまいましたがそれぐらい感謝してます!
>>104 さまどうもありがとうございました。
107 :
↑ :2006/02/26(日) 00:38:38 ID:nRPB4vlj0
とうか、こんなの皆既知のことだったのかもしれない… 初心者がスレ汚しみたく 長々と申し訳ないっす 一行一行ダブルクォーテーションに囲まれた部分を丁寧にコピペしていた自分も あほらしいと知った今日でした ||
108 :
104 :2006/02/26(日) 00:44:01 ID:EOA00SdF0
109 :
104 :2006/02/26(日) 00:46:05 ID:EOA00SdF0
>108を訂正。 × それはサイト側に迷惑がかかるからRefererを送るべし。 ○ それはサイト側に迷惑がかかるからRefererを偽装するか、消すべし。
>>108-109 ありがとうございます そのサイトも早速お気に入りに登録しておきました
重ねて御礼申し上げます
113 :
名無しさん :2006/02/26(日) 20:19:56 ID:OtjmW5eL0
PmU_0269.zip 2ch Thread Table Reformerを現在の2chに対応させたフィルターが欲しい。 どなたか改良出来る方居ませんか? 居たら、是非お願いします。
>>112 JavaScriptでGO。
window.close()
スクリプトオフ状態でのやり方は知らん。
115 :
112 :2006/02/27(月) 00:13:16 ID:BElM3xkH0
>>114 ありがとうございますm(__)m
これでいけました
Replace = "<!-- No More Damasare -->"
"$CONFIRM(No More Damasare!\r\n[\2]\r\nKill This Connection?)
"<script language="javascript">window_close();</script>"
"\k"
>>113 2chとjbbsのスレ一覧を縦にならべるってやつかい?
jbbsはよくしらないけど2ch専用のなら
ここか関連スレの過去ログでも見たことあるし、併用しとけば?
とりあえず自作分もだしとくか。
Name = "Subback Replace for 2ch Part1"
Active = TRUE
URL = "[^/]++(2ch.net|bbspink.com)/[^/]++/subback.html"
Limit = 256
Match = "(<base href="
http:// ([^/]+)\1/test/read.cgi/([0-9a-z]+)\2/")\3"
Replace = "\3"
"$SET(Predat=
http://\1/\2/dat )"
"$STOP()"
Name = "Subback Replace for 2ch Part2"
Active = TRUE
URL = "[^/]++(2ch.net|bbspink.com)/[^/]++/subback.html"
Limit = 256
Match = "<a href=("|)([0-9]++)\1/l50("|)>([#1:9]$SET(2=00)|[#10:99]$SET(2=0)|[#100:*])\3 : ([^<]++)\4</a>( |)"
Replace = "<FONT size=4><a href="\1/" target="_blank">\2\3</a> <b>\4</b></FONT><b>"
" <a href="\1/-100" target="_blank">S100</a>"
" <a href="\1/l100" target="_blank">L100</a>"
" <a href="\1/l50" target="_blank">L50</a>"
" <a href="$GET(Predat)/\1.dat">dat</a></b><br>"
2chのやつで↓のやつ、どっかでもらって、いれてたんですけど これの役目忘れたので、どういう目的の物か教えてください。 Name = "2ch bbs.cgi Accelerator" Active = FALSE URL = "([^/]++.2ch.net|[^/]++.bbspink.com|[^/]++.machibbs.com|oyster[0-9]+.he.net)/test/(sub|)bbs.cgi" Bounds = "content=5*>" Limit = 256 Match = "content=5\1" Replace = "content=0\1\k" Name = "2ch subback" Active = FALSE URL = "[-a-z0-9]+.(2ch.net|bbspink.com)/*/subback.html(^?)" Limit = 256 Match = "(<a\s[^>]++href=$AV([0-9]+/l50)[^>]+>)\1([0-9]+:\s+)\2([^<]++)\3\(([0-9]+)\4\)\s+</a>([%81][@]|)" Replace = "\2\1\3</a>(<font color=red>\4</font>)<br>"
>>117 2ch subbackはsubback.htmlの整列
1: 【アンケート】退役した tmp5 サーバ欲しい? (2get禁止) (1)
2: DRM解除 (102)
3: Mozilla Firefox Part54 (26)
4: 2ちゃんねる用ブラウザ「ギコナビ」 Part35 (369)
5: 【p2】PHPでつくった2ch viewer【part32】 (10)
6: PorcupineスレッドVol.1 (376)
7: 秀丸メールスレッド その11 (280)
こんな感じに並ぶ
2ch bbs.cgi Acceleratorは別ページへの5秒後自動ジャンプを即座に
だと思う
何じゃコリャ。 こんなの画像に埋め込んでるのか。
パンチラ画像じゃない…。
apple.comで引っ掛ければいいんじゃないの
画像を開くだけじゃアクセスしてる様子はないけど、これって電子透かしみたいな感じ?
124 :
117 :2006/03/01(水) 09:52:27 ID:u/0NOhuK0
>>118 レスありがとうございます。
2ch subbackは、2ch thread list tabler twoというやつもありましたので
こちらを使います。2ch bbs.cgi Acceleratorは必要ないみたい(あんまりよくわからない)なので、
捨てます。
URL = "(www.|)kakaku.com/" Match = "<a href="/jump/top/\0.htm(l|)"> Replace = "<a href="/\0/">" カクカク.com/jump/top/ のみに対応 カクカク.com/jump/ カクカク.com/jump/top/recommend/ カクカク.com/jump/ad/ は未対応 つかよくわからんです
>>126 仕様変更時にアイデアは思いついたが、価格.com に問い合わせを入れれば対応してくれそう。
後で問い合わせしようと先延ばしし続けてしまったので問い合わせを入れておいた。
が、フィルタも作成してしまった…。
[Patterns]
Name = "Replace location by meta refresh [2006.03.02]"
Active = TRUE
URL = "$TYPE(htm)"
Limit = 256
Match = "($NEST(<script(^[^ >])(^[^>]++src=)[^>]+>,"
" (<!-+|) location.("
"href=$AV(\1) ;+|"
"replace\($AV(\1)\) ;+|"
"assign\($AV(\1)\) ;+"
") (/+|) (-+>|)"
" ,</script>))\0$STOP()"
Replace = "\0\r\n<noscript><meta http-equiv="refresh" content="0; url=\1"></noscript>\r\n"
1つ気になっている事がある。
上のフィルタに以下の改変を加えると、\1 に必ず ; が入ってしまう。
(再現するのは location.href だけ)
href=$AV(\1) ;+|
↓
href=$AV(\1);+|
この場合は半角スペースを入れておいた方が柔軟な対応が出来るので
半角スペースを入れることに問題はないが、気になる現象だ…。
>127氏のフィルタは 価格.com のURL規則をふまえて転送先を想定し、リンクを書き換えるフィルタ(価格.com専用) >128は転送ページの JavaScript の中身を解釈して転送先URLを抽出し、meta refresh に書き換えるフィルタ(汎用型) 用途に合わせて使い分けてくれ。
130 :
126 :2006/03/02(木) 09:24:28 ID:yyaUkjry0
>>127-129 ありがとうございます!
とっても便利になりました
勉強させていただきますm(_ _)m
しかしなんのためにこんな仕様にしたんでしょうね?
Googleで検索したときに、右側に出るスポンサーの所を消すようなフィルターはありますか??
>>132 ありがとう。
今とりあえず入れてみたが、悪戦苦闘中。
消えたり消えなかったり・・・。
136 :
131 :2006/03/02(木) 22:19:05 ID:9UMyNe8e0
>>134 情報ありがとう!
早速入れてみたらバッチリ期待どうりのできでした!
今までの苦労がやっと報われました。
以前アスキーアートならフォントを変更するフィルタを注文した者ですが なんとか出来たので載せてみます Name = "2ch ASCII ART" Active = TRUE URL = "[^.]+.(2ch.net|bbspink.com)" Bounds = "<dd>*<br><br>*(<dt>|</dl>)" Limit = 5000 Match = "<dd>\0([%81][%C8][%81][%51]|\&\#960?|" "[%84][%A8][%84][%A8]|[%3B][%2C]|[%27][%22]|[%83][%A9][%81][%51]|" "\ \ \ |[%81][%4A][%81][%4A][%81][%4A]|" "[%3F][%3F][%3F][%3F]|[%81][%BE][%20][%81][%BE]|" "[%DF][%81][%CD][%DF]|[%84][%44][%DF]|[%81][%5B][%DF]|" "[%81][%A1][%81][%A1]|[%7C][%81][%51]|[%84][%76]|" "[%9C][%63]|[%81][%61]|[%81][%65][%84][%74]|[%81][%E6]|" "[%81][%C8][%5F]|[%93][%F1][%93][%F1]|[%27][%27][%27]|[%98][%B8]|" "[%81][%C8][%81][%51][%81][%C8]|[%A5][%83][%D6][%A5]|[%7E][%29]|" "[%81][%5E][%7C][%81][%5E]|[%81][%51][%5F]|" "[%3B][%3B][%3B]|[%7C][%7C][%7C]|[%3A][%3A]|" "[%3B][%2E][%3B][%2E][%3B][%2E]|[%D0][%D0][%D0]|" "[%6C][%6C][%6C]|[%81][%5F][%81][%5F][%81][%5F]|" "[%7C][%81][%5F][%7C][%81][%5F]|[%2C][%2C][%2E][%2C][%2C][%2E]|" "[%9C][%63][%D0][%9C][%63]|[%81][%E6][%81][%88]|" "[%7C][%81][%50][%7C][%81][%50][%7C]|[%CD][%CD][%CD]|[%B4][%81][%CD][%81][%4D]|" "[%B4][%5F][%3E][%81][%4D]|[%3B][%3A][%3B]|[%28][%DF][%29]|" "[%81][%DF][%81][%DF][%81][%DF]|[%81][%45][%81][%CD][%81][%45]|" "[%81][%4B][%81][%45]|[%81][%88][%81][%45]|[%B4][%A5]|" "[%28][%60][%84][%44][%B4][%29]|[%81][%A0][%81][%A0][%81][%A0]" ") \1\2<br>\s(<dt>|</dl>)\3" Replace = "<dd><font face="MS UI Gothic" size="1" color="#e8e6d2">\0\1\2</font>" "<br>\3"
あれ? Bounds = ”<dd>*<br><br>*(<dt>|</dl>)” です
不完全で選び方もいいかげんなリストですが、対応表を載せておきます。 -‐[%2D][%81][%5D]|\&\#960?|∧_[%81][%C8][%81][%51]|Λ_[%83][%A9][%81][%51]| '"[%27][%22]|;,[%3B][%2C]|┴┴[%84][%A8][%84][%A8]| ゛゛゛[%81][%4A][%81][%4A][%81][%4A]| | ∪ ∪[%81][%BE][%20][%81][%BE]|????[%3F][%3F][%3F][%3F]| ー゚[%81][%5B][%DF]|Д゚[%84][%44][%DF]|゚∀゚[%DF][%81][%CD][%DF]|ё[%84][%76]| |_[%7C][%81][%51]|■■[%81][%A1][%81][%A1]|∵[%81][%E6]|‘д[%81][%65][%84][%74]| ‖[%81][%61]|彡[%9C][%63]|从[%98][%B8]|'''[%27][%27][%27]|二二[%93][%F1][%93][%F1]| ∧_[%81][%C8][%5F]|~)[%7E][%29]|・ω・[%A5][%83][%D6][%A5]| ∧_∧[%81][%C8][%81][%51][%81][%C8]|__[%81][%51][%5F]| /|/[%81][%5E][%7C][%81][%5E]|;;;[%3B][%3B][%3B]|\|\|\|[%7C][%7C][%7C]| ::[%3A][%3A]|;.;.;.[%3B][%2E][%3B][%2E][%3B][%2E]|ミミミ[%D0][%D0][%D0]| lll[%6C][%6C][%6C]|\\\[%81][%5F][%81][%5F][%81][%5F]| |\|\[%7C][%81][%5F][%7C][%81][%5F]|,,.,,.[%2C][%2C][%2E][%2C][%2C][%2E]| 彡ミ彡[%9C][%63][%D0][%9C][%63]|∵∴[%81][%E6][%81][%88]| | ̄| ̄|[%7C][%81][%50][%7C][%81][%50][%7C]|ヘヘヘ[%CD][%CD][%CD]| ´∀`[%B4][%81][%CD][%81][%4D]|´_>`[%B4][%5F][%3E][%81][%4D]|;:;[%3B][%3A][%3B]| (゚)[%28][%DF][%29]|≡≡≡[%81][%DF][%81][%DF][%81][%DF]| ・∀・[%81][%45][%81][%CD][%81][%45]|゜・[%81][%4B][%81][%45]| ∴・[%81][%88][%81][%45]|´・[%B4][%A5]|(`Д´)[%28][%60][%84][%44][%B4][%29]| □□□[%81][%A0][%81][%A0][%81][%A0]
そのサイトの中から該当の部分を探せと・・・そこまでさせますか
>>141 つまりそこのサイトに登録すると高機能なRSSリーダーみたいになる訳ですよ。
MY BLOGLINES というページでお気に入りのブログを登録するといちいちそのブログに行かなくても
複数のブログサイトを1ページで見られる。
でも、ヤフーは記事は見えるけど画像は見られない。
該当がどうとかは関係ない。
そういえば、google high light の最新版は文字化けするな。 古いのに戻したいのに見つからないよ。
うちは化けないよ。
opera fox sleip ie この4種全部駄目
その4種がダメなんじゃなくて、自分がダメ。
IEのセキュリティ設定でActivX、java、スクリプトをすべて無効にしたのと同じ効果を 得られるフィルタを作成することは可能なのでしょうか?
タブブラウザ使えよ
>>147 作れないことはないが、大がかりなフィルタになる。
作る手間とメンテを考えたら、タブブラウザでセキュリティ切り替えした方が良いかと。
>>149 だけじゃなんだから、試作品を書いておく。
[Patterns]
Name = "Kill security function test1"
Active = TRUE
URL = "$TYPE(htm)"
Limit = 256
Match = "<applet\s[^>]+>|"
"<script(^[^ >])[^>]+>$SET(#=<script language="Killed">)|"
"<param\s[^>]+>|"
"<object\s[^>]+>|"
"(href|src)\#=$AV(javascript:\0)"
"$SET(#=="Killed_javascript:\0")"
Replace = "\@"
他にも onclick= や transition など、対応しなければならないものがあるはず。
それら全てを調査して対応させるのは現実的ではないと俺は思う。
# $KEYCHK で 有効/無効 を切り替えられれば、面白いフィルタになると思うけど
# ブラウザ作者に同様の機能の要望を出す方がスマートかと。
ヤフー用作ってみた。
トップ画面はYAHOO! JAPAN Ad Killerに任せてあるのでいじってないです。
リストによってヤフー掲載の広告を制限。
Name = "Adjust Yahoo AD-amount"
Active = TRUE
URL = "*.yahoo.co.jp/"
Limit = 10000
Match = "$LST(YahooAD)"
YahooAD.txtをBlockFileに登録。
効かない、誤動作等の検証はログウィンドウの行番号で確認してください。
YahooAD.txtの中身は↓
ttp://venus.aez.jp/uploda/index.php?dlpas_id=22957 test.zip DLパスはad
結局 bloglines は誰も作れないの?
>>153 オクには
<!--\sUHD\s-->*<!--\s/UHD\s-->
<!--\sAD ?\s-->*<!--\s/AD ?\s-->
<!--\sTOPTEXT\s-->*<!--\sTOPTEXT\s-->
<!--\sTW\s-->*<!--\s/TW\s-->
<!--\sPROMO\s-->*<!--\s/PROMO\s-->
<div align=("|)center("|)><table border=? cellpadding=? cellspacing=?>*</td>(\s|)</tr>(\s|)</table>(\s|)</div>
これ等が適用されてるみたいだから頭に#つけてコメント化したり削除したり
してみてください
オクと関係ないけど # PR企画[%B4][%EB][%B2][%E8] (\[PR\]|\[PR[%B4][%EB][%B2][%E8]\])(\s|[%A1][%A1]|)<a href="*">*</a>*/table>*</td></tr></table> これは下に変更 (\[PR\]|\[PR[%B4][%EB][%B2][%E8]\])(\s|[%A1][%A1]|)<a href="*">*</a>
>>152 ヤフーは画像の直リン禁止だから
ヘッダフィルタのReferer: Hide where we've been (Out)を使え。
Yahoo JAPANの広告消し −−−−− URL Killfile.txtに ai.yimg.jp/bdv/yahoo/javascript/ の1行を追加するだけでも相当消える −−−−−
ai.yimg.jp/ のほうがよくね?
写真記事の画像が消えていいならそうだね
gooのブログサーチがえらいことになってるので助けてください
スポンサーやらの広告?かな Name = "for blog.goo's sponser" Active = TRUE URL = "blog.goo.ne.jp/" Limit = 10000 Match = "<!-- ad //-->*<!-- /ad //-->|" "<!--main_sponsor-->*<!--/main_sponsor-->|" "<!--main_sponsor2-->*<!--(/|)main_sponsor2-->|" "<!--sponsor-->*<!--/sponsor-->$STOP()"
Macバイナリから切り出しなんて狂気の沙汰だな
J(*´ω`)し 後幕香奈でーす
>>164 ノノハヽ く 尾尻佳奈でもドゾ
从(`ω´)从
(⊃⌒*⌒⊂)
/__ノψヽ__)
>>159 写真記事の画像はca.c.yimg.jp/だからai.yimg.jp/では消えないよ。
1年以上ai.yimg.jp/でYahooの広告消してるけど誤爆したことない。
>>167 リストに広告URLを1つずつ登録すれば消せるけど
そのサイトのためだけに、リストを使うのも勿体ないので止めた。
スピードテストなんてそうそうしないしね。
www.bspeedtest.jp/image 全部消しちゃえ
>>170 その手があったか。
[Patterns]
Name = "Kill bspeedtest ad"
Active = TRUE
URL = "www.bspeedtest.jp/ $TYPE(htm)"
Limit = 256
Match = "<img\s[^>]++src=$AV((./|)image/ad-?+)[^>]+>"
2ch dat Converterの出力がおかしくなりました スレ番が出なくなったり どなたか改良お願いします
URLもなけりゃ、元のフィルタも書いてない どうやって改良しますか? ↓
174 :
172 :2006/03/11(土) 06:13:49 ID:Tpr1Izsu0
アダルトサイト遮断フィルタ作ってください
>>172 それをうpしたのは俺だけど。
使ってる人いたのか。
もう古くなっちゃった気がしたので最近消したのだが。
でも、見たとこ問題なさそうだけど?とりあえずURL書いてみてくれ。
実はスクリプト利いてなかったとか言うオチじゃないだろうね。(レスはスクリプトで数えてる
datがファイルのダウンロードになっとるのは、
Content-Typeを書き換えるヘッダフィルタ入れてからブラウザのキャッシュ削除でいける(はず)。
>>177 作者さん
レスありがとうございます。
「問題なさそう」はその通りでした
まったくもって・・・スマソです o(_ _*)o
diffでオリジナルと比較してみたところ私のにはゴミが…
それでオリジナルを効かせて現在の板を総当りしてみたところ
bbspink.comな板のみフィルタの効きが半端なようです
例えば
ttp://pie.bbspink.com/eromog2/dat/1141627176.dat ソースをみると他の板ではレス番1では
<dt><a name="1">
となるのに
<dt><script>counter++; document.write('<a name="'+counter+'"></a>'+counter)</script>
こうなってるようです
180 :
177 :2006/03/14(火) 00:12:10 ID:ZoyF7CPV0
>>179 ワシは改変者であるため、本家作者のほうにも感謝をば。
>bbspink.comな板のみフィルタの効きが半端
2ch.netの方しか使ってないから、そっちは無調整だった。
どうやら$URLの問題のようだ。
「read.cgiに移動」の実装がまずかったらしい。
取り合えず直したので、再うpしておく。
bbspink.comな板での効きはそっちで確認してくれ。
こっちは詳しくまで調べられん。
>>180 ありがとうございました
リダイレクトヘッダフィルタ等うれしいおまけもあって
感謝倍増です
それと本家作者のほうも
ありがとうございました
182 :
177 :2006/03/14(火) 21:48:05 ID:Q5M+RanX0
>>181 それも完全な創作じゃない。
どこにあったか覚えてないが。
>>183 これでOK
[HTTP headers]
In = FALSE
Out = TRUE
Key = "URL: rd.rakuten Automatic Jumper fixed (out)"
Match = "
http://rd.rakuten.co.jp/*/\?R2= ([^&]+)\0"
Replace = "$JUMP($UESC(\0))"
185 :
名無しさん@お腹いっぱい。 :2006/03/16(木) 21:02:42 ID:VNixiyGP0
[Patterns] Name = "Google AD Killer ( 2005_09_10 )" Active = TRUE URL = "( www[0-9]+.google.(com|co.jp) | [#0:255].[#0:255].[#0:255].[#0:255] ) /search\?(|*\&)q=(^cache:)" Limit = 2048 Match = "(<div class=ch\s" "|<table cellspacing=0 cellpadding=0 width=25% align=right" ")\0$SET(\1= style="display:none" )" "|(<br clear=all>)\0<table border=0 cellpadding=9>*</table>(<br>)+" "|(<br clear=all>)\0<br><center><font size=-1><font color=red>Free!*</center>(<br>)+" "|<table cellpadding=0 cellspacing=0 border=0> <tr><td valign=bottom height=30>*</table>" Replace = "\0\1"
186 :
183 :2006/03/16(木) 21:15:31 ID:gOH+KJ3p0
レスありがとうございます
回答くださったせいで原因がわかりました
他の自作の汎用urlジャンプフィルタと競合していたせいでした(恥
>>184 のほうがスマートなのでこれを使わせていただきます(._.)
て
188 :
名無しさん@お腹いっぱい。 :2006/03/20(月) 20:54:36 ID:LmwUWQxW0
Proxomitronでケータイサイトを閲覧できるそうですが そげなフィルタありませんか?
(・∀・)釣られましたね
YAHOOのトップページがまた変わってしまい 既存のフィルタが効かなくなりましたので 対応版ぷり〜ずです・・
192 :
名無しさん@お腹いっぱい。 :2006/03/21(火) 11:29:30 ID:SC1Sj6TJ0
なんにもしてないのにProxomitronが 認証の証明エラーとかってのを出すようになってしまいました。 ログをみると全く覚えのないURLがどんどん流れてって アクティブな接続が10とか20とかになってる… 「こりゃぁ絶対ウィルスだ!情報流出だ!」 って大パニック!!! でも何時間もかけてウィルスやスパイウェアチェックしても それらしいのが出ない… しょーがないからパケット監視ソフト導入。 みてみるとProxomitronだけが必死に動いてる… そーいえば… これってプロキシサーバだったんだね。 ただのフィルターソフトだと思い込んでて忘れてた… 今まで何年も同じ設定でやってたのになんで今になって… と思ったら公開串サイトにうちのIPさらされてました!アハッ!
それって、二重三重にずさんじゃないと実現できないね。
手の込んだわりには面白くない釣りだね。
Koukoku Eraser 1.01の↓でやふー記事が左半分に偏って崩れるので
修正お願いします。
Name = "Yahoo AD Killer"
Active = TRUE
URL = "(^search)[^/]++.yahoo.co.jp/"
Limit = 5000
Match = "$NEST(<!--(-|) (AdSpace|YBB( module|_UnderBanner)),<!--(-|) /(AdSpace|YBB( module|_UnderBanner)) [a-z]+ (-|)-->)|"
"$NEST(<div align=center>,</div>) <img src="
http://ai.yimg.jp/images/clear.gif " width=1 height=6 border=0><br>|"
"$NEST(<table\s[^>]+><tr(\s[^>]+|)><td\s[^>]+><[^>]+><b>[%C3][%ED][%CC][%DC][%A4][%CE][%BE][%F0][%CA][%F3]</b>,"
"(</div><br></td></tr>|</NOSCRIPT> </table></td></tr>)</table>)|"
"$NEST(<a\s([^>]+|)href=$AV(
http://ard.yahoo.co.jp/M=* ),</a>)|"
"$NEST(<script,*://ard.yahoo.co.jp/M=*,</script>)|"
"$NEST(<img\s([^>]+|)src=$AV(
http://ard.yahoo.co.jp/M=* ),>)"
>>196 それ作成した人は更新する予定はあるのかなぁ…。
ずいぶんと更新停止しているようだし、他のフィルタに乗り換えるのが賢明だと思う。
ちょっと見た限りでも修正すべき点がいくつかあるし。
× <!--(-|)
○ <!-+ or <!-+{2,*}
× $NEST(<a\s([^>]+|)href=$AV(
http://ard.yahoo.co.jp/M=* ),</a>)|
○ $NEST(<a\s[^>]++href=$AV(
http://ard.yahoo.co.jp/M=* ),</a>)|
最後に、ard.yahoo.co.jp/ ai.yimg.jp/ はリスト型の広告削除フィルタに入れた方が汎用性が高い。
作者自らが出てきて修正してくれるのが一番スマートなんだろうけどね。
Koukoku Eraserの作者です。
長いこと更新サボってて申し訳ない。
http://wind.prohosting.com/proxmine/cgi-bin/uploader/download.cgi?PmU_0380.zip Koukoku Eraser 1.01 から Koukoku Eraser 1.02 への変更点
・ Yahoo Search AD KillerをJWORD広告の部分にもマッチするように修正。
・ Yahoo Search AD Killerで$NESTのかわりに$INESTを使って高速化。
・ Yahoo AD Killerを修正。
・ infoseek isweb AD KillerのLimitを2500に増やした
・ infoseek AD Killerを強化&修正。
・ Keyword list.txtの内容をURL Killfile.txtに統合。
・ URL Killfile.txtの更新。
・ Banner Blaster <a>で誤爆しそうなマッチングにだけ
代替えテキストとして[AD]を挿入。
・ ZAKZAK AD Killer・SANSPO.COM AD Killer・nikkansports.com AD Killerを追加。
>>197 <!-+ or <!-+{2,*}より<!--(-|)の方がマッチングが
わずかに早いようなのでこれはこのままにします。
([^>]+|)は修正しました。普通の正規表現と混同してました^^;
200 :
196 :2006/03/25(土) 11:45:49 ID:kU/9H14r0
>>198 今度時間ある時入れ替えます。
, - ,----、
(U( ) <ありがとうございました。
| |∨T∨
(__)_)
いただき⌒`) ズザー `)-=≡≡ニ二三⊂⌒~⊃。Д。)⊃
>>198 「代替え」は「代替(だいたい)」の間違いじゃないかと思った。
いや、俺も昔模試でな…
ともかく更新乙
おんり〜ゆ〜
見よう見まねでフィルター書いてみたんだけど効かない。
誰か書いてくれない?
https://www.gyao.jp/cinema/ ↑ ここの動画再生ウインドウを消したい。
Name = "Kill GyaO Player"
Active = TRUE
URL = "www.gyao.jp/"
Limit = 1200
Match = "<!-- player o-->*<!-- player o-->"
Replace = "<!-- (^ー^) -->"
↑ 全然駄目なフィルター ><
WinnyでMP3ファイルを手に入れたのだが、10曲が1つのMP3ファイルになっている、 これを1曲ずつ10個のMP3ファイルに分けたいのだがどうしたらいいのかね?
つFlash Animation Opener (2003/12/09)"
>>208 SoundEngine Free は必要なdllがあればMP3の入出力に対応してるので、
1ファイル、10曲分読み込んで、一曲分づつ分けて保存。
もちろんMP3で書き出せる。
無音部分で自動分割するソフトもあるけど、分割ミスでムキーってなる。
…けど誤爆じゃ?
マルチ荒らし
IDがnyだ・・・
尿じゃないの?w
如意棒
216 :
207 :2006/03/26(日) 22:58:03 ID:upM090wq0
誰か教えてくれん?
>>207 ,216
OpenSSL使用のチェックはONにしてる?
218 :
207 :2006/03/27(月) 00:12:31 ID:kqhNRjk20
>>217 安全なページ(secure https 接続)のフィルタに SSLeay/OpenSSL を使用
のところですか?
チェックは入っています。
あぁ、win9x系で表示出来ないという不具合なら既に出てますね。
224 :
223 :2006/03/27(月) 21:50:58 ID:UQRWZ0u70
すみません、アンカーを二重に付けてしまいました。
その問題もありそうです。 さらに2bitカラーのアイコンをそれ以上の色数の アイコンに置換してしまったようです。 申し訳ない。
227 :
223 :2006/03/28(火) 00:50:09 ID:bUQZSMR70
>>225 レスどうもです。
その辺りもみていじってみます。
[Patterns] Name = "BlogLines x2F Changer" Active = TRUE URL = "www.bloglines.com" Limit = 256 Match = "x2F" Replace = "/ " ログイン出来ないため適当。
>>229 ごめん、間違ってた。
\xF2 が /
なんだけど
[Patterns]
Name = "BlogLines x2F Changer"
Active = TRUE
URL = "www.bloglines.com"
Limit = 256
Match = "\\x2F"
Replace = "/ "
としてもだめなんだよね。
231 :
名無しさん@お腹いっぱい。 :2006/03/30(木) 19:10:15 ID:DTBP7IIc0
あげわすれ
もし
>>230 が動くなら
>>229 の時点で動いてるはずだよね。
見れないページのフィルタは書きようが無いのでパス。
>>228 前にも言ったと思うがyahooは画像の直リン禁止だよ。
だからこれを使え。
[HTTP headers]
In = FALSE
Out = TRUE
Key = "Referer: yahoo (Out)"
URL = "[/]++.yahoo.co.jp/"
Replace = "\u"
つーか、見られないページや、 そのページに辿り着くまで何回もクリックしなきゃいけないようなのは 作成依頼として不十分でしょ・・・ 感覚的には223のフィルタで出来そうな気がする
235 :
名無しさん@お腹いっぱい。 :2006/03/32(土) 12:05:54 ID:IGzlM3u50
YAHOO! JAPAN Ad Killer 2005-4-9が効かなくなた 修正ヨロシコ
236 :
bloglines :2006/03/32(土) 12:30:07 ID:Wk87CELS0
ごめんなさい。 私の頭の悪さで皆さんにご迷惑をかけました。 てっきり文字コードかと思っていたのですが、全然違いました。 不思議なのが、いったんページを保存してそのローカルファイルを開くと画像が表示されるんです。 bloglinesにオンラインだと駄目だけど、保存すると画像が表示されるってどうして? passとIDを公開したら誰か挑戦してくれる?
GYAOのクリック禁止,onkey禁止を解除、右側の広告カット、コンテキストメニュー
ダブルクリックで全画面表示、NEXTボタン(次のトラック)を有効に。
というフィルタを作っていますが、最後のNEXTがどうしてもできません
途中までを次レスに晒しますのでどなたか見てください。お願いします。
ttp://www.gyao.jp/cinema/ >>236 良くわからなけど、まずWEBフィルタかヘッダフィルタかを
Proxomitronのチェックを外したりして最初に確かめてWEBフィルタだったらdbugコマンドとか
ヘッダは なんかあったな...ログで見れるコマンドがw
ヘッダだったらリファラあたりを疑ってみたら?
Referer: Hide where we've been (Out)を使ってるならチェックを外すとかして
/3d/ref/1143892015636.html を /3d/src/1143892015636.jpg にするにはどうすればよろしいのでしょうか?
Name = "gyao movie's utility" Active = TRUE URL = "www.gyao.jp/" Limit = 256 Match = "(<script type="text/javascript" for="player" event="Click\(\)">*</script>$SET(8=))|" "(function onKeyDown\(\) $SET(8=))|" "(rtsp://wms.cd.gyao.jp/gyaocm*/cm_license*.wmv $SET(8=))|" "(JumpUrl = "http(s|)://*" $SET(8=))|" "(gotoCampaign\(\)$SET(8=))|" "(<param name="enableContextMenu" value="false"> $SET(8= <param name="enableContextMenu" value="true">))|" "(if \(player.controls.isAvailable\("Next"\)\) {\s" "changeNextPos\(1\);\s" "} else {\s" "changeNextPos\(0\);\s" "} " "$SET(8=if (player.controls.isAvailable("Next")) {" "changeNextPos(1);" "} else {" "changeNextPos(1);" "player.controls.isAvailable("Next")=1; " "}))" Replace = "\8"
>>238 match
/3d/ref/\0.html
replace
/3d/src/\0.jpg
>>236 yahooブログはrefererが([^/]++.|)yahoo.co.jp/の場合か空っぽの場合のみ
画像を表示するようになってます。
ローカルファイルからのアクセスやアドレスバーにURLを直打ちした場合は
refererが空っぽになるので画像が表示されます。
ちなみに、今調べなおしてみたらrefererで弾いてるのはyahooブログだけで
それ以外のyahooのサイトは画像直リン禁止ではないみたいです。
243 :
bloglines :2006/04/02(日) 22:38:11 ID:i57FuBbJ0
http://proxomode.yu.to/にある連邦 (
http://www.renpou.com/ )のゲットニュース用のフィルタなんだけど、
ゲットニュースがちょっと変わったようで自分で書き直したら非常に遅くなった。どうすれば速くできる?
↓がオリジナルで、
Name = "renpou stupid news filter (HOST)"
Active = TRUE
URL = "www.renpou.com"
Bounds = "(\■|\☆)<a href[^>]+>*[^<]+</a>\s<small[^>]+>[^<]+</small>"
Limit = 8192
Match = "(\■|\☆)<a href[^>]+><font color=[^>]+>[^<]+</font>[^<]+</a>\s<small[^>]+>[^<]+</small>"
↓こうした
Bounds = "(\■|<font color=[^>]+>\☆</font>)<a href[^>]+>*[^<]+</a>\s<font color=[^>]+><small[^>]+>[^<]+</small></font>"
Limit = 8192
Match = "(\■|<font color=[^>]+>\☆</font>)<a href[^>]+><font color=[^>]+>[^<]+</font>[^<]+</a>\s<font color=[^>]+><small[^>]+>[^<]+</small></font>"
んで↓が今のマッチさせたいHTMLのサンプル(こういうのがずらずら並んでる)
<font color="" size="-1">☆</font><a href="
http://example.com/ " title=""><font color="" size="-1">あ</font></a> <font color="" size="-1"><small>(あ 04/02 20:05)</small></font>
■<a href="
http://example.com/ " title="example">い</a> <small>(い 04/02 19:39)</small>
ちなみに以前は↓だった。↑は☆付きのだけ変わったみたい。
☆<a href="
http://example.com/ " title="example"><font color="#8888ff">う</font></a> <small>(う 03/07 21:33)</small>
■<a href="
http://example.com/ " title="example">え</a> <small>(え 03/07 21:21)</small>
>>244 <start>そのフィルタ良く知らないから検討違いだったら謝る
何故limitをそんなに大きくとってるのか
且つmatch欄とあまり変わらないようなboundが必要なのか
なにか意味があるとしたら全然参考にならないけど
ベタでmatchさせると
Match = "<font color="#888888" size="-1">☆</font><a href="
http://* " title="*"><font color="#aaaaff" size="-1">*</font></a> <font color="#888888" size="-1"><small>*</small></font>"
こんなんだけどこれと
>>244 の新フィルタを比較すると
ベタ 平均時間 : 0.010000 (ミリ秒)
新 平均時間 : 0.291000 (ミリ秒)
新からboundを取った場合
平均時間 : 0.020000 (ミリ秒)
あ、CMが飛ばせないって事みたいね。 それはもともと動画にそういう属性がついているから無理かと。
>>244 初めに聞いておきたいのですが、「ゲットニュースを消す」というフィルタで合ってますね?
一番手っ取り早いのは、ゲットニュースのフレームを消してしまうことです。
[Patterns]
Name = "Renpou Kill getnews frame"
Active = TRUE
URL = "www.renpou.com/topindex.html(^?)"
Limit = 128
Match = "<frameset\s[^>]+>$SET(0=<frameset>)|"
"<frame\s[^>]++src=$AV(/getnews/indexr.html)[^>]+>$STOP()"
Replace = "\0"
フレームを消したくない理由があるのなら、こんなところでしょうか。
[Patterns]
Name = "renpou stupid news filter (HOST) rebuild1"
Active = TRUE
URL = "www.renpou.com/getnews/"
Limit = 512
Match = "(<font\s[^>]+>|)[%81]([%99]|[%A1])(</font>|)$NEST(<a\shref=,</a>)"
" ($NEST(<small>,</small>)|$NEST(<font\s,</font>))"
Bounds は速度低下の要因の1つ。
一般的に $NEST はワイルドカードで消費するよりも、高速です。
■☆はパーセントエンコードすると、先頭の1バイトが共通になるので若干の高速化を期待できます。
# 高速化は試行錯誤の結果出来上がるものなので、一朝一夕に出来るものではないですよ。
# 必要な1つのソースを抽出して「テスト」するのではなく、
# ページの全てのソースをコピペして「テスト」しないと意味がないです。
# 全体的な速度と一回のマッチにかかる速度は同一ではありませんから。
253 :
244 :2006/04/04(火) 02:07:07 ID:lbplhRjI0
ゲットニュースを消したい訳じゃなくて、そこの投稿のうち、☆マーク付きと 文字の色が違う投稿を消す、ってフィルタです。 で、自分で書き直したやつのBoundsを消して、 Limitも確かに多いようなので512にしたら多少速くなった。 とりあえずこれでいいかなぁ…
うざ
>>255 これで如何?
[Patterns]
Name = "Kill connection after google form"
Active = TRUE
URL = "$TYPE(htm) www.google.co.jp/(^?)"
Limit = 2048
Match = "($NEST(<form\s[^>]++action=$AV(/search),</form>))\0$STOP()"
Replace = "\0\k</body></html>"
>>256 キタ━━━(゚∀゚)━━━ !!!!!
遅れてスマソ。
求めていたとおりです。感謝。
GyAOでCMでも早送りができるようにするフィルタを作っていただけませんか。
↑コピペみたいな形式になってしまいましたがれっきとした発言です。よろしくお願いします。
右クリック禁止されてる?
>>261 あ、すいません。
地図画像の右クリック禁止を解除したいということです。
>>259-260 ,262
私はJavaScriptを得意としませんが、調べたら該当文献が見つかりましたよ。
「KIの実用 JavaScript」に載ってます。
[Patterns]
Name = "Kill oncontextmenu"
Active = TRUE
URL = "$TYPE(js)"
Limit = 256
Match = "a.oncontextmenu=function\(\){return\sfalse};"
>>263 どうも。"a.oncontextmenu=・・・・・・・・・・・"のようなコードは自分が貼ったページには含まれてないようです。
JaveScriptが関係してると思うんだけど、IEのインターネットオプションで無効にすると地図の表示自体がされなくなってしまうんだよね。
>>264 そのページに含まれてないなら、
<SCRIPT TYPE="text/javascript" SRC="/pcstorage/lib/〜.js"></SCRIPT>
で読み込まれてるいくつかの外部スクリプトファイルのどれかに書いてあると思われ。
266 :
263 :2006/04/09(日) 15:45:59 ID:4RoT1M300
>>264 本当に試してみました?
>263のフィルタを使えば、ImageRaster.js にマッチすることが容易に分かるはずなのですが…。
実際に、IEで「右クリック抑制」を解除できることも確認しています。
> 自分が貼ったページには含まれてないようです。
当該JavaScriptは外部ファイルにあります。
もう少し、勉強してください。
<script> - スクリプト
http://www.tohoho-web.com/html/script.htm # "oncontextmenu" でGoogle検索すれば、更に詳しい資料が得られます。
>>266 ごめんなさい! 試さずに失礼なこと書いてしまいました。
これからやってみますので!
>>266 できました!ありがとう!勉強してきます(´_`;)
>>268 ここの質問者はバカばっかだからいつものことだ、あまり気にするなよ。
( ´・ω・`)
>>271 参照文字使ってるだけだよ。
’ とかをマッチさせて置換しれ。
とオモタらコピーするときにブラウザが勝手に参照文字に直してただけだった。 ナナメのは2種類あって [%92] と [%27] をそれぞれ ' に置換するフィルタだお。 Active = TRUE URL = "www.lyricsdownload.com/amiel-all-of-me-lyrics.html" Limit = 20 Match = "[%92]|[%27]" Replace = "'" 何故92と27なのかは $ESC コマンドを使うと分かる。 That I と m の間の文字列を [%〜] の形で出力するフィルタ。 Active = TRUE URL = "www.lyricsdownload.com/amiel-all-of-me-lyrics.html" Limit = 20 Match = "That I\0m" Replace = "$ALERT($ESC(\0))" これ入れて上のページを読み込んでみそ。 ナナメ ' の部分が [%〜] で表示される。
>>272 即レス感謝です。
実体参照、文字参照(10と16)を全部ぶちこんでみましたが、
どうもうまくいきませんでした。8217 (&rsquo;) じゃなくて 8242(&prime;)かもしれないと思って
そっちでもやってみたけどやっぱりうまくいかなかった。
使ってるブラウザ(Opera、日本語フォントの扱いが下手)とソースビューワー(K2E)が悪いせいなのかなぁ
なんの文字が悪いのか特定できない……
と、ここまで書いたところで、こんなもんを見つけました。もうちょっと粘ってみます
ttp://www.shtml.jp/mojibake/english.html
>>273 とオモタら!!それでうまくいきますた。&ESCコマンドはこういうときに使うのか、
勉強になりました。MUCHAS GRACIAS!
Youtube - Add link to download
http://d.hatena.ne.jp/smoking186/20060113/1137126608 上のフィルタの補助的フィルタ。 ファイル名に拡張子 .flv を自動で追加する。
ブラウザによってはこのフィルタ無しでも自動で追加してくれるから不要かも。
[HTTP headers]
In = TRUE
Out = FALSE
Key = "Location: YouTube Add ".flv" Part1 [060410] (In)"
Match = "(
http:// (^www.)[^/]++.youtube.com/get_video)\1(\?*)\2"
Replace = "\1.flv\2\&proxo_flv"
[HTTP headers]
In = FALSE
Out = TRUE
Key = "URL: YouTube Add ".flv" Part2 [060410] (Out)"
Match = "(
http:// (^www.)[^/]++.youtube.com/*)\1.flv(\?*)\2\&proxo_flv(^?)"
Replace = "$RDIR(\1\2)"
>>274 [%92] の1バイトだけにマッチさせてフィルタリングすると日本語ページで誤爆しちゃうんですね。
しかしブラウザのソース表示やテキストエディタ上で勝手に違う文字に置換されるってのは困りものだ。
ページを保存してバイナリエディタで覗いてみたらブラウザが保存時に勝手に参照文字に変換してた。-_-;
>>276 > [%92] の1バイトだけにマッチさせてフィルタリングすると日本語ページで誤爆しちゃうんですね。
そうですね。
この場合は [%00-%7F][%92] とすれば、誤爆を回避できると思います。
ただし、速度面では不利なので、これを汎用型フィルタとするのはお勧めしませんが…。
個人的には、$KEYCHK でサイトを選んで有効にするのがお勧めです。
> しかしブラウザのソース表示やテキストエディタ上で勝手に違う文字に置換されるってのは困りものだ。
ブラウザの [ソースの表示] → テキストエディタの [名前を付けて保存]
で、大体OKだと思いますが、稀に完全なソースを表示してくれない事もあります。
そういうときには、URLコマンド(bypass..src..)を使えば、Proxomitronで認識できる範囲でソースを表示してくれます。
あとは [Ctrl+A] キーからコピペすれば良いかと。
In = TRUE
Out = FALSE
Key = "Content-Type: add charset to meta (in)"
Match = "text/html;\2 charset=\1"
Replace = "text/html;\2 charset=\1 $SET(CHRSET=<META http-equiv="Content-Type" content="text/html; charset=\1">)"
Name = "add charset to meta"
Active = TRUE
Multi = TRUE
Limit = 10
Match = "<HEAD>"
Replace = "<HEAD>"
"$GET(CHRSET)"
>>274 を見てmetaにcharsetを付加するフィルタを作ってみた
しかし
>>271 のサイトはContent-Typeからiso-8859-1を消してる?
それに良く考えるとmetaにcharsetを記述してないのがダメと言うよりも
ヘッダに記述してないのが問題だと...(悟
意味なしフィルタだけどとりあえず作ったのでうp
>>258 いぢくったけどダメだった いつかできたら
ん? 私のは効いてるらしいよ p.s. substr(0,0)+の問題点については識者に譲る
281 :
276 :2006/04/10(月) 23:28:21 ID:kVPgeFjI0
>>277 1つ教えてもらってもいいですか?
[%00-%7F][%92] で誤爆を回避出来るのは何故?
知 = [%92]m ということなので [%92] の前が [%00-%7F] かどうかが関係する理由がよく分からないです。
>ブラウザの [ソースの表示] → テキストエディタの [名前を付けて保存]
メモ張だとうまくいくのかな? K2Eなどでは読み込み時に内部的に置換してしまうのかも。
内部的にshift_jis等に置換してからでないと処理出来ないエディタって結構ありますよね。
これからはこういう場合にはオーソドックスにIE+メモ張のくみ合わせを使うことにします。
282 :
279 :2006/04/11(火) 00:04:45 ID:4RGlijyt0
>>280 すいません。できました。
どうやらブラウザのキャッシュが悪さをしてたようで
キャッシュを削除したらちゃんと動きました。
283 :
277 :2006/04/11(火) 19:38:51 ID:FmCyZtRr0
>>281 > 知 = [%92]m ということなので [%92] の前が [%00-%7F] かどうかが関係する理由がよく分からないです。
確かに「知」は回避できないですね…。
[%00-%7F][%92] で回避できるのは 崇 = [%90][%92] のようなケースで
2バイト目の [%92] にマッチするのを防ぐという意味です。
(大方の日本語の文字コードは [%00-%7F] は制御コードとASCII文字なので、前の文字を見れば回避できるという寸法です)
1バイト目の [%92] のマッチは別の方法で防ぐ必要があるので、>277は不完全でした(すみません)
そもそも、別の文字コードの文字にマッチしてしまうのが問題なので
文字コードを判定するロジックを入れて、iso-8859-1 以外の文字コードであれば
フィルタをストップしてしまうのが一番スマートな方法だと思います。
とりあえず、日本語(2バイト文字)の文字コードチェックで撥ねれば問題ないかと。
アプロダの「Replace character: 2byte -> 1byte」にある
「Charset: Set global variable」で日本語の文字コードをチェックできます。
# iso-8859-1 を正確に判定するのが一番なのでしょうが、今は良い手法を思いつかないです。
> 内部的にshift_jis等に置換してからでないと処理出来ないエディタって結構ありますよね。
その場合は、ダウンローダを使うのが確実だと思います。
# もっとも、本格的にテストをするなら iso-8859-1 の文字を入力できる環境が必要ですが…。
# 誤爆回避はあらゆるパターンを想定しなければならないので、
# 意図的に誤爆しやすい状況を作らないと検証が難しいです。
284 :
276 :2006/04/12(水) 03:05:33 ID:Nbns6c8M0
>>283 どうもありがとうございます。
なるほど、2バイト目の対策でしたか。
> 知 = [%92]m
これは2バイト目もアスキー文字内の文字なので判別が難しそうですね。
おっしゃるようにページのエンコードをチェックしたほうがスマートでしょうね。
>ダウンローダ
そうですね、初めからバイナリデータとしてダウンロードすれば良かったんですね、気付きませんでした。
英単語を、goo辞書で調べて、発音もチェックするんだけど、 音声再生に、いちいちwmpとかが立ち上がってウザイ。 ページに組み込まれたwmpとか、 最近BLOGでも見かけるFLASHとかで 再生できるようにするフィルタなんか作ってチョ。
>>285 Name = "Embed pronunciation player (2006-03-12; )"
Active = TRUE
URL = "$TYPE(htm)(dic.yahoo.co.jp/bin/dsearch\?|dictionary.goo.ne.jp/search.php\?|www.excite.co.jp/dictionary/english_japanese/\?|ask.jp/dictionary.asp\?)"
Limit = 500
Match = "(<a\shref=$AV(*.wav))\0>"
Replace = "<span></span>\0 onclick='var o=document.createElement("embed");"
"o.width=280;o.height=26;o.showtracker=0;o.src=this.href;"
"previousSibling.appendChild(o);this.onclick=null;return false;'>"
良スレすぎてビックル飲んじゃうんだけど、みなさん正規表現とかHTMLとか どうやって身につけはったんですか?自分もフィルタ作れるようになりたい。 でもちょこっと改変するのがせいぜいでorz
小さいきっこさんに聞いてください
すみませんちょっと質問です。 ブラウザがHTMLソースを読み込んでから インクルードしたJavaScriptが展開されるんじゃなくて、 そもそも展開されたHTMLソースをブラウザに渡すことってできますか?
オミトロンでページにjsを埋め込めば? んでインクルード記述を削除。
あるHTMLがあって、jsをインクルードしてるんですが、 HTMLが変わるたびにjsも変わるんです。 なので、HTMLを読み込むタイミングでjsを展開してブラウザに渡したいんです。
292 :
285 :2006/04/12(水) 12:59:08 ID:HFWrNQ8/0
>>291 どのページをどういじりたいのか具体的に書いてもらわないとどうにも・・。
できないのかな?マニュアルよんでるけどわかんない・・・
オミトロンには別のページからソースを取得する手段がないからちょっと無理だね。 ただし連続アクセス規制を回避したいとか、そういうことが最終的な目的なら別の方法で対応出来るかも。
>オミトロンには別のページからソースを取得する手段がないからちょっと無理だね。 なるほど。できないのか・・・ >ただし連続アクセス規制を回避したいとか、そういうことが最終的な目的なら別の方法で対応出来るかも。 その通りですw考えてみます。どうもです。
それならオミトロン使って串切りかえるとかいくらでも方法があると思う。 てか最初からそう言ってれば今頃解決してるよ、要領悪いね。
>287 Wikiと和訳ヘルプを基本に、後は独学です。 他人のフィルタを見るより、自作のフィルタを作成しながら覚えたところが大きいかな。 特に、細かな仕様や制限はWikiにも載ってないので、自分で検証するしかないです。 htmlは「とほほのWWW入門」とか「HTMLクイックリファレンス」とか。
>>300 ただのテキストファイルじゃねーかあほ。
低スペックなだけだな
ああ、ブラウザのCPU使用率は10%前後で推移してた。
305 :
名無しさん@お腹いっぱい。 :2006/04/14(金) 19:30:51 ID:jrvs3sYC0
google adsenceだけを通すようにするにはどうすれば良いのですか?
306 :
匿名希望 :2006/04/14(金) 21:56:59 ID:H1AwPOfw0
マルチかよ
309 :
匿名希望 :2006/04/14(金) 23:32:27 ID:H1AwPOfw0
お願いします。
プラグインをオフにする
livly.com 関係のフィルタ依頼が多いですね。
>>34-35 ,125,294,306
よほどユーザビリティが低いサイトなんだろうな 見てないけど
>>312 行ってみた
>ニュース 「管理者発行のニュースです」
>2006.4.14
>小学館「ちゅちゅ」で漫画連載開始!
ああ、かなり低いようだ
livly.com をあぼーん登録しといた。
依頼してるの同一人物じゃね?
じゃあ、ここでも誰かが死ぬんだな
もう死にました。スコットが。(ノД`)
Σ(´Д`; )
もうじき2年経つのか・・・
スコットを殺した犯人は‥‥この中にいる!
犯人は 消 え ま し た
ほんま良いものを作ってくれたよ。
ブラウザのURL窓に ↓のようなURLを入力しても
http://ime.nu/pc.2ch.net/test/read.cgi/hard/1004279344/ ime.nuのジャンプページには飛ばずに、直接ime.nuを削除したURLにジャンプする
ようにヘッダーを書き換えたいのですが、うまくできません。
感じとしてはHTTPヘッダのGETやPOSTに含まれるアドレスを置きかえたら
できると思って、テストとして↓のようなヘッダフィルタを書いてみましたが、
www2.wbs.ne.jpにはジャンプせず、期待した動きにはなりませんでした。
In = FALSE
Out = TRUE
Key = "2ch test"
URL = "www2.wbs.ne.jp/~go-to/prx/faq.html"
Match = "www2.wbs.ne.jp/~go-to/prx/faq.html"
Replace = "www2.wbs.ne.jp"
ttp://www2.wbs.ne.jp/~go-to/prx/faq.html のWEBページフィルタのimenuキラーは
期待通りに動くのですが、貧弱なPCでは負荷が気になります。
またヘッダフィルタ用はなぜか動きませんでした。
何かヒントとなる情報はありませんか?
>>326 ありがとうございます。
Keyに"URL:"が必要だったんですね。
ただのタイトルだと感違いしていました。
"URL: ime.nu/ime.st/pinktower.com Automatic Jumper (03/10/19)"も
無事に動きました。
In = FALSE
Out = TRUE
Key = "URL: ime.st Redirector (Out)"
Match = "
http:// (www.ime.st|pinktower\.com)/\1"
Replace = "$JUMP(
http://\1 )"
In = FALSE
Out = TRUE
Key = "URL: ime.st Redirector (Out)"
Match = "
http:// (www.ime.st|ime.st|pinktower\.com)/\1"
Replace = "$JUMP(
http://\1 )"
[HTTP headers]
In = FALSE
Out = TRUE
Key = "URL: bypass URL-Redirector (Out)"
URL = "$LST(Redirector) $JUMP(
http://\1 )"
# Redirector.txt
#
fast.io/\1
ime.nu/\1
([^/]++.|)ime.st/\1
pinktower.com/\1
2ch2.net/imenu/\?
http://\1
こんな事したいんだと思う。 s|/[^/]+$|/|; フィルタの書き方分からんw
>>332 はそんな事してるんだよ。 ヘッダフィルタのマッチ欄は部分一致だからね。
あ、最後の / も \0 に入れるべきだったな。 まー動作は同じだからいっか。
>>331 [HTTP headers]
In = FALSE
Out = TRUE
Key = "Referer: 332 is an idiot (Out)"
Match = "$URL(\0/[^/]+(^?))"
Replace = "\0/"
お、エスパーが来たw
>>333 ああ、そういうことか。 最後のディレクトリを取るって意味だったのか。
ちなみに
>>332 は
>>331 が何を望んでるのか明確に分からんから言葉通りに作ったもの。
>>331 の質問の仕方では俺にはこういう答えしか書けない。
>>335 みたいに憶測で書くと余計に混乱するからね。
いや、俺も憶測なんだよ。 割り込んですまんかった。
混乱させてしまってすいません
>>335 さんのフィルタが自分の望んでいたフィルタでした
本当にありがとうございました
また、自分のために試行錯誤してくださったお二方もありがとうございました
なにこの展開
>>339 そーか、そういうことならこのフィルタを使うといいよ。
>>335 のフィルタは誤爆するから。
[HTTP headers]
In = FALSE
Out = TRUE
Key = "Referer: 335 is an idiot (Out)"
Match = "$URL(\0/[^/]++([?#]|(^?)))"
Replace = "\0/"
>>335 自分がこういうことされたらどう思うのか聞かせてくれ。
> リファラーを指定アドレスやドメインにではなくて って書いてあるじゃん 自分が勘違いしてたのに他の人につっかかるなよ
そこは意味がよく分からなかったからあえてスルーした。
>>332 で問題があれば質問者さんが違うと言うだろうからその時修正すればいいと思ってた。
>>335 みたいに憶測で書くと余計に混乱するからね。
>>335 のフィルタは誤爆するから。
>>335 自分がこういうことされたらどう思うのか聞かせてくれ。
なんかスゲー勢いで怒られてんだけど、
>>335 のフィルターは
そんなにまずかったの?
いや、そこまで問題があるわけじゃないですよ。 動作が分かっていれば素人でも書けるフィルタですし。
「idiot=大ばか者」というわけで心中お察ししますが、お互いに大人げないですよ。 誹謗中傷の類はどちらかが止めないといつまで経っても終息しませんし、 ここは一歩引くのが賢い選択だったのではないかと。 件のフィルタですが、私なら以下のように書きますね。 $URL(([^:]+:/+([^/]+/)+{1,*})\0)
そうですね、失礼しました。
誰?
俺を呼んだのは。
351 :
335 :2006/04/19(水) 00:45:06 ID:DSGRWiqj0 BE:64628055-#
フィルタのタイトルが思い浮かばなかったので 2chのノリで適当にタイトルつけたら誹謗中傷になってしまいました。 今後はこういうことがないように気をつけます。 すみませんでした。
いえ、大人げなかったのは私のほうですから。 本当にすみませんでした。
>>276 のyoutube用のフィルタ仕様変更で使えなくなっているようです
>>353 仕様変更? こちらでは普通に動いてるけど何が変わったの?
>>353 >276のどのフィルタが使えなくなっているかを言った方が良いです。
(どう変わっているかも言うとなお良いです)
hatenaのリンク先と276氏の紹介したフィルタを合わせると3つありますよ。
ダウンロードリンクの追加フィルタなら思い当たる点が1つ。
YouTubeはログインすると、ターゲットのhref属性値が変わると聞きました。
「パソコン遊戯」のフィルタはこれに対応しているようです。
↑ログインによる変化が原因だとしたらね。
ログインしたら
>>276 のリンク先のフィルタは動きませんでした。
パソコン遊戯のフィルタは動きました。 どうやらこれっぽいですね。
ちなみに
>>276 のフィルタ(× リンク先)はどちらのフィルタを使っても動きました。
あと、youtubeのログインは適当なメアド、ID、パスを書いてボタン押すだけでログイン出来ました。 メールが送られてきてそれを見る必要とかはありませんでした。
↑ が反映されてしまったので貼り直し。 [Patterns] Name = "Youtube - Add link to download" Active = TRUE URL = "(www.|)youtube.com/watch\?(|*\&)v=" Limit = 256 Match = "(<a\s[^>]+>Flag\sThis\sVideo</a>)\1$URL(*[?&]v=([^&]+)\0)" Replace = "\1 // <a href="/get_video.php?video_id=\0">Download</a>" あと186氏のフィルタですが、Replace欄の href の後ろの "=" が抜けているようです。
↑ファイル名に 39186 を入れておいて下さいorz
↑フィルタ名ですorz
いったん落ち着こうか
あるURL:hogehogeをhogehoge#1にリダイレクトさせたいんですが URLのマッチングをhogehogeにするとリダイレクト後のURLに対して再度マッチングしてしまい無限ループになります。 こういう場合はどうやって無限ループを回避していますか?
hogehoge/ とかにしたら?
hogehogeをhogehoge(^?)にしたらいいんではなかろうか
>>369 それがベスト電器かな。 (^hogehoge#1)hogehoge って手もある。
数々の神レスありがとうございます。 >367 意味がわかりませんでしたごめんなさい >368 RDIRを使うとブラウザがそれを認識しないのか期待通りの動作をしてくれませんでした。 (#1に飛んでくれない) >369 ヘッダフィルタでは無限ループでしたorz Webページフィルタで動作を試してみるとそっちでは期待通りの動作をしていたのですが。 (hogehoge#1に再マッチングしない)
>370のもやはり>369と同じ具合でした。 ヘッダフィルタでのマッチングの仕方が変わっているんでしょうか…謎は深まるばかり。
# ってそのままの意味だったのか。 テストしてみたけど確かにループしてしまうね。
どうやら ? と # 以降はマッチ欄じゃ無視されるみたいですね。 $URLコマンドとかURL欄でも同じなのかな、ちょっと調べてみます。
>>376 マッチで無視されてるんじゃなくて
そもそもブラウザから#以降が送られてきてないだけだと思われ。
間違えました、 ? は無視されてませんでした。 当たり前ですね。
>>377 普段はそうみたいです。
しかしFirefoxの場合、$JUMP()で # を付けると次のGET時にログウインドウに反映されるみたいです。
GET /#test HTTP/1.1
でも URL: でのマッチング、$URL()、URL欄のすべてで # 以降は認識出来ませんでした。
\a で取得出来ました。
\aからグローバル変数にアンカー部分を取得することは出来ましたが、$JUMPをするかどうかを $TSTで判別する手段が思い当たりません・・。 フィルタ的には素直に$RDIRを使ったほうが利口だと思います。 しかしブラウザ的にはまったく意味が無い。 #1への移動はブラウザ側の処理なのでオミトロンでは手が出せません。 <a name>リンクをjsを使ってクリックしたことにするという方法しか無いのかも知れません。
>>378-380 確かに、ヘッダフィルタで解決するのは難しいようですね。
検索テキストで\aを取得できれば、$TSTで解決しそうですが…。
意味があるとかないとか以前に、requestURI や Location の値は absoluteURI か abs_path だからアンカー識別子は含められないだろ。 なんでページフィルタにしないのさ?
>>381 まったくですね、\aが置換欄でしか使えないのは痛い・・。
規格よりもオレ基準オレ環境を優先するんだったらチラシの裏でやってよー 誰かが真似したら余計なトラブルの種だからさー
>>384 そもそも \a を正確にテストできれば、無限ループしないのですから、
そこは問題の本質ではないと思います。
スタート地点に戻った感じですね。 でも無限ループの回避は漠然とですが比較的簡単に 出来るのではないかという気がします。 本当に出来るかどうかはやってみなければ分かりませんが。
厨な疑問で恐縮ですが、 マッチングリストに ^*.2ch.net と記述した場合と *.2ch.net と記述した場合で、 動作上どんな違いが想定されるのですか?
ええと、 Proxomitronにおけるメタキャラクタ"^"を 「文字列の先頭」と勘違いしていないよね?
暇なんでアンカーの件のフィルタ作ってみるわ。少しまちなー。
再帰的マッチングで無限ループに陥らないようにするには、 リダイレクト時に元のURLにダミーのクエリ文字列(※)を加えて それをリダイレクトしたか/していないかのフラグとする。 (※)1. 得られるリソースに影響を及ぼさない文字列で。 2. 元のURLには存在しない文字列で。 無意味で冗長な文字列を設定しておけば大抵の場合は問題ないと思われ。 (今仮にそれを"dummyquerystring"とする) URL中に"?"がなければ"?dummyquerystring"を、 "?"が既にあれば"&dummyquerystring"を それぞれURL末尾に加え、フラグ判定に利用する。 [HTTP headers] In = FALSE Out = TRUE Key = "URL: Jump to Anchor" URL = "hogehoge" Match = "([^\?]+(^?) $SET(\0=?)) | (*\? & (^*dummyquerystring) $SET(\0=&))" Replace = "$JUMP(\u\0dummyquerystring#1)" "hogehoge"のところは適当に対象URLを入れといてね。動作無保証。
スクリプトちゃう
盛り上がっているのに気づきませんでした。 >391を試してみたところ見事にばっちりできました。 神!(*´Д`)ハァハァ ただ,ちょっと気になるのはhtml以外にもcssとか手当たり次第ヒットするのでサーバに影響しないかということです。 ?以降をサーバは無視するんでしょうか。
> ただ,ちょっと気になるのはhtml以外にもcssとか手当たり次第ヒットするのでサーバに影響しないかということです。
>>391 のURL欄を
URL = "hogehoge $TYPE(htm)"
にしておけば大丈夫だと思う。
Set-cookie: Never accept cookies Disable JavaScript (and meta) cookies この2つだけではクッキーをブロックしきれないサイト(例:ebay.com)があるのだけど、 何を追加すればいいのでしょうか?
Gmailの本文のないように合わせて 広告表示されるのですが これを消すフィルタってないでしょうか?
398 :
387 :2006/04/22(土) 19:17:55 ID:8MefM7SB0
おや、既に解決したようですね。 クエリをフラグとして使うという方法は簡単な解決策ではあるんですが URLが汚れるのが気に入らなかったのでこれを回避する方法を考えていました。 一応回避策は見つかったんですが、解決済みということで今回は封印します。
出さないんならクドクド言ってないで黙ってろよ
その人は自己顕示しか頭にないみたいだから言うだけ無駄
"*.yahoo.co.jp/"なんて1回しか現れないだろう、と楽観的に考えて割り切っちゃえば?
階層数とかギチギチに数えずにさ。
Match = "
http://ca.c.yimg.jp/* ([^/]++.yahoo.co.jp/*)\0"
Replace = "$JUMP(
http://\0 )"
Vectorダウンロードページのバージョンアップ云々を飛ばすように出来ない?
HTTPでダウンロードする
405 :
401 :2006/04/23(日) 06:59:19 ID:U4HBhrMH0
livedoorにしょっちゅう現れる[PR]を消すフィルタってどっかにない?
>>407 作ってみた。あまりtestしてないから怪しいかも。
Name = "livedoor PR cutter"
Active = TRUE
URL = "([^/]++.|)livedoor.com"
Limit = 2000
Match = "<div (style="margin-top:7px;"|)><*><small>[%A1][%DA][%50][%52][%A1][%DB]*</div>|"
"<!-- AD_Text -->*<!-- /AD_Text -->|<!-- PR -->*<!-- /PR -->|"
"<div style="line-height:135%;padding:5px 10px;border:2px solid #949494;margin:10px 0;">\[PR\]\ *</div>|"
"<table border="0" cellspacing="0" cellpadding="0" width="100%" id="mainpr">\s"
"<tr><td colspan="2" id="mainprttl" style="color:#000"><strong>"
"<small>[%A1][%DA][%50][%52][%A1][%DB]</strong>*</table>|"
"<div style="padding:5px;background:#EBE790;"><small><strong>PR</strong></small></div>\s"
"<table border="0" cellpadding="0" cellspacing="0" width="100%" style="border:solid #EBE790;"
"border-width:0 1px 1px;">*</div></td></tr></table>|"
"<div style="line-height:125%;padding:5px 10px;border:2px solid #949494;margin-bottom:15px;">\s\[PR\]\ *</div>"
>>407 Match = "\[PR\]"
Replace = ""
という冗談は置いといて、
検証不足ですが、"[PR]"はいろんなタグに挟まれて登場するようですね。
というわけで汎用性を持たせます。
[Patterns]
Name = "livedoor PR cutter"
Active = TRUE
URL = "([^/]++.|)livedoor.com[/:]"
Limit = 1024
Match = "(<(\w)\0[^>]+>)\1 \[PR\]*</$TST(\0)>"
Replace = "\1</\0>"
# "[PR]"だけピンポイントで狙い撃ち。
# (括弧無しの"PR"は華麗にスルー)
┏━━━━━━┳━━━━━━━━━━━━━━┓ ┃⇒ はなす .┃雑魚 か゛ あらわれた。 ┃ ┃ こうげき ┃雑魚 は あおっている。 .┃ ┃ どうぐ .┃ ▼ ┃ ┃ にげる .┃ ┃ ┃ .┃411 は はなしかけた。 .┃ ┃ .┃ ▼ ┃ ┗━━━━━━┻━━━━━━━━━━━━━━┛
>>408 ソースにはvaryの文字は見つかりませんが、どういう意味ですか?
>>413 HTTPレスポンスヘッダ内にある。
これがCacheをコントロールしている。
ログウィンドウを開いてアクセスしてみるといいよ。
[HTTP headers]
In = TRUE
Out = FALSE
Key = "Vary: allow Cache"
Match = "\*"
>>409-410 作っくれてありがとう。
自分じゃ410の冗談フィルタに毛が生えたようなものしか作れなくて
汎用のものがあればと思って聞いてみたんだけど勉強になります。
417 :
名無しさん@お腹いっぱい。 :2006/04/24(月) 22:56:39 ID:oxeBIRsd0
>>167-168 ここに関して
N45juneだと表示がめちゃめちゃだけど
なぜかN45だとちゃんと表示できたよ
proxomitronでUseragentは変更できますか?
ユーザエージェント自体は変更できないが サーバに通知するユーザエージェント名は変更できる と、意地悪くわざとややこしく説明してみるテスト
421 :
名無しさん@お腹いっぱい。 :2006/04/26(水) 03:02:44 ID:gDQQOzvo0
お願いします。 Proxomitronを通してPOSTメソッドの送信を遮断するフィルターはできませんか? 何がしたいかというと、Proxomitron通しての掲示板への投稿を遮断したいのです。
投稿しなきゃいいじゃん。それともCSRF対策とかそういった話? ProxomitronはHTTPメソッドなんか見てないから無理。 どうしてもってんならフォームを書き換える方向でやったら? ↓超やっつけだけど。 [Patterns] Name = "kill post method" Active = TRUE Limit = 256 Match = "<form\s * method=$AV(post) * >" Replace = "<form action="javascript:void(0)">" ↓安全性を考え、いっそフォームごとゴッソリ消す。 [Patterns] Name = "kill post method form" Active = TRUE Limit = 4096 Match = "<form\s * method=$AV(post) * </form>"
POSTもフィルタリング出来れば良かったのにね。 この前のアンカーも。 スコットたんが生きてればなぁ。
[Patterns] Name = "Kill OBJECT TAG" Active = TRUE Limit = 512 Match = "<object\s*</object>" おれもよく分からんけどオブジェクトタグ消せばいいんでは?
ガン細胞の発生を恐れて臓器全摘出w
javascriptを使ってobjectタグをwriteされたらアウトかも。 jsでobjectタグを暗号化しといて、復号してからwriteってパターン。 IEとそのコンポ系は穴開いたままの期間が長いから使わないのがベストだ。
object タグは必須の臓器じゃなくてゴミの固まりだけどな
>>429 お使いのブラウザのプロキシ設定を 「プロキシを使用しない」 または 「直接接続」 にして下さい。
>>429 パイパスリストが機能してないのでは。
設定>起動に登録されているバイパスリストと、
ブロックファイルに登録されているものが一致してます?
バイパスにしない場合は、
抗ブラクラ対策フィルタが影響してる場合があるのでURLマッチで除外する必要も。
ちなみに私はKill External Scripts
スレ違いだから真面目に教える気は無かったが
>>431 氏の熱意に免じてヒントをあげようか。
www.google.co.jp と google.co.jp
>>430 それってオミトロンを使わないってことですか( ゚д゚)
>>431 設定>起動のところは$LST(Bypass)となってますけど、もう少し調べてみます。
>>432 確かにスレ違いでした。めんごm(__)m
Bypass list は部分一致だと思ってました。ありがとう。>>All
Name = "ADD TITLE and OPEN-LINK by new window"
Active = TRUE
URL = "^mail.google.com/"
Bounds = "<(a|area) *>*</a>"
Limit = 400
Match = "<(a|area)\9\s(\4|) href=$AV(\1) (title=$AV(\3)|) (alt=$AV(\5)|) \7>\0</a>"
"$SET(6="
"<\9 \4 href =\1 target=_self \7 target=_self title=!!\3!!\5!!\1!! alt=!!\3!!\5!!\1!!>\0</a>"
"<\9 href =\1 target=_blank title=!!\3!!\5!!\1!!><img border="0" src="
http://Local.ptron/nw.gif " alt=別窓!!\3!!\5!!\1!!></a>)"
Replace = "\6"
LINKを全て自窓で開くにし、タイトルにaddresを表示して別窓リンクの小さいgifを付加します
Yahoo!検索の別窓で開くのところにある
ttp://img.yahoo.co.jp/images/common/nw.gif をproxomitron/htmlフォルダに保存してください
<a href=*><img border="0" src="
http://Local.ptron/nw.gif " alt=*></a>
なパターンを付加すればADDLINK等各種LINK補完フィルタにも使えます
Match欄はヘタレなので改dozo
ブラウザで2chが見れなくなりました。 ↓のフィルタオフにすると見れます。何か、2chの仕様が変わったのでしょうか? 修正お願いします。 Name = "Kill External Scripts (2002/11/30)" Active = TRUE URL = "^$LST(SafeList)" Bounds = "$NEST(< script,< / script >)" Limit = 256 Match = "[^>]++\ssrc=$AVQ(*)*" "$SET(#=<comment>External Script Killed</comment>)" Replace = "\@"
[Patterns] Name = "Kill External Scripts (2006/04/28)" Active = TRUE URL = "^$LST(SafeList)" Limit = 256 Match = "<script\s[^>]++src=$AVQ(*)[^>]+>" Replace = "<script language="killed" type="text/killed">"
>>437 ありがとうございます。今度、時間があるときに、入れて試してみます。
$AVQなんて久しぶりに見た。
youtube変わったね
ほんとだ。 でもすぐ修正出来そうだね。 ほっといても他人が修正するだろうから俺は他スレに行く。
たぶんomitronでは無理
動画ファイルのURLが .flv 付きの場合、ダイアログを表示してURLを簡単にコピー出来るようにするフィルタ。
コピーが終わったらキャンセルを選ぶ。
[HTTP headers]
In = TRUE
Out = FALSE
Key = "Location: YouTube Show flv URL (In)"
URL = "$RESP(303)www.youtube.com/get_video"
Match = "(
http://*.flv )\0(^?)"
Replace = "\0$ADDLSTBOX(DamyListDaYooon,YouTube flv URL,\0)"
(注意)
動画URLが .flv 付きじゃない場合はスルーするので別のフィルタを作る必要あり。
content-typeでmimeがflvだったら上と同じ方法でurlを表示するようにするとかね。
俺は今からGW旅行に行くんでここまで。 続きは上級者にまかせる。
ほんとだ。 でもすぐ修正出来そうだね。 ほっといても他人が修正するだろうから俺は他スレに行く。
あれ?
レスが 遅れて みえて くるよ ?
毎回ダイアログが出るのがうざい場合はこれを入れる。
[HTTP headers]
In = TRUE
Out = FALSE
Key = "Location: YouTube Show flv URL -Press Y key- (In)"
URL = "$RESP(303)$KEYCHK(Y)(www.|)youtube.com/get_video"
Match = "(
http://*.flv )\0(^?)"
Replace = "\0$ADDLSTBOX(DamyListDaYooon,YouTube flv URL,\0)"
キーボードのYキーを押してる間だけフィルタが有効になる。
動画URLが .flv 以外の場合も動くようにしてみた。 あんま使わないしこれでいいや。 [HTTP headers] In = TRUE Out = FALSE Key = "Location: YouTube Show flv URL -Press Y key- (In)" URL = "$KEYCHK(Y)(www.|)youtube.com/get_video" Match = "\0" Replace = "\0$ADDLSTBOX(DamyListDaYooon,YouTube flv URL,\0)"
>>452 t= が無いと弾かれるみたいだね。 もうリンクからダウソってのは無理っぽい。
jsを解析したりすれば可能かも知れないけどすぐまた仕様変更される恐れもあるからなぁ。
>>451 と
>>276 を1つにまとめようと思ったんだけどもう時間無いや。
誰もやらなきゃ明日やるわ。
>>454 工エエェェ(´Д`)ェェエエ工工
じゃあ、前みたいにポコポコ落とせないんか
でも頼れるのはこのスレの人らだけだから、気長に待っとこ(´ー`)
>456 なんだこいつ。 他人任せかよお前にプロクソは百万年はえぇ! さてと頼れるのはこのスレの人らだけだから、気長に待っとこ(´ー`)
漫才はいいから俺さまのためにさっさとフィルター作れよクズども 気長に待ってる(´ー`)
俺、フィルター作ったら東京に行こうと思うんだ・・
僕もいかせてください
Jwardのウザイ広告を消せるフィルタを・・・
厨とチャンコロとチョソを消せるフィルタを・・・
>>463 [Patterns]
Name = "Kill - 厨とチャンコロとチョソ"
Active = TRUE
Limit = 32
Match = "厨とチャンコロとチョソ"
Replace = ""
Jword
Google Kill adを使わせてもらっているんだけれども、 広告カットされた空白のスペースに検索結果を表示させることはできないですかね?
YouTube
[Patterns]
Name = "YouTube Add Download Link [060430]"
Active = TRUE
URL = "$TYPE(htm)(www.|)youtube.com/watch\?(|*\&)v="
Bounds = "$NEST(<script\s,</script>)"
Limit = 512
Match = "(*new\sFlashObject\(\"/player.swf\?(video_id=[^"]+)\0\"*)\1"
Replace = "\1\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()"
>>469 GJ
ソースに鍵ってあったのか
FLASHで生成してるのかとおもってソースみなかった(汗
>>469 すごいです。スーパーグッジョブ。ありがとう。
ページを読み込んでからある程度時間が経つとダウンロード出来なくなるらしいんで その場合は強制リロードしてからリンククリックしること。
>>477 YouTubeって無視していたがこれだと使いやすい
ありがトン
You は Tube! 色んな動画が 落ちてくる You は Tube! 俺のPCに 落ちてくる 長いファイル うぷしようとしても 今は無駄だよ 10分以上は 分割してから ダウンさー
>>478 (*^ー゚)b
ついでにちょっと \s について質問。
ttp://pasokon-yugi.cool.ne.jp/cgi-bin/mainbbs/index.cgi ここで \s の動作について
○ \s = [\n\r\t]+[ ][\n\r\t ]+
× \s = [\n\r\t ]+{1,*}
みたいなことが書いてあるんですが
× \s = [\n\r\t]+[ ][\n\r\t ]+
○ \s = [\n\r\t ]+{1,*}
の間違いではないですか? 自分は色々試してこういう結論になったんですが・・。
最後に、
thinkさん、Noriyaさん、いつもご苦労様です。 大変参考にさせて頂いております。
[Patterns] Name = "test" Active = TRUE Limit = 256 Match = "a\sa" Replace = "ok" のフィルタで(_:半角空白) a_a a__\ta a\r\na がすべてokとなった フィルタ設定のテストのとこだけなるのかと思って webページで試したけどやはりok
>>481 検証どうもです。 やはり自分の環境だけで起こる現象じゃなかったんですね^^;
どうも、こんばんわ^^;
うは、firefox使ってない人は大変だな
>>487 笑ってんな! こっちは必死なんだ!
greasemonkeyなんぞ使わんと、気長に待っとこ(´ー`)
greasemonkeyの中身=ほぼjavascriptなんだし user.js使えるブラウザなら結構使えるんじゃね?
どのページのHTMLソースをどう書き換えるか教えてもらえばいいんじゃね? それさえ分かってしまえば簡単だから。
491 :
488 :2006/05/02(火) 10:15:32 ID:NPZCeBkJ0
調子に乗ってごめんなさい
正規表現*マークしか知りません><
>>489 Opera Syleraで上手く出来んかった・・
>>490 ありがと 多分、ちんぷんかんぷんじゃ・・
素直にgreasemonkey入れてくるよノシ FirefoxかFlockってのインスコする
手抜きフィルタなら書けるよ。 URL貼りつけてボタン押すサイトへのリンクを貼るフィルタw 1: リンクのhref値の最後に ?proxo=(google videoの動画URL)ってのを付ける 2: URL貼りつけサイトのWEBフィルタで動画URLをフォームに自動挿入。 3: WEBフィルタで「自動でボタンを押す」というjsを挿入する。 これで1クリックで4つの動画リンクが表示出来る。 google videoに仕様変更があっても URL貼りつけサイトのほうで対応してくれるしラクチンw
でも↑のようなフィルタはフィルタ職人はあまり書きたがらないんだよね、
書いてここに晒した後に他の職人が
>>469 みたいな便利なフィルタを作ったら底無しに虚しい。
関係無いけど
>>492 のようなフィルタの書き方は以外と便利で、自動ログインフィルタなどに応用出来る。
スタートアップフォルダに対象ページへのショートカットファイルを入れておけばPCを起動するだけで
ブラウザが起動し、ログインまで完了する。 応用次第でBBSに「今起動したよ」みたいな書き込みを
自動でさせたりと色々出来る。
・・というわけで、 ”「自動でボタンを押す」というjsを挿入するWEBフィルタ” のサンプルフィルタが あれば使いまわし出来て便利だよ。 誰かWikiのTipsにうpしてくれないかな??
↑docu.allでなくdomでお願いします
http://www2.wbs.ne.jp/~go-to/prx/faq.html ■書き込み後の確認画面ボタン自動クリック(script使用・IE用)
Name = "2ch bbs.cgi auto submit (03/10/19)"
Active = TRUE
URL = "[^/]++.(2ch.net|bbspink.com)/test/(sub|)bbs.cgi"
Limit = 256
Match = "(name="submit"> <br> </form>)\1"
Replace = "\1<script>document.forms[0].submit.click();</script>\k"
残念、docuだった。
497 :
名無しさん@お腹いっぱい。 :2006/05/03(水) 11:54:13 ID:2rHlXVHK0
>>494 ターゲットになるform要素にname属性があればそれを使い、
なければ"proxomitron"というname属性を追加して、body要素に
onLoad="document.proxomitron.submit()"
を追加する
…というフィルタを作ればjsファイルはいらないと思う
>>497 ・ jsファイルが要るなんて言ってません
・ body onload じゃ動きません
・・・・・(´・ω・`)
[Patterns] Name = "test" Active = TRUE URL = "javimoya.com/blog/youtube_en.php" Limit = 256 Match = "<body$SET(0=<body onLoad="document.proxomitron.submit\(\)" )" "|" "<input type="submit"$SET(0=<input type="submit" name="proxomitron" )" Replace = "\0" 動かないお(´・ω・`)?
[Patterns]
Name = "YouTube - Get Download URI (No.1)"
Active = TRUE
URL = "(www.|)youtube.com/watch\?(|*\&)v=$TYPE(htm)"
Bounds = "$NEST(<script\s[^>]+>,</script>)"
Limit = 512
Match = "\0new FlashObject\1"
"$URL(\2)$STOP()"
Replace = "\0new FlashObject\1"
"<div class="betaCallout" style="width:440px;text-align:center">"
"<a href="
http://javimoya.com/blog/youtube_en.php?proxo=\2 ">Download</a></div>"
[Patterns]
Name = "YouTube - Get Download URI (No.2)"
Active = TRUE
URL = "javimoya.com/blog/youtube_en.php$TYPE(htm)"
Limit = 64
Match = "<body>"
"$SET(0=<body onLoad="botonDownload()">)"
"|<input\s\1name=$AV(url)\2>$URL([^?]+\?proxo=\3)"
"$SET(0=<input \1name="url"\2 value="\3">)$STOP()"
Replace = "\0"
2つともインポート
テスト用URL
http://youtube.com/watch?a=123&v=E-Y2FZiz9sk&b=456
think氏に\uの使い方も教えてもらえ。
ふむ、確かに<body onLoad="botonDownload()">だと動くね。 しかしこれではサンプルフィルタとしては使えないよ。(´・ω・`)
わても一緒に期待hage
華麗にスルーされますた(´・ω・`)
長文だからな
<form action="
http://www.yahoo.co.jp/ ">
<input type="button" value="OK" onclick="alert('OK!!')">
</form>
<script>document.forms[0].submit();</script>
このjavascriptを動かすと alert('OK!!') が実行されずヤフーにジャンプする。
どうやらこの挙動が原因だったようだ。(´・ω・`)
んで ID:2rHlXVHK0 はこの問題が解決出来ずに
>>499 >>501 と逃避行に走ったわけやな。
動かないなら動かないって書けばいいのにな、無駄にプライドの高い奴はこれだから嫌いだ。
さて、ボタンにonclickイベントが付いてるときの解決策も見つかった。 これからテンプレフィルタの作成に取りかかるお。(´・ω・`)
Referer
キャッシュの削除&再読み込み
>509が神カキコするのを気長に待っとこ(´ー`)
Youtubeがplayer2.swfになりました
>>477 YouTube Add Download Link [060430]の
player.swfをplayer2.swf改変すれば使えたよ
[Patterns]
Name = "YouTube Add Download Link [060505]"
Active = TRUE
URL = "$TYPE(htm)(www.|)youtube.com/watch\?(|*\&)v="
Bounds = "$NEST(<script,</script>)"
Limit = 512
Match = "(*new\sFlashObject\(\"/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()"
>>514-515 に対応。 キーボードのYキーを押しながら読み込むと直接動画ファイルにジャンプする機能を追加。
>>516 乙ッス
直接ジャンプはoperaでも動きました
サンプルフィルタ出来たお。(´・ω・`)
盲目的にjsを追加するだけで一番最初のsubmitボタンを押してくれるフィルタ。
[Patterns]
Name = "auto submit push test"
Active = TRUE
URL = "javimoya.com/blog/youtube_en.php"
Limit = 256
Match = "<end>"
Replace = "\r\n<script>\r\n"
"<!--\r\n"
"var n; n = document.forms[0].length; for (i = 0; i < n; i++)\r\n"
"{ if ( document.forms[0].elements[i].type == "submit" ){ n = i; break; }}\r\n"
"document.forms[0].elements[n].click();\r\n"
"// -->\r\n"
"</script>\r\n"
実験URL
http://javimoya.com/blog/youtube_en.php あとはフォームにテキストを挿入するWEBフィルタを用意するだけでおk。
URL欄にリストを使えば複数のページで使うことも可能。
フォームやsubmitボタンが複数あるページでは使えないので注意(´・ω・`)してね。
URL欄を
>>496 にして書き込みtest。(´・ω・`)
成功だお、こりゃ〜マジで便利だお。(´・ω・`)
そうかそれはよかった
(´・ω・`)v
Windows update 等、フィルターしてもらいたくないサイトを登録したいんですけど どうすればいいんですか?
>>523 あまりに初歩的で目が覚めた
「Bypass」
525 :
523 :2006/05/06(土) 04:54:44 ID:ofVFG6ZX0
>>524 それはわかってる
わざわざバイパス オン⇔オフ するのが面倒くさいから登録できるか聞いたわけです
IEの 信頼できるサイト 出来ないサイト みたいに登録できれば楽だと思って
>>525 |
|
│
/V\ J
/◎;;;,;,,,,ヽ
_ ム::::(,,゚ A゚)::| ジーーッ
ヽツ.(ノ:::::::::.:::::::.:..|)
ヾソ:::::::::::::::::.:ノ
` ー U'"U'
>>525 IEのプロキシ設定のとこにある詳細設定で出来る。
オミトロンにはバイパスでも起きるバグがあるからこれで設定したほうが安全だ。
オミトロンでやりたいなら
>>1 の日本語訳ヘルプサイトを読もうな。
msn.hotmailを使ってます。 迷惑メールフォルダ内に在るメールの一覧の右側にマウスカーソルを移すと画像が貼り付けてあって『click here!』と出てきます。 これらを画像を含めて消す方法おながいします。
533 :
名無しさん@お腹いっぱい。 :2006/05/06(土) 19:09:12 ID:c+HkRUcBO
ストーキング乙!
うるせぇよ氏ね(´・ω・`)
ストッキング被!
>>518 良さげなフィルタですね、少し改変して入れさせて頂きました。
[Patterns]
Name = "auto submit push test"
Active = TRUE
URL = "$TYPE(htm)$LST(SubmitPush)"
Limit = 256
Match = "<end>"
Replace = "\r\n<script>\r\n"
"<!--\r\n"
"var s,e,x;\r\n"
"x=1;\r\n"
"x--; s = document.forms[x].length; for (i = 0; i < s ; i++)\r\n"
"{ if ( document.forms[x].elements[i].type == "submit" ){ s = i; break; }\r\n"
" if ( i == s-1 ) { e = 1;}}\r\n"
"if ( e != 1) { document.forms[x].elements[s].click(); }\r\n"
"else { alert("No."+x+" Form don't have submit."); }\r\n"
"// -->\r\n"
"</script>\r\n"
SubmitPushリストにはこのフィルタを適用するURLを登録する。
「x=1;」 の所で上から何番目のフォームかを指定する。 最初のフォームなら「1」、2番目なら「2」。
フォーム内にsubmitボタンが無い場合にはエラーを出すようにした。
Match欄にAの内容そのまま入れるといいよ
>>536 どのフォームかを指定出来るようにしたんだね、(´・ω・`)乙。
リスト内で "x" に入れる数値を指定出来るようにすればフィルタの幅が広がりそうね。
WEBフィルターの質問ですが、 ある指定(条件Match等実施)したWEB-PAGEに対して、 「このページの何行目をどうする。」 「このページの何行目から何行目までをどうする。」 「このページの何Byte目から・・・」 といった感じのフィルターソフトはありますでしょうか。 実用性実行力の有無はよくわかりませんですが。 回答は著名なものの有無や、検索用キーワード等お願いいたします。 「行数」等は多分SOURCE-PAGE-FILEでのことだとおもいます。 専門用語不明です。 備考(同内容):マルチポスト元: ソフトウェア 気軽に「こんなソフトありませんか?」 34 tp://pc7.2ch.net/test/read.cgi/software/1145440703/733 tp://pc7.2ch.net/test/read.cgi/software/1145440703/747
>>537 n〜、top、blank以外の値のtarget属性を持つリンクにマッチさせたいて意味か?(´・ω・`)
[Patterns]
Name = "(^test)"
Active = TRUE
Bounds = "<a\s*>"
Limit = 256
Match = "\0\shref=$AV(\1)*&(^*\starget=$AV((^_(top|blank))*))"
Replace = "\r\n\r\n(´・ω・`)HIT!\r\n[\\0=\0]\r\n[\\1=\1]\r\n"
>>541 あるお。 検索用キーワード "Proxomitron" (´・ω・`)
> 541 > 542 ありがとうございました。枯れた質問の様子なので一度helpから調べて見ます。
一応書いておくとフィルタの設定項目にそんなものは無いんでそういうフィルタを 自作しなきゃいけないよ。。(´・ω・`) (*\n)+{5}(ここは6行目だお)\n とかね。 バイト数でなら ?+{5}(ここが6バイト目だお) みたいな。 つまり高度なフィルタ書き書きテクがないと厳しい(´・ω・`)ス
[Patterns] Name = "Google search option" Active = TRUE URL = "www.google.co.jp" Limit = 2048 Match = "<input id=lrt type=radio name=lr value=lang_(jp|[\s]+\1$SET(3=<input id=lrt type=radio name=lr value=lang_ja checked><label for=lrt> in Japanese </label>)) checked><label for=lrt> ([^<]+)\2" Replace = "\3<input id=lrt type=radio name=lr value=lang_\1 checked><label for=lrt> \2" Googleの「日本語で検索」ラジオボタンが「hogehogeで検索」(日本語以外)になっている場合に 「日本語で検索」(ここではin Japaneseとしました)も追加するフィルタです。 それにはHTMLソース中のtype=radioなinputタグのvalueで判別しています。 しかし,value=lang_jpである場合も,でない場合と同様に追加されてしまうので重複してしまいます。 URL中にあるlr=lang_[^\s]+を使ってもいけそうですが,使い方がよく分からないので,ややこしいことをしています。 どうすれば意図通りに動いてくれるんでしょうか。
546 :
think :2006/05/07(日) 21:53:10 ID:N1beHqAJ0
>541,543 枯れた質問とは思いませんが、Proxomitronで実行するなら、難しい部類に入ると思います。 目的を明らかにされていないので、どういった動作を期待しているのかが解りませんが…。 とりあえず、思いつく限りでファイルサイズ指定のフィルタを考えてみました。 1. Webページで〜byte以上の読み込みがあったとき、以降の接続を切断(膨大なファイルサイズのページ対策) [Patterns] Name = "Kill big size webpage" Active = TRUE URL = "$TYPE(htm)" Limit = 256 Match = "(^(^\0))$STOP()" Replace = "\k\0" 2. Webページで〜byte(行)以上の読み込みがあったとき、「〜byteまで読み込みました」とダイアログで知らせる (Webページ作成時のファイルサイズチェック用…?) [Patterns] Name = "inform filesize" Active = TRUE URL = "$TYPE(htm)" Limit = 256 Match = "(^(^?+))$STOP()" Replace = "$ALERT(load 256byte)" どちらも論理的に破綻はしていませんが、Limitに32768byte以上を指定できないというProxomitronの仕様の壁があります。 32767byte以下で要求仕様を満たせるなら、問題点の見あたらないフィルタだと思います。 (もっとも、32767byteでは膨大なファイルサイズとはいえないので、1.の要求仕様を満たせない可能性が高いですが)
547 :
think :2006/05/07(日) 21:54:12 ID:N1beHqAJ0
32768byte以上のサイズを調べたいときには、難易度がぐっと上がります。 消費するマッチに変更して複数回マッチさせる事も出来ますが、Proxomitronは加算が出来ないので、 2回目からは byte数 を(10進数で)表示することが出来ません(1つのフィルタという条件付きで)。 # 少々判りにくいですがサイズを測るだけなら、識別子をグローバル変数に再帰的に代入させて判断することは出来ます。 # Limit=256, $SET(Filesize=$GET(Filesize)1) なら 256*$GET(Filesize) と表示させ、256*1の数 でファイルサイズを把握します。 また、複数回マッチさせるためには、消費させなければならず、他の全てのフィルタが作用しなくなる欠点があります。 (Proxomitronは一度マッチした部分に二度とマッチしないため) つまり、常用できないフィルタですので $KEYCHK を使用する必要が出てきます。 最後に、256〜512 の範囲内でサイズを測るのも Proxomitron は得意ではありません。 これをProxomitronで実現しようとすると ?+{256}(^?)$ALERT(load 256byte)|?+{257}(^?)$ALERT(load 257byte)|?+{258}(^?)$ALERT(load 258byte) ?+{256}((^?)$ALERT(load 256byte)|?((^?)$ALERT(load 257byte)|?(^?)$ALERT(load 258byte))) のように範囲内の数だけOR条件を設けなければなりません。 このように、32768byte以上を考慮したフィルタはハードルが高いです。 # Proximodo ならある程度 Limit に融通が効くかもしれません。 # 実際にテストはしていませんが、999999999 のLimitを指定できることを確認しました。 >544 その場合、\r\n と \n にマッチさせるという意図だと思いますが、\r は考慮しなくて良い文字でしょうか? Webページ上では \r\n が基本となっていて \r は考慮しなくて良いという気はしているのですが、確信が持てませんでしたので…。
>>542 ありがとうございます。
標準フィルタセットのFrame Jumper-OuterフィルタがB.のケースに誤爆してしまうので
B.<a href="
http://www.abc.co.jp/zoom/photo0112.htm " target="photoWin" onclick="photoWinOpen2(281,500,25)">
これを回避させたかったのです。説明不足だったかもれません。すいません。
Name = "Frame Jumper-Outer" オリジナル
Active = TRUE
Multi = TRUE
Bounds = "<a\s*>"
Limit = 128
Match = "<a\s(\0
http://\1& (^*_(top|blank)))"
Replace = "<a target=_top \0
http://\1 "
教えていただいたMatch式がいまいち理解できないので、
できればオリジナルのMatch式を少し書き換える形で実現できれば助かります。m(_ _)m
(自分のレベルなりにできるだけ理解してフィルタを使いたいので)
549 :
think :2006/05/07(日) 22:30:05 ID:N1beHqAJ0
>545
何やら複雑な事をしてますね。
フィルタを読み解くのが面倒だったので、実際にテストしてみましたが、www.google.co.jp でマッチしてくれませんでした。
要は、<input id=il type=radio name=lr value=lang_ja> に checked がないとき限定でフィルタをマッチさせれば良いのですね。
私なら以下のように書きます。
[Patterns]
Name = "Google search option type2"
Active = TRUE
URL = "www.google.co.jp/"
Limit = 256
Match = "(<input\s[^>]++name=$AV(lr)[^>]++value=$AV(lang_ja)((^checked)[^>])+)\0$STOP()"
Replace = "\0 checked"
「checkedがないとき」は ((^checked)[^>])+ で実現しているわけですが、やや理解が難しいところだと思います。
ttp://abc.s65.xrea.com/prox/wiki/%A5%DE%A5%C3%A5%C1%A5%F3%A5%B0%A5%EB%A1%BC%A5%EB/#v30be62f 慣れてしまえばなんということはないので、慣れてしまってください。
レスありがとうございます。 私が考えているフィルタはcheckedを付加するフィルタではありません。 <input id=stw type=radio name=lr value="" ><label for=stw> ウェブ全体から検索 </label> <input id=lrt type=radio name=lr value=lang_ほげ checked><label for=lrt> hogehogeのページを検索 </label> グーグルの検索フォームの下にはこういうラジオボタンがありますよね。 (ほげにはjpやenが,hogehogeには日本語や英語が入る) これが <input id=stw type=radio name=lr value="" ><label for=stw> ウェブ全体から検索 </label> <input id=lrt type=radio name=lr value=lang_jp checked><label for=lrt> 日本語のページを検索 </label> なら何もせず 例えば英語の場合には以下になり, <input id=stw type=radio name=lr value="" ><label for=stw> ウェブ全体から検索 </label> <input id=lrt type=radio name=lr value=lang_en checked><label for=lrt> 英語のページを検索 </label> から <input id=stw type=radio name=lr value="" ><label for=stw> ウェブ全体から検索 </label> <input id=lrt type=radio name=lr value=lang_jp checked><label for=lrt> 日本語のページを検索 </label> <input id=lrt type=radio name=lr value=lang_en checked><label for=lrt> 英語のページを検索 </label> に書き換えるフィルタを意図しています。 ただ,input id=stwとかid=lrtとかlabel for=lrtとかの意味がちょっと分からないのですが・・・。
>>547 それは分かりやすいように改行=\nとして書いたんだお。(´・ω・`)
>>548 あれ以上簡単には書けないお。(´・ω・`)
フィルタ的にそれだけ難しい要求をしてるってことだお。
理解したいなら (^ ) を使った否定の仕方を完璧に使いこなせるようになるべし。(´・ω・`)
>>549 $AV(lang_ja) の後ろのスペ−ス忘れてるお。(´・ω・`)
552 :
think :2006/05/08(月) 00:11:47 ID:DaAIn5DM0
>>550 念のため確認しますが、制御したいフォームのあるページは以下のようなページと考えて良いのですよね…?
Google検索: site:google.com inurl:/intl/ -inurl:/ja/
ttp://www.google.com/search?num=20&q=site%3agoogle.com+inurl%3a%2fintl%2f+-inurl%3a%2fja%2f > ただ,input id=stwとかid=lrtとかlabel for=lrtとかの意味がちょっと分からないのですが・・・。
<label> については とほほのWWW入門 をみてもらうとして、id属性については考慮する必要はないと思います。
少なくとも、フォームを制御するものではありません。
ttp://www.tohoho-web.com/html/label.htm ここで重要なのは、name属性値とvalue属性値です。
例えば、name=lr value=lang_ja なら、&lr=lang_ja としてURLに付与されます。
ただ、フィルタでchecked が2つに増やすと異常な動作を示します。
(簡単にテストしてみましたが、どちらのcheckedが有効になるかの規則性が解りません)。
[Patterns]
Name = "Google search option type3"
Active = TRUE
URL = "www.google.co(m|.jp)/"
Limit = 256
Match = "(^(^<input\s[^>]++name=$AV(lr)[^>]++value=$AV(lang_(^ja)?+)))$STOP()"
Replace = "<input id=il type=radio name=lr value=lang_ja><label for=il>Search in Japan</label>"
上のフィルタでは、[日本語のページを検索] に checked を入れていません。
もし、checked を入れたいのなら、他の <input> 内を検索して checked を取り除くようにしてください。
553 :
think :2006/05/08(月) 00:33:01 ID:DaAIn5DM0
>548
それは (^*_(top|blank)) が問題の箇所です。
target="_top" と target="_blank" 以外のtarget属性値にマッチさせるのがフィルタ制作者の意図だと思われますが、
掲示されたソースにはどちらも含まれないので、これをパスしてしまうのです。
紹介されたフィルタの使用目的から考えるとフレームに関するtarget属性値を制御したいのでしょうから、
存在するtarget属性値を決め打ちして、target="_top" に置換してみては如何でしょう?
ttp://www.tohoho-web.com/html/attr/target.htm target="_self" と target="_parent" の2つにマッチさせれば意図通りに動作すると思います。
>551
> それは分かりやすいように改行=\nとして書いたんだお。(´・ω・`)
なるほど。
> $AV(lang_ja) の後ろのスペ−ス忘れてるお。(´・ω・`)
checked がないということは value=lang_ja の後に > で閉じられる可能性があるわけで、スペースを置く必要はないのではありません?
置換後の checked の前の空白のことなら、Replace欄で checked の前に空白を置いています。
>ただ、フィルタでchecked が2つに増やすと異常な動作を示します。 これは「複数言語のページを検索」させたいということでしょうか? それならvalue=lang_ja%7Clang_enとすればうまくいきそうです。 第3版を動かしてみたところ期待していた動作をしてくれました。 ありがとうございます。
555 :
think :2006/05/08(月) 00:58:20 ID:DaAIn5DM0
>554 いえ、[日本語のページを検索] を既定にしたいのでしたら…という意味です。 私が>549の動作に拘っていただけかもしれません。 >548 蛇足ですが、あと少し。 オリジナルではtarget属性値を削除しないようなので、念のため削除するように変えた方が良いです。 \0 と \1 で括ってある部分を target属性の両隣に置けば、削除できるはずです。 target属性値は $AV() を使ってやれば、誤爆する事なくマッチすると思います。
>>553 んー(´・ω・`)、
>>549 を入れて
<input id=il type=radio name=lr value=lang_ja checked>
でテストしてみたら結果が
<input id=il type=radio name=lr value=lang_ja checkedchecked>
になったから(checkedchecked)
>checked がないとき限定でフィルタをマッチさせれば良い
ってのに反してるんじゃないかな、と思ったわけよ。(´・ω・`)
557 :
think :2006/05/08(月) 06:40:55 ID:DaAIn5DM0
>556 あ…、ご指摘有難うございます。 ((^checked)[^>])+ は0回以上の繰り返しにマッチする = checkedより前までみる となっていたのが拙かったようです。 [Patterns] Name = "Google search option type2.1" Active = TRUE URL = "www.google.co.jp/" Limit = 256 Match = "(<input\s[^>]++name=$AV(lr)[^>]++value=$AV(lang_ja)((^checked)[^>])+)\0(^(^>))$STOP()" Replace = "\0 checked"
それを
>>545 氏に教えるのは酷じゃないかな?(´・ω・`)
僕ですら (^(^>)) が付くと動作が変わる理由が分からないです。
僕なら &(^*checked) を使ったものを教えます。
>慣れてしまえばなんということはないので
ムリ(´・ω・`)ポ
>checkedより前までみる そうか、分かりました。(´・ω・`) checkの目前でマッチングが止まってしまってたんですね。 気付けばどうってことないことだけどこれはなかなか気付きにくいな、いわゆるコロンボのキンタマ。(´・ω・`)
>>77 >>78 や他のページに落ちている
google image の直リンフィルターがうまく動かないのは俺だけ?
>>562 すいません、自己解決。バイパスリストにグーグルが入っていた。
Items欄はハッシュされたアイテムの数じゃなくハッシュされていないアイテムも含んだ数のようだ。 ([^/]++.|)somehost.*/ ([^/]++.|)somehost.(com|net)/ 上の2つはハッシュ化されないがItemsが2になる。
フィルタ作成画面のBounds欄でだけBlockFileの追加、編集メニューが出ないのは何故なんだろう。
考えてみれば置換欄でも使えたほうがいいね。 $TSTでのテストにリストが使われることがあるかも知れないし。
置換欄で$TST内でリストが使えるかどうかのテスト。 [Patterns] Name = "Replace $TST(List)" Active = FALSE Limit = 256 Match = "(yahoo.com/)\0" Replace = "Ma$TST(\0=$LST(TEST)$ALERT(TEST List Match.))tch" TESTリストにyahoo.com/を登録してテストしたら動いた。 リストは置換欄でも使えるし$TST内でも使えると。
チラシの裏をオススメします
ここがチラシの裏だよ
573 :
think :2006/05/09(火) 23:40:33 ID:1IVrv2k+0
>>560 >555の繰り返し説明ですが、そのままではtarget属性が2つ出来てしまうので、元々のtarget属性を削除するように変えてください。
Boundsを使うなら以下のように。
Match = "\0target=$AV(_(self|parent))\1&..."
Replace = "\0 target="_top"\1"
<img>タグ以外を全部消すというフィルターを作って頂いたのですが
これをいじってある何個かの任意のタグだけを残す <x 〜/x>と<y 〜/y>
ってのは出来ないでしょうか?
http://wind.prohosting.com/proxmine/cgi-bin/uploader/download.cgi?PmU_0370.zip Kill without img [2005.12.24]
Name = "Kill without img [2005.12.02]wiki"
Active = TRUE
URL =
Limit = 2048
Match = "<body(^[^ >])([^>]++background=$AV(\1)|[^>]++bgcolor=$AV(\2)|)[^>]+>[^<]+"
"$SET(0=\r\n<style type="text/css">\r\n"
"<!--\r\n\tbody { background: \2 url("\1") }\r\n"
"\timg { margin: 6px !important }\r\n-->\r\n</style>\r\n)|"
"(<!DOCTYPE\s([^>]++\sFrameset$STOP()|)[^>]+>)\0[^<]+|"
"<frameset\s$STOP()Stopper|"
"$NEST(<a\s[^>]++href=$AV(
http:// (www.|(^www.))$LST(Kill-href)*),</a>)[^<]+|"
"(<a\s(^[^>]++href=$AV(
http:// (www.|(^www.))$LST(Kill-href)*))+[^>]+><img\s)\#("
"[^>]++src=$AV(
http:// (www.|(^www.))$LST(Kill-href)*)[^>]+></a>|"
"([^>]+></a>)\#$SET(0=\@))[^<]+|"
"(<img\s)\#([^>]++src=$AV(
http:// (www.|(^www.))$LST(Kill-href)*)[^>]+>|"
"([^>]+> )\#$SET(0=\@))[^<]+|"
"<(^body|!DOCTYPE\s|frameset\s|img\s|a\s[^>]+><img\s)[^>]+>[^<]+"
Replace = "\0"
>>574 出来ます。
そのフィルタは複雑なように見えますが、動作としては
・<img> などの残したい部分を変数に代入する
・不要な部分を変数に代入しない
だけですから、ちょっと頑張ればそれほど難しくないと思いますよ。
>>574 >"<frameset\s$STOP()Stopper|"
Stopper(´・ω・`)?
>>576 それは明らかに存在しない文字列を入れて、マッチさせずに $STOP() する動作を実現しようとしているんです。
初期化していない変数を $TSTしてマッチさせないのと同じです。
>>577 なるほどネ。 消費させなかったりマッチさせなかったり、みんなよく考えるもんだ。(´・ω・`)
Anti_Browser_Crasher030529.zip 誰かうpしてください お願いします
>>580 序でに (TдT)アリガトウ 頂いときますた。
youtube URL = "$TYPE(htm)(www.|)youtube.com/watch\?(|*\&)v=" の中の <div id="sideAdDiv">(略)</div> を消すフィルタをお願いします。自分でみようみまねで作ってみたら青画面連発になりました STOPとかNESTの使い方がわからん。
[Patterns] Name = "YouTube Kill sideAdDiv" Active = FALSE URL = "$TYPE(htm)(www.|)youtube.com/watch\?(|*\&)v=" Limit = 2048 Match = "<td>\n<div id=$AV(sideAdDiv)>*<!-- end dVidsDiv -->\n</div>\n</td>$STOP()" とりあえず動いてるみたいだけど 初心者が作ったものだから自己責任で...
>>584 Danke schön
動きました。助かりました、ほんとうにありがとう。
早く自分でまともなフィルタが作れるようになりたい。
587 :
584 :2006/05/11(木) 19:09:33 ID:0B7pd1+g0
>>585 まずいろいろ自分から試すことが大切
そしたら段々上達していくもの
ドイツ語?つい最近学校で習った希ガス
In = TRUE Out = FALSE Key = "ETag: for cache (in)" Match = "\0" Replace = "$LOG(RETag_log: \0)" キャッシュを効かす目的でこういうの作ったんですが あまりこういうフィルタ見たことないんで問題点があったら教えて下さい 一時間くらい見回ってますが今のところ大丈夫
Name = "2ch Ad Killer"
Active = TRUE
URL = "live[^./]+.2ch.net/(^test)[a-z]+/(^subback.html)"
Limit = 4096
Match = "<div\s[^>]++(id|class)=$AV(adv+)*</div>"
live22x → news20
http://news20.2ch.net/news/ ニュース速報
変わったので、live22x、news20の両方に
対応する修正お願いします。
Name = "2ch Ad Killer" Active = TRUE URL = "[^.]+.2ch.net/[^/]+/" Limit = 2048 Match = "<div\s[^>]++(id|class)=$AV(adv+)*</div>" 試してないけど
[Patterns]
Name = "KILL 2ch TEXT AD"
Active = TRUE
URL = "[^/]++.(2ch.net|bbspink.com)/*/read.cgi/"
Limit = 256
Match = "<span style=$AV(float:right;)>*</span>"
"|<a href=$AV(
http://ofuda.cc/ )><img\s[^>]+></a>"
"|<script\s*p.2ch.io/getf.cgi*\n</script>"
"|<script\s*</script><br><br>"
"|<font size=$AV(-1)><b>*</b></font><br>"
自己満で使ってるやつ
2ch dat converterに<a>タグを追加するフィルタ
Name = "2ch dat Converter link <a> inserter"
Active = TRUE
URL = "[^.]+.(2ch.net|bbspink.com)(...|)/[^/]+/dat/([0-9]+{9,10}).dat"
Limit = 256
Match = "(^")((ht|t|)tp://)\1([\@!:\?=_#-9A-~]+)\0"
Replace = "<a href="
http://\0 ">\1\0</a><font color="red">\[add link\]</font>"
(^")をゼロ幅先読みって習ったんで使ってみたけどどうも汚らしい・・・。
修正してくれる人いませんか?
593 :
589 :2006/05/12(金) 00:52:17 ID:XNYzSL3Y0
>>592 良いですね 使わせていただきます。
修正については他の方に‥
datという事で2ch dat Converterを改造してメール欄を色付けしました
Name = "2ch dat Converter [mail colored]"
Active = TRUE
URL = "([^/]++.|)(2ch.net|bbspink.com|immex.jp)(|*:[0-9]+{1,*})(...|)/[^/]+/dat/[0-9]+{9,10}.dat"
Limit = 256
Match = "$SET(9=orange)"
"<>(\n|あぼ??ん\n)(([^<]+(</b>[^<]+<b>|))+)\1<>"
"((sage)$SET(9=lightseagreen)|((\s|)sage*)$SET(9=mediumspringgreen)|\#)\2<>\3<>"
Replace = "<br><br></dd>\r\n"
"<dt><script>counter++;"
"document.write('<a name="'+counter+'"></a>'+counter)</script>"
" :<font color="#ab7c61"><b>\1</b></font><b><font size="-1" color="\9">\2</font></b>\3</dt>\r\n"
"<dd>\4"
replaceの時にsage等の文字を[]で囲みたいのですが(\2ですね)
空のときは[]も挿入しないようにできないか思案中です
|"((sage)$SET(9=lightseagreen)|((\s|)sage*)$SET(9=mediumspringgreen)|\#)\2<>\3<>" "((sage)\2$SET(2=[\2])$SET(9=lightseagreen)|((\s|)sage*)\2$SET(2=[\2])$SET(9=mediumspringgreen)|$SET(2=[\#]))<>\3<>" 素人考えだとこれでどうにかなりそうな気がする でも気がするだけだからきっとダメ
Name = "2ch dat Converter" Active = TRUE URL = "[^.]+.(2ch.net|bbspink.com)(...|)/[^/]+/dat/[0-9]+{9,10}.dat" Limit = 256 Match = "<>(\n|あぼ??ん\n)(([^<]+(</b>[^<]+<b>|))+)\1<>(([^<]+{1,*})\2$SET(5=\()$SET(6=\))|)<>\3<>" Replace = "</font><br><br></dd>\r\n" "<dt><script>counter++; document.write('<a name="'+counter+'"></a>'+counter)</script> :<font color="#33AA33"><b>\1</b></font>\5\2\6 \3</dt>\r\n" "<dd><font face="BDF東雲明朝">\4" 一応私が弄ったものではメル欄ありの場合には"(メル欄)"で未記入の場合には何も表示しないようにしています。 ( ([^<]+{1,*})\2$SET(5=\()$SET(6=\)) | ) Match内の↑ここですね (A|B)とすればAがメル欄有りのとき,Bが未記入のときに対応してます。 レスアンカーは↓です Name = "2ch dat Converter res anchor" Active = TRUE URL = "[^.]+.(2ch.net|bbspink.com)(...|)/[^/]+/dat/([0-9]+{9,10})\1.dat" Limit = 80 Match = "(<a href="../test/read.cgi/[^/]+/\1/([#1:1000])\2\S+" [^>]+>\>\>|\>|>)([#1:1000])\3((\-([#1:1000]))\4|)(</a>|)" Replace = "<a href="#\2">>\3\4</a>" 例えば>1は<a href="#1"> >1</a>という感じにしています。
>は適宜&gt;に置き換えてください…。
Youtubeが微妙に変わったようだ。 FlashObject→SWFObject
ホントだ。ちょくちょく変わるなぁ。
とりあえず、SWFObjectにした。ありがと。
>>599
>>596 考えてくださってありがとうございます。
$SET(2=[\2])なパターンは何回か使って見たんですけどダメだったんですよね。
>>597 ありがとうございます。かなり参考になりました。
怪しいですが形だけはできました。
Name = "2ch dat Converter - mail colored -"
Active = TRUE
URL = "[^.]+.(2ch.net|bbspink.com)(...|)/[^/]+/dat/[0-9]+{9,10}.dat"
Limit = 256
Match = "$SET(9=orange)$SET(5=<font color=#6b8e00> \[)$SET(6=\]</font>)"
"<>(\n|あぼ??ん\n)(([^<]+(</b>[^<]+<b>|))+)\1<>"
"(((sage)$SET(9=lightseagreen)|((\s|)sage*)$SET(9=mediumspringgreen)|<$SET(5=)$SET(6=)|\#)\2)"
"<>\3<>"
Replace = "</font><br><br></dd>\r\n"
"<dt><script>counter++; document.write('<a name="'+counter+'"></a>'+counter)</script>"
" :<font color="#33AA33"><b>\1</b></font>\5<b><font size="-1" color="\9">\2</font>"
"</b>\6 \3</dt>\r\n"
"<dd><font face="meiryo">\4"
よつうべのDLリンク使えてる?
>>604 てゃんくす チャンと過去ログよんどけばよかった。
素晴らしい
チューをくれてやろう
HP内にある画像の解像度を下げて(圧縮して)表示するフィルタってありますか?
フィルタで圧縮しろと?
サムネイル表示の事では?
|゜3゜)♥
そういうのはairproxyとかの仕事じゃ?
gyao movie's utility使えなくなってね?
ごめん勘違い
YouTubeのファイル名がget_videoになる事が多いので
video_idをファイル保存のダイアログ上で表示させて
okならその名でセーブという感じにできないか
勝手に改造しようとしてます が
Name = "YouTube Add Download Link save as video_id"
Active = TRUE
URL = "$TYPE(htm)(www.|)youtube.com/watch\?(|*\&)v="
Bounds = "$NEST(<script\s,</script>)"
Limit = 512
Match = "(*new\s(FlashObject|SWFObject)\(\"/player(2|).swf\?(video_id=*\8\&l=*)\0\"*)\1"
Replace = "\1\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 " title="\0">[[[ Download ]]]</a>\n</div>\n$STOP()"
"<form name="video_id_Form" onsubmit="return false"> "
" <input type="text" name="textData" value="\8" size="30"> "
"</form> "
現状はファイル保存dialogへのコピペ用にテキストボックスにidを表示させただけです。
idをファイル名にするにはどうすればいいでしょうか。
てすと用
ttp://www.youtube.com/watch?v=QIV2b-FyMf4
[HTTP headers]
In = TRUE
Out = FALSE
Key = "Content-Disposition: a (In)"
Match = "$URL(
http:// (^www)[^/]++.youtube.com/get_video\?video_id=\0)"
Replace = "attachment; filename="\0.flv";"
メーカーサイトとか、BLOGとか、 ブラウザで文字の大きさ最大にしても、 全然変わらないとか、行間が広がるだけとか、 ってところがあるけど、あれを無効化するフィルタとか作れない? 最近のサイト、字が小さすぎて・・・ ('A`)
Firefox, Opera使うのが確実
>>619 ユーザースタイルシートとかの方が良いかも。
>>619 インターネットオプション→全般→ユーザ補助
624 :
619 :2006/05/21(日) 01:53:26 ID:GRe5RX3D0
う〜ん ユーザー補助を弄ると、逆に見難くなるサイトがある。 ショートカットキーなんかでサクッと切り替えれたらいいんだけど。 これは、IEスレででも聞いてみるか。 解像度の変更は、ちと面倒だな。 なんかいい方法はないかなぁ・・・
>>617 乙!! すごい、こんなHTTPヘッダがあったのか。
調べてみたら 『 <a href=〜/get_video.php/(希望ファイル名)?video_id=〜> 』 って書く方法もあるらしい、
youtubeでは使えないみたいだけど。
>>619 >>620-621 でFA。 ぐぐればCSSの書き方も分かるはず。
>>625 616ですが、私もまったく知りませんでした。聞いてみるもんです。
617さん再度乙です。
>>624 私はこんなのを使ってます。
Name = "Style Sheet BIG"
Active = TRUE
Multi = TRUE
URL = "$LST(CSS_big)"
Limit = 10
Match = "</head>"
Replace = "</head>\r<link rel="stylesheet" href="
http://Local.ptron/CSS_big.css ""
" />\r$STOP()"
htmlフォルダの中のCSS_big.cssの中
* {
line-height:150% !important;
font-size:100%!important;
letter-spacing: 3px !important;
}
listフォルダの中のCSS_big.txtの中
www.sponichi.co.jp/wsplus/
www.yukan-fuji.com/
627 :
岩瀬健児 ◆1bxCLSOyFw :2006/05/21(日) 04:41:50 ID:TDFpGast0 BE:103037257-
今日は、袋と太ももの密着度が薄い。明日晴れるのかな?
俺の場合、文字サイズの変更はBookmarklet使ってる。
CSSって最小文字サイズの指定とか出来たっけ? 大きい文字はいじらずに小さい文字だけ大きくする。 Opera使ってる俺には関係無いけど。
opera使い多いな operaなら最小フォントサイズ決められたりページ全体を拡大とか出来ますよ、と。
Operaいいよね、BT入れる必要無いからトレントファイルの検索、ダウソがスムーズ。 でも見れないサイトが多いのが難点。
>>619 Name = "Ignore smaller font-size style sheet"
Active = TRUE
Multi = TRUE
Bounds = "<style*</style>|\sstyle="*"*>|$TYPE(css)*"
Limit = 4096
Match = "(\# font-size\s+:\s+([#0:11]pt|[#0:13]px|[#0:99]%|0.[0-9]+em|*small)\s+(;|))+{1,*} \#"
Replace = "\@"
livedoorBlog検索の1クリック省くフィルターありませんか?
切れた しかし tp://html.appelle.jp/2006/04/javascript_5.html tp://secinfo.itnavi.net/ tp://ameblo.jp/ikari/ こういうとこは効かないです <rdf:RDF *</rdf:RDF>が原因かな? よくわからない
Noriyaさん乙です。 $TYPE(htm)を$LSTの後ろに付けるのは低速化になりますので
位置を逆にすることをおすすめします。
あと <body\s は <body> にはマッチしないので書き換えが必要。
マッチさせないで挿入する
>>518 のような方法がベストかと思います。
ついでにReplace欄でグローバル変数の解放をしてあげて下さい。
すみません、 × マッチさせないで挿入する ○ 消費させないで挿入する ですね。
>>638 アドバイス感謝です
指摘してもらうとありがたい
(ちなみにNotiyaさんではありません)
Noriya 氏のフィルタにはよく $TYPE が使われているけれど、 これを使ったほうが負荷が軽くなるのかな。 $TYPE(htm) の場合は、 CSS などを無視するという意味でそうなのかなと思うんだけれど。
個人的には$LST(ZoomList)$TYPE(htm)のほうが軽い気がする。
643 :
think :2006/05/24(水) 21:58:16 ID:yba5pV/10
>>641 「軽い」というのは主観ですしね…。
スピードを競うのなら統計を取らないといけないわけですが、テストウインドウでチェックできない場合のテストは難しいと思います。
現時点で1つ言えることは、「Proxomitronは表現の長さが短いほど速いわけではない」という事です。
その事から考えると、Webページに制限する $TYPE(htm) で遅くなる理由は思い浮かびませんが、断言は出来ません。
それでも、Webページのみにマッチさせるフィルタなら、$TYPE(htm) を書いた方がよいと思いますよ。
速度よりも誤爆を恐れるべきだと思います。
スレとズレますが、thinkさんがいらしてるのに何もしないのはもったいない。 で、質問があります。 urlマッチさせるときに find.2ch.netだけにマッチさせて それ以外の全ての*.2ch.net(pc7.2ch.netやpc8.2ch.net等) にはマッチさせたくない場合 ^([^/]++.|)2ch.net を使ってやる場合どうすればいいですか ++の後,find除外・・dがhkでゃお。。・ 今はとりあえず応急的にこうやってます ^(^(find.2ch.net))|^([^/]++.|)2ch.net
つ URL = "find.2ch.net/"
>643 なるほど。とりあえず使って試してみます。
( ´,_ゝ`)
>>645 d ‥ つか説明が不足してますね。
全てのurlにマッチさせたいが(*.|)2ch.netは許さない。
例外的にfind.2ch.netのみマッチを許可してやるという設定です。
これで効くようになったけどいいのか
^([^/]++.|)((^find)\w.2ch.net)
pinkもいれたら
^([^/]++.|)((^find)\w.2ch.net|bbspink.com)
否定が苦手ならこれが分かり易いかな。 find.2ch.net|^[^.]+.(2ch.net|bbspink.com) find.2ch.netだったら先にマッチするんで後ろの否定は検索されない。
>>650 レスどうも
マッチさせたいのはfind.2ch.netだけでなく
*.(2ch.net|bbspink.com)以外の全てのurlも含む意です
URL欄の話でしょ? 2ch以外のURLはこれでマッチするよ。
653 :
think :2006/05/25(木) 16:37:04 ID:8ajR4oGs0
>>644 ,649,651
これで期待通りに動作すると思います。
URL = "find.2ch.net|(^[^.]+.(2ch.net|bbspink.com))"
OR関数は左のパターンからテストしますので、左のパターンで find.2ch.net/ を肯定してから
右のパターンで [^.]+.2ch.net/ を否定します。
URL = "^(^find.2ch.net/)[^.]+.2ch.net/|[^.]+.bbspink.com/"
NOT関数の中で、更に "find.2ch.net/" を否定します。(ゼロ幅の先読みによって "find.2ch.net/" を先読み。)
NOT関数の内の「ゼロ幅の先読み」と「NOT関数」は先読みを共有しているので、"find.2ch.net/" を予め先読みしておけば
"URI = find.2ch.net" が "[^.]+.2ch.net/" の否定にマッチする事はありません。
# URLマッチなので、外側の括弧を省略しています。
# (^(^find.2ch.net/)[^.]+.2ch.net/|[^.]+.bbspink.com/) と同義。
最後に、\w はドメインを超えて消費するので、URLマッチには不向きかと思います。
>>650 ,652
私の環境でその表現をテストしてみると、「"2ch.net", "bbspink.com" 以外のWebサイトにマッチさせる」
という要件を満たせないようですが、いかがでしょうか。
>>653 ありがとうございます
詳細な説明、ほんとに感謝です ...(ノД`)
>>650 さんも、ありがとう
| の後ろの ^ は()で囲わないとメタとして機能しないのか、すまんかった。
よく考えると
http://2ch.net/ にもマッチしちゃうな、書き込む前にちゃんとテストしないとイカンね。
657 :
think :2006/05/25(木) 17:46:30 ID:8ajR4oGs0
>>648 ,656
連投しなくても、見る人は見ますよ。
--- Sylera2(GRE-1.7.12_2) の場合
・ページを最後まで開けます。
・ページを開く前と比較して、メモリ使用量が324MB増えました。
・ロード中のウインドウスクロールは軽快に出来ます。
・ページを閉じるときに、10秒ほどCPU使用率100%を維持し続けました(メモリは解放されませんでした)
--- Sylera2(GRE-1.8.0.2_1) の場合
・ページを最後まで開けます。
・ページを開く前と比較して、メモリ使用量が123MB増えました。
・ロード中のウインドウスクロールは軽快に出来ます。
・ページを閉じるときに、10秒ほどCPU使用率100%を維持し続け、メモリが解放されました
--- Sleipnir2(IE6-SP2) の場合
・ページを最後まで開けます。
・ページを開く前と比較して、メモリ使用量が131MB増えました。
・ロード中のウインドウスクロールは著しく遅いです。
・ページを閉じるまでの時間は1秒ほどでメモリも解放されました。
タイミングによっては、iframe要素の参照先で「CGIWrap Error」が 多数発生して
ページを最後まで開けない事もありました。(サーバーの問題だと思います)
ダウンローダでDLしてみたところ、ページのファイルサイズは13.2MBありました。
明らかにWebページ制作者側の問題で、Proxomitronを 通す/通さない 以前の問題だと思います。
>>654 OR関数の方でホスト名の最後を示す文字 / を入れ忘れたので、そちらを使っていたら入れておいてください。
>>655 > よく考えると
http://2ch.net/ にもマッチしちゃうな
言われてみれば…。
ブラクラフィルタ更新版ないの?
661 :
660 :2006/05/26(金) 05:40:51 ID:ydHAhAPJ0
html文書の行間が狭くて読みづらい場合に,行間を大きくするようなフィルタを作りたいんですが それは難しいですよね。 行間幅はCSSからもHTML自身からも指定できるし…。
line-height の値が1.5未満 or 1.5em未満 or 150%未満の時に 1.5emに書き換えるフィルタとか前作ってた
そういうのはbookmarkletで
俺はプニルなんで、IEの右クリ拡張で 行間を変更できるやつ入れてる。
youtubeのトップページ(
http://www.youtube.com/index )が重いので、
"Today's Featured Videos..."をまるごと削ってみようとしたのですが、
まったく動いてくれません。10回くらい書き直したなかで、一番惜しそうなやつを提出します。
どなたかひまな方、よろしければ添削お願いします
[Patterns]
Name = "YouTube Kill index"
Active = TRUE
URL = "
http://www.youtube.com/index "
Match = "$NEST(<div class=$AV(contentListStandard)>,</div>)"
>>662-665 URLリストとjsファイルを用意して
ブックマークレットをヘッダーに埋め込んだら便利かもしれない
[Patterns]
Name = "line-height160"
Active = TRUE
URL = "$LST(line-height160)"
Limit = 20
Match = "</head>"
Replace = "<script>\r"
"<!--\r"
"$FILE(Filename)\r"
"// -->\r"
"</script>\r"
"</head>\r"
"$STOP()"
>>666 Match = "<div class="contentListStandard"> $NEST(<div class*>,</div>)"
669 :
think :2006/05/27(土) 16:36:55 ID:qHe52HsA0
>>641 ,646
あれからもう一度考えてみましたが、「$TYPE(htm) を使った方が速い」が正解な気がします。
以下、テストウインドウを使えないので、理論的な話になります。
Proxomitronの速さを分別すると、「マッチさせるまでの速さ」と「マッチ対象外を除外する速さ」の2通りがあると考えます。
ttp://vird2002.s8.xrea.com/proxomitron/tips_speed_up_filter.html で紹介している「Boundsは遅い」は「マッチさせるまでの速さ」
「OR関数は内部パターンを長くした方が速くなる」は「マッチ対象外を除外する速さ」になります。
理論的に考えて、「軽い」というのは「マッチ対象外を除外する速さ」の影響を受けやすいと思います。
なぜなら、通常は「マッチさせるべき対象」よりも「マッチ対象外」の方が多いですから。
経験的にも、「マッチ対象外を除外する速さ」の影響の大きさを実感しています。
# 「テストウインドウで対象のソースをテストすると速いが、全体のソースをテストすると遅い」という事がありますが、
# これは「マッチさせるまでの速さ」は速いが、「マッチ対象外を除外する速さ」は遅いという事です。
長くなりましたが、$TYPE(htm) は他の Content-Type を拒否することから、「マッチ対象外を除外する速さ」に影響すると思います。
従って、「$TYPE(htm) は軽い」のではないかと。
Noriyaさんとこ見てたら使えるBookmarkletがあったからそれで作ってみた Name =
Name = "ZoomFont - etc -"
Active = TRUE
URL = "$TYPE(htm)$LST(FontZoomList)"
Limit = 10
Match = "<body(\s|>)\0"
Replace = "<body onload="javascript:"
"(function(){var e,i;e=document.getElementsByTagName('*');"
"for(i=0;i<e.length;i++){"
"e.item(i).style.fontSize='$GET(fs)';"
"e.item(i).style.lineHeight='$GET(lh)';"
"e.item(i).style.letterSpacing='$GET(ls)';"
"}})()"
""\0"
"$STOP()$SET(fs=)$SET(lh=)$SET(ls=)"
FontZoomList.txt 例
################# ZoomFont - etc - #####################
# fs=font-size lh=line-height ls=letter-spacing
#
$URL(
http://www.nikkei.co.jp/ )$SET(fs=35px)$SET(lh=500%)$SET(ls=30px)
一応できるんだけど
文字の大きさも行間も字間もと欲張ったからか・・・お・そ・
ひとつに限定したら使えるかな
>>669 乙です
そういうの漠然と理解してるけど文章にすると難しいんですよね
あとこのフィルタですけど
<end>にマッチさせて関数をloadさせる時のタイミングが
良くわからなかったので、また<body onload=で済ましてしまいました
672 :
think :2006/05/27(土) 21:50:47 ID:qHe52HsA0
>>671 > 文字の大きさも行間も字間もと欲張ったからか・・・お・そ・
Proxomitronでやるにしても、ユーザースタイルシートを挿入する方が速いのではありません?
私が過去に作ったフィルタを自サイトにUPしておきました。
CSSまわりをもう少し調整したいところですが、フィルタとしては動作します。
# メンテが滞っているフィルタが多すぎるので、何とかしたいところ…。
>>668 それだとうまく動きませんでした。でもおかげで自分の$NESTの使い方が
間違っていたのがわかりました。どうもありがとうございました。
674 :
think :2006/05/27(土) 22:21:22 ID:qHe52HsA0
>>666 ,673
消すべきは、<div class="contentListStandard"> ではなく
<div id="contentListStandard"> だと思います。
[Patterns]
Name = "Invisible youtube standardContent test1"
Active = TRUE
URL = "$TYPE(htm)www.youtube.com/index"
Limit = 256
Match = "<div(^(^\sid=$AV(standardContent)))"
Replace = "<div style='display: none'"
[Patterns]
Name = "Invisible youtube standardContent test2"
Active = TRUE
URL = "$TYPE(htm)www.youtube.com/index"
Limit = 256
Match = "<div(^(^\sclass=$AV(standardContent)))"
Replace = "<div style='display: none'"
恐らく、test1 が期待通りの動作ですよね?
で、これは不可視にするだけなので、削除する形に変化させるとこうなります。
[Patterns]
Name = "Invisible youtube standardContent test3"
Active = TRUE
URL = "$TYPE(htm)www.youtube.com/index"
Limit = 32767
Match = "$NEST(<div,\sid=$AV(standardContent)?+,</div>)"
$NESTの inner match を使用している理由は以下で説明している通り。
ttp://vird2002.s8.xrea.com/proxomitron/db_matching_rule.html#$NEST
675 :
think :2006/05/27(土) 22:23:48 ID:qHe52HsA0
フィルタとしては>674の test3 で問題ないはずですが、これはマッチしてくれません。 試しに該当ソースを切り出して、サイズを測ってみると 36,434 バイト あります。 (文字コードが変換されているので、多少の誤差はあります) ギリギリのところでProxomitronが扱えるLimit(32767) を超えてしまっているので、Proxomitronで全てにマッチさせることは出来ないんです。 後継の Proximodo はLimitに融通が利くので、それで解決できる可能性はあります。 # test3 が "Invisible" のフィルタ名になっているのは、ミスです。流してくださいw
こういうことでは? [Patterns] Name =
あら? [Patterns] Name = "YouTube Kill index" Active = TRUE URL = "$TYPE(htm)www.youtube.com/index" Limit = 256 Match = "<div class="contentListStandard">" Replace = "\k"
679 :
think :2006/05/28(日) 00:03:56 ID:1EZbyBwj0
>>678 再度、試したら動きました。
恥ずかしながら、キャッシュが効いていたようです。
失礼しました。m(_ _)m
think氏がミスるなんて珍しいこともあるもんだ。 ところでどうして$TYPE(htm)をURL項目の前に置く人と後ろに置く人がいるけど何故だぜ?
>>680 ミスしたら驚かないといけないほど凄い人なのか?
682 :
think :2006/05/28(日) 11:18:38 ID:1EZbyBwj0
>>680 人間誰しも失敗はしますよ。
大切なのは「失敗にどう対処するか」だと思います。
> $TYPE(htm)をURL項目の前に置く人と後ろに置く人がいるけど何故だぜ?
単に、好みの問題という気がしますね。
私はその日の気分で変えますので、統一されていなかったり。
683 :
646 :2006/05/28(日) 11:32:18 ID:Bjc8Q4ZS0
>669 見たことのないサイトだと思ったのですが、think 氏のサイトだったとは。 しかも、Proxomitron のソースビューアで生成とはまたマニアックなことを。 理論的な解説もありがとうございます。 これで、ほとんどのフィルタに $TYPE を使えそうです。
2ちゃんのクッキー仕様変更に対応出来ないのかな?
FIX-MIMEフィルタでHTMLのContext-typeをtext/htmlにするかどうかは 使用ブラウザによって切り分けられないかな。 IE(コンポ含めて)ならtext/htmlじゃないとうまくいかないけど Opera(Firefoxも?)の場合はうまくないみたい。
>>684 とりあえずこれで通りました。
どこかでいただいた、
Cookie: Be 2ch Login (out)
を書き換えただけのものです。
[HTTP headers]
In = FALSE
Out = TRUE
Key = "Cookie: hana=mogera (out)"
URL = "[^/]++.2ch.net/(^test/read.cgi)"
Match = "(hana\=\w |(\w )\#)+$SET(0=; hana=mogera)"
Replace = "\@\0"
>>687 補足:使ったブラウザは、twintail/v1.3.0.3 (未対応ブラウザ) です。
ヘッダフィルタでセットしたグローバル変数をウエブフィルタで読みだすことは出来ますか? こんな感じにしてみたんですが、うまくいきません。 [HTTP headers] In = FALSE Out = TRUE Key = "Referer: Flexible Referrer (Out)" Match = "\1$SET(OrigRef=\1)$LST(Flex-Refer)" Replace = "\0" [Patterns] Name = "Saved From" Active = TRUE Limit = 128 Match = "(< html [^>]+ > | < head [^>]+ > | < body [^>]+ >)\0$STOP()" Replace = "\0\r\n" "<!--\r\n" " Saved from: \u\r\n" " Refered from: $GET(OrigRef)\r\n" " DATA: $DTM(Y/M/D T (w))\r\n" "-->\r\n"
そこまで出来るのならデバックモードやログウインドウ、$LOGや$ALERTコマンドなどを 使って自力でデバックして下さい。 デバックするための道具は揃っているんですから。
自己解決しました。$SETコマンドをReplaceに置けばいいみたいです。 数字変数は置換テキストで呼ばれないと展開されないんですね。 Helpに書いてありました。ごめんなさい。
693 :
think :2006/05/29(月) 16:43:46 ID:Bj6BJ17o0
>>690 ,692
> 数字変数は置換テキストで呼ばれないと展開されないんですね。
いえ、この場合はそれが原因ではありませんよ。
「変数の初期化」だけなら検索表現で扱うことが出来ます。
>690の原因はProxomitronのバグと思われる動作にあります。
Proxomitronは * もしくは「*と同じように働く変数」の後ろに$SETがある場合、* を正常に処理しなくなります。
Match = "\1$SET(OrigRef=\1)..."
具体的には上記の部分ですね。
これを以下のように変えてやれば、正常に動作するはずです。
Match = "(?+)\1$SET(OrigRef=\1)..."
* と違い、?+ は盲目的に全ての文字列を消費しますので、ローカル変数の初期化は正常に処理されます。
# 最も、この場合はWebフィルタで $OHDR(Referer: \1) を宣言するだけでも解決できます。
# その方が一般的ですね。
694 :
think :2006/05/29(月) 16:48:13 ID:Bj6BJ17o0
×「変数の初期化」だけなら検索表現で扱うことが出来ます。 ○「グローバル変数の初期化」だけなら検索表現で扱うことが出来ます。
>>693 詳しい解説ありがとうございます。
$OHDRはreferer書き換えヘッダフィルタを使っているので、
書き換え後のrefererになってしまい、意図する動作になりませんでした。
情報不足の質問で申し訳ない。
さっき作ったフィルタうpしてみる Name =
すげえ
Match = "?+" は後ろを見ないから Match = "*" よりも早いかと思ったら逆なんだ・・。 適当なフィルタを書いて試してみたら*のほうが150倍早かった。
ベンチマークとれるん?
700 :
think :2006/05/30(火) 00:27:02 ID:2X6FMxDT0
>>698 確かに * の方が速いようですね。
ただ、150倍の速度差が出るためには、相当量のソースにマッチさせなければならないと思います。
私がテストした限りでは、3倍以上の差が開くことはありませんでした。
「+」は後ろを全く見ないといっても、 「[^a]+」とか「?」以外の可能性もある訳で、 「?+」でも1Byteずつ「?」にマッチするか確認するように なってる(特別に最適化はされてない)んじゃなかろうか で、Match =
途切れた で、Match =
何故か書き込みに失敗する… もう一度 で、Match = "*" の場合、Byte Limit分切り取るだけなので (特別に最適化されている)高速なんじゃなかろうか # たまにはWikiも弄ってやってください
>>700 こちらでは50バイトのテキストで約20倍の結果になりました。
テストの仕方に何か問題があるのでは?
>>701 おそらくそういうことでしょうね。
Name =
"Colored Marking -link-"
Active = TRUE
Multi = TRUE
URL = "$TYPE(htm)"
Bounds = "<a\s[^>]+>*</a>"
Limit = 512
Match = "\1($LST(colorword))\0 \2"
Replace = "\1<span style="$GET(fst)">\0</span>\2 $SET(fst=)"
--------- colorword.txt記載例 ---------
# 2chソフトウェア板
$URL(
http://pc7.2ch.net/software/subback.html )(proxomitron|\(705\)|(2ちゃんねる用|2ch|2ちゃん専用|2ちゃんねる)ブラウザ)$SET(fst=font-size:16px!important;color:orange;background-color:blue;font-weight:600)
# yahoo 天気 テレビ
$URL(
http://www.yahoo.co.jp/ )([%C5][%B7][%B5][%A4]|[%A5][%C6][%A5][%EC][%A5][%D3])$SET(fst=font-size:15px!important;color:blue;background-color:#b0c4de;font-weight:600)
--------- 記載例 終わり ----------------
特定のページの特定のリンク内の文字を文字色、ハイライト等で修飾します。
subback系、ニュース系のリンク羅列型サイトに。
<span style*>で記述可能なもの全てで文字を修飾できます。
しかし
<a href="*" title="うんこ味の秘密">マヨ味のうんこへ100の助言</a>
$URL(
http://* )うんこ)$SET(fst=color:orange)としてもtitleのほうにマッチ
<a href="*"><b>忘れよう<img src="shit.gif" alt="うんこトラップ" hspace="1" width="13" height="13" border="0">ニュースうんこ</b></a>
同様に<img *>内のaltのほうのうんこにマッチしてしまいます
$URL(
http://* )うんこ)$SET(fst=color:orange)
↓
$URL(
http://* )うんこ$SET(fst=color:orange)
708 :
think :2006/05/31(水) 00:50:12 ID:oIoynEQ40
>>701-703 ふむふむ…、そういう考え方もありますね。
> たまにはWikiも弄ってやってください
私がWikiを編集しても、同じ内容を自サイトにも書くわけで二重投稿になってしまう、と思っています。
解説サイトが複数あるという事は、サイトの数だけ解説の仕方があるという事でもあると思うんです。
私が「私の最適と思う書き方で解説する」なら、Wikiの編集も「編集者の最適と思う書き方で解説する」のが一番だと思います。
そうして複数の見方の解説があった方が、訪問者も「私は〜の解説の方が解りやすいな」のように選り分けが出来るんじゃないでしょうか。
ですので、(言葉が違えば)同じ内容が複数の解説サイトにあっても良いですし、ある解説サイトの内容を訪問者が理解して、
その訪問者が自分の言葉で書いた解説サイトを開く、このようにしてサイトが増えていくのが理想だと思います。
>>704 > こちらでは50バイトのテキストで約20倍の結果になりました。テストの仕方に何か問題があるのでは?
そうですね、テスト条件の違いから、結果が変わっている可能性が高いですね。
差し支えなければ、そちらのテスト方法の詳細を教えていただけると参考になります。
私のテスト方法は自サイト(Thinking Archive)にありますので、もし未読でしたらご覧下さい。
>>708 マッチ欄は * か ?+ のみでテストしてみて下さい。
Name = "* ?+ test1"
Active = TRUE
Limit = 32767
Match = "*"
Replace = "Match"
Name = "* ?+ test2"
Active = TRUE
Limit = 32767
Match = "?+"
Replace = "Match"
対象テキストの文字数が多ければ多いほど倍数が増えることから ?+ は * に比べると
止まって見えるほど遅いと思われます。 (対象テキストが長いほど計測誤差は小さくなります)
サイトを拝見しましたがあの計測方法は $NEST(<test>,*,</test>) と $NEST(<test>,?+,</test>) の
タイムが何倍かを比較するものであり、* と ?+ のタイムの倍数を計測出来るものではないと思います。
$NESTの処理時間も含まれるためです。 それでも3倍の差が出るというのには驚きました。
それとWikiにも書いてありますが * と ?++ は正確には同義ではありません。
例えば Match = "a*" と Match = "a?++" では対象テキストが "abc" の場合結果が異なります。
フィルタを書くときに ?++ を最後に置くことはないでしょうが念のため。(^-^;)
ここ見てると思うのでついでにNoriyaさんへ * の代わりに ?++ を使うと遅くなります。 ?++ も * に比べるとかなり遅いです。 もしこれが分かってて好きで使ってらっしゃるのでしたらごめんなさい。(^-^;A)
711 :
think :2006/05/31(水) 18:42:04 ID:oIoynEQ40
>>709 詳細、かつ、具体的な指摘に感謝です。m(_ _)m
便宜上、引用する順序を変更させていただきます。
> 例えば Match = "a*" と Match = "a?++" では対象テキストが "abc" の場合結果が異なります。
なるほど、そんな違いがあるとは知りませんでした。
後ほど、自サイトに反映させたいと思います。
ご指摘有難うございました。
> マッチ欄は * か ?+ のみでテストしてみて下さい。
これは…、確かに大きく差が開きますね。
改めて、「* は最適化されてるんだな」とつくづく感じました。
* と ?++ の違いから、指摘された速度低下の原因もなんとなくですが、わかりました。
> サイトを拝見しましたがあの計測方法は ... * と ?+ のタイムの倍数を計測出来るものではないと思います。
「実際にフィルタ作成に使う可能性のある表現」を選んでいるというポリシー上、かなり悩みましたが、
ご指摘通り正確な比較テストになっていないので、こちらも修正しようと思います。
有難うございます。
(これを修正するなら Bounds も修正しないと一貫性がない気もしますが、良い表現を思い付かなかったので妥協します。)
?+ が遅いことも解ったので、全面的に「?+ → *」の置き換えもしておきます。
712 :
名無しさん@お腹いっぱい。 :2006/06/01(木) 11:15:23 ID:NEiQ243O0
foo barにもbar fooにもbarのみfooのみにもマッチするのは ((*foo&*bar)|foo|bar)こんなふうに書かないとダメなんでしょうか? もっと省略出来ないんでしょうか
<([^>]++(foo|bar))+{1,*}*>
714 :
名無しさん@お腹いっぱい。 :2006/06/01(木) 12:08:21 ID:NEiQ243O0
てst3
= = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = ・サンプルテキスト <012345678901234567890123456789012345678901234567890123456789 bar 0123456789> = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = ・++バージョン <([^>]++(foo|bar))+{1,*}*> プロファイル結果... サンプルテキスト : 79 バイト 成功マッチ数 : 1 平均時間 : 0.038000 (ミリ秒) = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = ・+バージョン <(((^foo|bar)[^>])+(foo|bar))+{1,*}*> プロファイル結果... サンプルテキスト : 79 バイト 成功マッチ数 : 1 平均時間 : 0.088000 (ミリ秒) = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = +は++より速いという定説も崩壊するかも...。
>>715 速度テストでしたか(^-^;
紛らわしいので勘違いしてしまいました。
すいませんm(_ _)m
>>716 (foo bar|bar foo|foo|bar) でどうですか?
(foo( bar|)|bar( foo|)) という書き方も出来ますがメンテしにくくなるのでお奨めしません。
>>718 ううむ・・他の方にお願いしたいのですが
頭の悪い奴だな、具体的には何がしたいの?
ID:tKxARmyU0 が相当いやらしい奴だというのは分かった。
>>720 簡潔に二つにしただけですので
3つ4つとなれば難なので省略できるならその記述を聞きたかったのです
*あなた様の回答はもう必要ありませんので悪しからず
失敬なやつだったな
>>722 の意味も良く分からないし、どうやら池沼だったみたいだね。
726 :
エスパー :2006/06/01(木) 14:01:45 ID:8jELFQRB0
説明を簡潔にするために foo と bar の二つだけに分けたけど、 実際は fo ob ar などの3つや、 f oo b ar の4つなどにもマッチさせる簡単な記述が聞きたかったのです *消えろ
ID:NEiQ243O0が自分のやりたい事を他人に伝える事すらろくに出来ない奴だと言うのは理解った
ID:tKxARmyU0がキモイやつだってことは解った
本人乙
感謝の気持ちを持ちましょう
731 :
think :2006/06/01(木) 17:04:41 ID:EgT93MN80
質問時に状況説明が足りないのは、ある程度は仕方がないと思います。 そもそも、細部まで理解している人なら、質問せずとも自己解決できる可能性が高いわけで…。 # こういうときに回答者は想像力を働かせて、「質問者の状況を推測して回答する」という作業をしばしば行いますが、 # 見当違いの推測をすると、すれ違ってしまいます。 >712 > foo barにもbar fooにもbarのみfooのみにもマッチするのは 「fooのみ」「barのみ」は判ります。 残りの状況が今ひとつ分からないので、質問させていただきます。 Q1. 「foo bar」や「bar foo」はそれぞれの単語の間に空白があるとき、と判断して良いのでしょうか? それとも、「ワイルドカード」を間に挟むという事でしょうか? Q2. 状況はある程度想像して、Bounds で制限された領域を検索しているものとします。 その場合、「fooのみ」「barのみ」にマッチさせれば、結果的に「foo bar」「bar foo」にもマッチしますが、それではダメなのでしょうか? Q3. 「Webページ上に表示される文字」に汎用的にマッチさせたい、という事ですか? 「リンクテキストにマッチさせたい」とか「属性値にマッチさせたい」とか、状況によって表現の仕方が変わります。 Q4. 「もっと省略出来ないんでしょうか」という事は「可能な限り、短い表現にしたい」という解釈で良いのですよね。速度は考慮せずに。 「具体的にどうしたいというわけではなく、スマートな表現はありませんか?」と聞いているような気もしますが、 それでも、もう少し具体的な状況説明が欲しいところです。 例えば、例として掲示された ((*foo&*bar)|foo|bar) は検索表現としては普通は使いません。 せめて、Bounds か ダブルアンバサンド で制限しませんと。 「フィルタ」と「マッチさせたいソース」を例としてあげてもらえると、アドバイスがつきやすいかと思います。 (個人的なフィルタなら全てを開示する必要はなく、必要な箇所だけ抜き出して簡易フィルタを作成していただければと。)
質問すらまともに出来ない人の相手をしても仕方ないと思いますが・・。
それはさておき、
>>549 の ((^checked)[^>])+ の処理時間を検証してみました。
= = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = =
・ サンプルテキスト(30000バイト)
start 01234567890123456・・・(略)・・45678901234567890 test >
= = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = =
・ think氏開発の否定
Match = "start ((^test)[^>])+>"
プロファイル結果...
サンプルテキスト : 30000 バイト
成功マッチ数 : 0
平均時間 : 30.485000 (ミリ秒)
= = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = =
・ && を使っての否定
Match = "start ([^>]+>&&(^*test)*)"
プロファイル結果...
サンプルテキスト : 30000 バイト
成功マッチ数 : 0
平均時間 : 16.730556 (ミリ秒)
= = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = =
このテストでは倍近く遅いという結論が出ましたがいかがでしょうか。
733 :
名無しさん@お腹いっぱい。 :2006/06/02(金) 16:15:49 ID:kRKYDBu10
Kill Unexpected Protocolsで画像とか書庫の破損するのって修正された?
>>732 乙、こちらでも再現しました。 遅い、難解、ということで使う価値ゼロです。
text = "0123456789012345・・・(略)・・・0123456789012345 href="
◇ match = "((^href=)[^>])+href="
>サンプルテキスト : 30000 バイト
>成功マッチ数 : 1
>平均時間 : 27.958333 (ミリ秒)
◇ match = "[^>]++href="
>サンプルテキスト : 30000 バイト
>成功マッチ数 : 1
>平均時間 : 13.482143 (ミリ秒)
736 :
think :2006/06/02(金) 21:00:27 ID:Im9jpjRh0
>>732 お疲れ様です。
私もテストしてみましたが、全体的に速い結果になりました。(比率は同じです)
テスト方法が間違っているのか、環境の違いか…。
[Patterns]
Name = "not test1"
Active = TRUE
Limit = 32767
Match = "start((^test)[^>])+>"
Name = "not test2"
Active = TRUE
Limit = 32767
Match = "start ([^>]+>&&(^*test)*)"
Name = "not test3"
Active = TRUE
Limit = 32767
Match = "start(^[^>]++test)[^>]+>"
not test1 … 6.0788613ミリ秒
not test2 … 3.4323333ミリ秒
not test3 … 3.328ミリ秒
今回は面倒だったので、3回測った上での平均値です。
「not test3」はソースの "test" を前の方におけば、「not test2」との違いが確認できます。
737 :
think :2006/06/02(金) 21:03:42 ID:Im9jpjRh0
> このテストでは倍近く遅いという結論が出ましたがいかがでしょうか。 >549では頭が固かったので、速度は考えてませんでしたね…。 実際、これが役に立つのは否定したパターンを変数に取り込む時ぐらいだと思います。 あえて、複雑な表現を使うことはない、という735氏の意見に同意します。 ただ、遅いというのは状況によるなと。 2倍の差があるとしても、実際にフィルタで使う表現なら、0.5ミリ秒の違いであることもあるでしょう。 そういった意味で、2倍ぐらいならそれほど大きな速度差ではないと私は思います。
738 :
732 :2006/06/03(土) 16:57:31 ID:wccxCOmQ0
>>735 検証ありがとうございました。
>>715 と同じような結果になってますね、
+と++の差も約2倍になるとは面白い。
>>736-737 詳細な検証ありがとうございます。
全体的なタイムが遅いのはこちらのPCが古いからです。[win/me機]
not test3は否定の対象が多く登場するテキストで効果絶大でしょうね。
> 2倍
差を体感するのは不可能だろうし + による否定も十分実用に耐えられるものだと思います。
自分のように遅いPCを使っているとその差すら気になってしまいますがw
乙
ギコナビでオミトロンを通してスレッドをいじりたいんですが、うまくいきません
具体的には
>>740 のアドレスの拡張子から.htmlを消せればいいのですが、以下のフィルターではだめでした
[Patterns]
Name = ".jpg.html Automatic Changer"
Active = TRUE
Multi = TRUE
Limit = 256
Match = "tp://\1/cgi-bin2/src/\2(.jp(g|eg)|.png|.bmp|.swf)\3.html"
Replace = "tp://\1/cgi-bin2/src/\2\3"
IE等では問題なく表示されるのですが、なぜでしょう?
ちゃんとDATファイルのアドレスに適応されるようにしてる? MIMEも考慮しないとダメかも
>>744 万事解決しました
ありがとうございました
どう致しまして
>>744 長年悩んでいた水虫が治りました
ありがとうございました
746 :
名無しさん :2006/06/04(日) 17:20:57 ID:ceO2hCva0
proxmine-uploaderの「PmU_0269.zip」2ch Thread Table Reformer 5.7を現状の仕様 に改造出来る方居ませんか? 居たら、是非、改造してください。
グーグルイメージがなんか変わったみたいだね…
>>747 「あいうえお」で検索したら一番下にすごい画像が出てきてビックリした。
JavaScriptで環境変数取得されないようにしたいんですが JavaScriptを外部ファイルから読み込む場合にも対応するには どうすればいいですか?
>>741 のようにjpg.html、zip.htmlのhtmlをスルーするのって出来ないのかな。
751 :
think :2006/06/07(水) 20:41:47 ID:XcCg65NE0
>>750 2chブラウザではなく、IEやFirefoxなどの一般的なブラウザで、という意味ですよね?多分。
> jpg.html、zip.htmlのhtmlをスルーするのって出来ないのかな。
可能ですが、多少の制限付きです。
[HTTP headers]
In = FALSE
Out = TRUE
Key = "URL: Remove .html (Out)"
Match = "(*.(jp(g|eg)|png|bmp|swf|zip))\0.html(^?)"
Replace = "$JUMP(\0)"
パスワード入力を求めるアプロダを考慮すると、そのままだと実用的ではないと思います。
リストでアプロダを例外指定すると、良いかと。
# 誤爆を恐れずに汎用フィルタにするなら、拡張子の表現を [0-9a-z]+{1,5} にして下さい。
752 :
think :2006/06/07(水) 20:55:37 ID:XcCg65NE0
>>749 > JavaScriptを外部ファイルから読み込む場合にも対応するにはどうすればいいですか?
Webページフィルタでマッチできますが、そういうことではないんでしょうか。
後は、「URLマッチで $TYPE(js) に制限するとなお良い」というぐらいで大きな注意点はないと思います。
吐き出す環境変数を変えられるブラウザを使ったほうがいいよ。 それかjsを相殺するjsをオミトロンで挿入する。 jsが暗号化されてた場合でも効くように。
どなたか、東芝のHDDレコーダーお持ちの方いますか? ネットdeナビの画面で、リンクの画像を全てテキストに変換したいのですが 画像がJavascriptで指定されているみたいで、よくわかりません。 どうか、よろしくお願いします。
うpろだにページのソースをうpしる。 外部jsファイルがあるならそれも一緒に。 ブラウザの「ファイル」メニューから「完全保存」とか「すべて保存」とかを選ぶといい。
>>755 早速のお返事ありがとうございます。
うpろだに完全保存したものをそのままうpさせていただきましたので
お時間があるときにでもお願いします。
>>756 [Patterns]
Name = "Net de Navi test"
Active = TRUE
URL = "192.168.0.[0-9]/(*/)+control.htm"
Bounds = "<img\s*>"
Limit = 256
Match = "*\ssrc=$AV(*/"
"(cnt_nor.gif$SET(0=メインメニュー)"
"|iepg1_nor.gif$SET(0=iEPG 1)"
"|iepg2_nor.gif$SET(0=iEPG 2)"
"|lib_nor.gif$SET(0=ライブラリ)"
"|prg_nor.gif$SET(0=録るナビ)"
"|set_nor.gif$SET(0=本体設定)"
"|tit_nor.gif$SET(0=タイトル一覧)"
"|tit_th_nor.gif$SET(0=タイトルサムネイル一覧)"
"|help_nor.gif$SET(0=ヘルプ)"
"|remo_nor.gif$SET(0=リモート)"
"|help_nor.gif$SET(0=ヘルプ))"
"*)*"
Replace = "\0"
うpろだにあげられたページはこれで置換出来るはず。 他に画像リンクはある?
>>757 さん、仕事早いですねぇ。ありがとうございます。
早速、試してみたのですが
とうやら、control.htmを指定すると機能しないみたいです。
外してみ特に問題なさそうなので、このまま使ってみたいと思います。
本当にありがとうございました!o(´▽`o)
759 :
757 :2006/06/09(金) 13:10:21 ID:lsGa0p3E0
>>758 ファイル名間違えてましたか、スマソ〜。
でも意外に簡単に書けて良かったw
最後にうpろだのファイルの削除お願い、消さないといつまでも残っちゃう。
Gmailを利用する際に右端に表示されるテキスト広告を消すフィルターはありますか? 作りたいのですが、まったく知識のない状態で、、、
GmailってSSLつかってなかったっけ?
よくサイトの右上に張り付いていて数秒後に引っ込む広告あるけどあれ何とかなりませんか?
そのためのAdList
なるほど
765 :
762 :2006/06/11(日) 17:21:49 ID:BwW5MwZ80
いや広告自体は消えるんだけど、でっぱりがひっこまなくてサイトが見にくい見にくい
なるほど
livedoor検索の広告消しお願いします。
>>767 image.click.livedoor.com/
を、AdList に追加じゃだめなん?
そこまでする義理はさすがにない
ここには厨にマジレスする自称上級者がいるから平気。
さすがに、これはひどい
773 :
768 :2006/06/14(水) 11:23:03 ID:i/r0jUsJ0
感じ悪い常連が居るスレやね。
テンプレ読んでから書くのがマナーだろ。
target="_blank"を除去したいんだけど,スマートな方法ってありますか。 素のままでマッチングルールを作ると,先頭の"t"や"ta","tar"あたりの文字列にヒットして 重いルールになりそうです。 そもそも,たしかHTMLの標準を作る団体ではtargetは非推奨だったような記憶がありますが。
非推奨ってことはcssでやれということでは。 usercssで出来るんじゃ? それと素のままでマッチさせても重くないよ、むしろ軽いほう。
[Patterns] Name = "Disable link target: _blank (2006-02-02)" Active = TRUE Multi = TRUE URL = "$TYPE(htm)" Bounds = "<(a|form|area|base)\s*>" Limit = 256 Match = "\0\starget=$AV(_blank)\1" Replace = "\0 target="_top"\1" [Patterns] Name = "_blank to _top" Active = TRUE Bounds = "<(a|base|form)\s*>" Limit = 256 Match = "\1\starget=("|)\2_blank\3" Replace = "\1 target=\2_top\3" [Patterns] Name = "Kill target="_blank"" Active = TRUE URL = "$TYPE(htm)" Bounds = "<(a|base|link|form)\s[^>]+>" Limit = 256 Match = "\0target=$AV(_blank)\1" Replace = "\0target="_top"\1"
<base target=_top>
<a href="
http://www.hoge.ne.jp/ " target="123">Link</a>
これでも駄目だった。
最近のブラウザには ”新しいウインドウを開かない” っていう設定があるから
それ使ってもいいかも。 でもURLによって有効・無効を切り替えられないから
あまりおすすめしない。
>>778 どのウィンドウで開くのかはユーザー側に選ぶ権利があるので非推奨
だったような
>780 ありがとうございます。 適当な大きいサンプルでプロファイルしてみたところ一つ目のルールと二つ目のルールがほぼ同じ速さでした。 3つ目は倍の時間が掛かりました。 上で話題になったようなアスタリスク効果みたいですね。 >781 愛用のOperaにはついていませんでした。 「新しいページを自動で開かない」という設定はありますが,この話とは違うようです。 私も>782という話をどこかで読みました。
個人的には外部へのリンクなら_blankついててもいいな。
785 :
778 :2006/06/15(木) 16:42:17 ID:4+LpsbvT0
>>783 Operaでも無理ですか。 ということはこれが出来るブラウザってほとんど無いのかな?
私が使ってるFirefoxはTabMix Plusで実現出来ました。
YAHOOのトップページのエンターテイメント情報の写真と記事を 表示させなくするフィルタってありますか?
yahooの広告消しなら今までにいくつか出たけどリニュ後のは見たことない。
>>788 <!-- ENTERTAINMENT_BOX -->*<!-- ENTERTAINMENT_BOX end -->
>>789 消えた
ヘ⌒ヽフ
( ・ω・) d
/ ~つと)
>>789 漏れからもありがと〜。
リニュ前用のフィルタに追加したら広告全部消えてくれた。
793 :
787 :2006/06/16(金) 04:16:14 ID:06pWQSEJ0
く・・・どこに追加すればいいのかわからん・・・
794 :
787 :2006/06/16(金) 04:24:08 ID:06pWQSEJ0
>>792 後生です
あなたのフィルタ張ってくだされ
>>794 本文が長すぎるって怒られたんで分割します。 次のレスと繋げてから入れて下さい。
[Patterns]
Name = "YAHOO! JAPAN Ad Killer 2006-06-16"
Active = TRUE
URL = "(www.|)yahoo.co.jp/(index.html|[?#]|(^?))"
Limit = 32767
Match = "<!-- ENTERTAINMENT_BOX -->*<!-- ENTERTAINMENT_BOX end -->"
"|<!-- TOPMSG -->*<!-- TOPMSG end -->"
"|<!-- TopLink TOPTXT -->*<!-- TopLink end -->"
"|<!-- TopLink UNDERTXT -->*<!-- TopLink end -->"
"|<!-- OSHIRASE -->*<!-- OSHIRASE end -->"
"|<!--P-->*<!--/P-->"
"|<!--1-->*<!-- /[^>]++ -->"
"|<!-- [%a5][%bf][%a5][%a4][%a5][%c8][%a5][%eb]([%c2][%d3]|) -->" "*<!-- /[%a5][%bf][%a5][%a4][%a5][%c8][%a5][%eb]([%c2][%d3]|) -->" "|<!--- [%a5][%e9][%a5][%a4][%a5][%c8][%a5][%dc][%a5][%c3][%a5][%af][%a5][%b9][%a5][%bb][%a5][%eb] --->" "*<!--- /[%a5][%e9][%a5][%a4][%a5][%c8][%a5][%dc][%a5][%c3][%a5][%af][%a5][%b9][%a5][%bb][%a5][%eb] --->" "|<!-- ([%b0][%ec]|[%c6][%f3]|[%bb][%b0])[%ce][%f3][%cc][%dc] -->" "*<!-- /([%b0][%ec]|[%c6][%f3]|[%bb][%b0])[%ce][%f3][%cc][%dc] -->" "|<img\s[^>]++$AV(*pa.yahoo.co.jp/bc\?)[^>]+>" "|<!-- CONTENTS end -->*<!-- PREM_BOX end -->*</table>*(</table>)\#" "|<!-- YBB_BOX -->*<td>\n(^(^<!-- EVENT_BOX -->))" "|<table border=0 cellspacing=0 cellpadding=3 width=100%>\s<tr>\s<td align=center>\s<small>\s+<nobr>" " <a href=\"/r/lpb\"*</a></nobr>\s</small>\s</td>\s</tr>\s</table>" "|<!-- TRB -->*</table>\s(^(^<table[^>]+>\s+ <tr>\s+<td align="center"><small><b><a href=[^>]+>" " [%B9][%F1][%C6][%E2][%A4][%CE][%C5][%D4][%BB][%D4]</a>))$SET(\#=</table></table></table></table>)" Replace = "\@"
797 :
787 :2006/06/16(金) 04:51:13 ID:06pWQSEJ0
<!-- ENTERTAINMENT_BOX -->*<!-- ENTERTAINMENT_BOX end --> より $NEST(<!-- ENTERTAINMENT_BOX -->,<!-- ENTERTAINMENT_BOX end -->) の方が速いお^^
<!-- で始まるものをまとめたほうが効果ありそう。
アスタリスクと同じで何らかの最適化が施されているのではないかと勝手に想像してみる
802 :
名無しさん@お腹いっぱい。 :2006/06/17(土) 22:40:24 ID:oqt7Jskg0
IEのKB912945パッチでFlashとかが 「このコントロールをアクティブ化して・・・」と出て 一度クリックしなければならなくなったのを javascriptのdocument.writeなどを使ってクリックせずにして 昔の挙動にするフィルターってありませんでしょうか?
sage忘れました。すみません。。。
外部javascriptファイルでっていうのがネックだ。 該当タグをクエリとして外部javascriptファイルの URLに追加すればなんとかなるかな? それとjavascriptがオフだと見れなくなってしまうので <noscript>〜</noscript>の追加もしたほうがいいです。 <!-- 僕はIEコンポ系ブラウザは使わないので華麗にするぅします。 -->
拡張子に関するフィルタで,例えば拡張子のリスト(ext-list)に含まれる拡張子のファイルをDLするときには リファラーを送ろうとすると $URL(*$LST(ext-list)) とやっても問題ないですか? *の使い方が未だによく理解できていないのですが。(最長一致ではないというのが)
Proxomitronの「*」は 普通の正規表現の「.*?」に等しい。
809 :
802 :2006/06/19(月) 20:22:39 ID:9Sjw5dlD0
>>804 >>805 レスサンクス
最初
>>805 で紹介されてるページの方法をやってみたけどうまくいかなかったんので色々試してみました。
ttp://homepage3.nifty.com/fs/sozai/dw.html 今、ここのページを参考にしています。
ここに置いてあるJavaScriptのファイルを
そのままproxomitronのインストールフォルダの中のhtmlフォルダにおいて
[Patterns]
Name = "Eolas_Head"
Active = TRUE
Limit = 2048
Match = "<HEAD\1</HEAD>"
Replace = "\1<script type=\"text/javascript\" language=\"JavaScript1.2\" src=\"
http://Local.ptron/dw.js\ "></script>"
"\r\n</HEAD>"
810 :
802 :2006/06/19(月) 20:23:18 ID:9Sjw5dlD0
[Patterns] Name = "Eolas_Body" Active = TRUE Limit = 2048 Match = "<OBJECT\1</OBJECT>" Replace = "<script Language="JavaScript" type="text/javascript">\r\n" "<!--\r\n" "dw('<OBJECT\1</OBJECT>')\r\n" "// -->\r\n" "</script>\r\n" こんな感じのフィルター作ってみました。 『\1』の中のテキストから改行コードを削除すれば これで行けそうな気がするのですが、 改行方法を消す方法ありませんか? embededタグに対応してないとか、 正規表現の効率悪いとかは、 まだ書き方が良くわかってないって事でとりあえず後回しで(汗
omt.sub.jp/pc/prox.php は有名な地雷フィルター公開ページです。 リンク集に載せるのはどうかと。 Googleランクも上がっちゃうし。 フィルタの修正版を作ってメールで送ってみたらサイト主さんが修正したフィルタに 差し換えられてました。 結局それも意図しない動作をする地雷フィルタでしたが。 ちなみにメールの返信はありませんでした。
あそこのフィルター Multi=TRUEとか平気でなってるし・・・
In = FALSE Out = TRUE Key = "Referer: Control Referer (Out)" Match = "\9$LST(RefererControl)$LOG(RReferer: Control Referer)" Replace = "\0" これを In = FALSE Out = TRUE Key = "Referer: Control Referer (Out)" Match = "( $TYPE(htm)\9$LST(htmRefererControl)$LOG(RReferer: Control Referer) | \9$LST(nonhtmRefererControl)$LOG(RReferer: Control Referer )" Replace = "\0" こんな感じに書き換えられませんか?
そんな感じに書き換えろ
いやです
なんだと!
google image (040516) +js これが使えなくなっている
あたしのために争うのはやめて!><
google image cfg 使えるようになってました。 失礼しました。
このフィルター好きなのですが、サイトの方に変更があったようで使えなくなりました。 どなたか修正方法を教えてください。 Name = "Google image redirector" Active = TRUE URL = "images.google." Limit = 2000 Match = "<a href=/imgres\?imgurl=\0\&imgrefurl=\1\&h=*>" Replace = "<a href=$UESC(\1) target=_blank>link</a> <a href=$UESC(\0) target=_blank>"
ぐぐるのイメージ、検索すると検索結果のイメージそのものが表示されたりされなかったりするね。
リダイレクトが一回はさまるようになってるお。 なんなんだ、この仕様。
>Name = "Google image redirector"
URL: Google image redirector
VistaがProxomitronをサポートしなかったら 漏れは永遠にVistaに移行しないよ、ただそれだけのために
827 :
think :2006/06/24(土) 11:03:12 ID:SvhgaosT0
>>820 掲示されたフィルタは有効なようですが…、私の環境だけでしょうか。
昨日の時点でも使えましたよ。
>>822 今はリダイレクトしなくなっていますね。(昨日は確かにリダイレクトしていたのですが。)
Googleはたまに仕様を(試験的に)変更するので、長い目で見た方が良さそうです。
Amazonのアダルトコンテンツの年齢認証をパスするフィルターってありますか?
つ[時間というフィルター]
830 :
820 :2006/06/24(土) 20:22:35 ID:PYy0US2z0
>>827 掲示したフィルタは無効なままです。
現時点で望む結果を得られていません。
831 :
think :2006/06/24(土) 20:44:15 ID:SvhgaosT0
>>830 妙ですね…。
私の環境では相変わらず、820のフィルタは有効でした。
一応、私なりに手直ししたフィルタも紹介しておきますが、これでダメだったら環境依存も疑ってみてください。
[Patterns]
Name = "Google image redirector remake"
Active = TRUE
URL = "images.google.co(m|.jp)/images\? $TYPE(htm)"
Limit = 1024
Match = "<a\s[^>]++href=$AV(/imgres\?imgurl=([^&]+)\0\&imgrefurl=([^&]+)\1*)(^(^[ >]))"
Replace = "<a href="$UESC(\1)" target="_blank">link</a> <a href="$UESC(\0)" target="_blank""
念のため、伺いますが、「キャッシュが効いている」という事はありません?
あとは、優先度の関係で他のフィルタが先にマッチしているとか。
[Webフィルタ] の最上位にフィルタを置いて改善されるなら、他のフィルタが先にマッチしている可能性が濃厚です。
>>820 私のところでも10通りほど試しましたが問題ありませんでした。
そんなことより
>URL = "images.google."
ここが驚き。
>>831 わざわざありがとうございます。
結論から言うと、上手く行きませんでした。
理由は分かりませんが、私だけのようなので諦めます。
[テスト]
インターネット一時ファイル全削除
WEBページフィルタは、Google image redirector remakeと
フィルタ確認用のSaved from URLのみ。
ブラウザはIEとMoonで結果は同じ。(Saved from URLのみOK)
>>832 の人もありがとう。
ますます、一般的で無さそうな事が分かりました。
Google image の話ですが、Google側で仕様を切り替えまくってる気がします。 確か3日前にフィルタが無効になっているのを確認したのですが、 その後また有効になったり、かと思うとまた使えなくなったり。今は使えます。 ブラウザの設定は何もいじってないし、検索してるキーワードは同じなのでたぶん向こうの問題でしょう こんどおかしくなったらソース捕獲してみます
>>747 を言ったのは俺なんだけど、その時は
>>821 と同じ症状でてた。
その後しばらくしたら普通に使えるようになったし、昨日確かにイメージが表示されないことはあったよ。
google側の頻繁な仕様変更でFAなんじゃね?
836 :
think :2006/06/24(土) 23:08:59 ID:SvhgaosT0
>>833 お力になれず、申し訳ない。
状況が進展されることを祈っています。
>>834-835 報告お疲れ様です。
昨日の私のケースでは、たまたまタイミングが合わなくて上手くいったのですね、きっと。
次スレはいらないよな
>832 URLテスト欄は前方一致だってthinkさんのウェブサイトに書いてあるよ <任意のタグ\s[^>]+> → $NEST(<,任意のタグ*,>) と書き改めるとおよそ4倍ほど<>内のマッチングが高速化する模様。 これは100%<>内コードで占められるようなサンプルHTMLコードでプロファイルした結果。 もちろん一般的なウェブページの全HTMLソースコードと<>内コード比は1%以下程度と推定されるから この変更で望まれる高速化の割合は無視できる程度だから誰もやらないけど。
>>839 javascriptで出力されてたのか。 今ちょうど暇してるしトライしてみようかな。(´・ω・`)
>>840 それってサンプルHTMLによってタイム差が左右されまくりそう。
サンプルによっては遅くなるケースもあるんじゃないかな。(´・ω・`)
[Patterns] Name = "Google image Skip javascript result" Active = TRUE URL = "mages.google.co(m|.jp)/images\? $TYPE(htm)" Limit = 1024 Match = "$NEST(<noscript>, <style> body { display : none } </style>\0,</noscript>)" Replace = "\0\k" javascript分かんね(´・ω・`)
operaでgyaoが見れるようにするフィルターってのはできないんでしょうか・・・
>>843 その3つを比較するなら1が最速でFA。(´・ω・`)
でもそれは
>>840 の検証にはなってないよね、任意のタグを忘れてる。
1, $NEST(<,form\s*,>)
2, <form\s[^>]+>
3, <form\s*>
>>844 それでもNoriyaっちなら・・ Noriyaっちならきっと何とかしてくれる・・(´・ω・`)
ついでに
>>811 の件も何とかしないとサイトの信頼性が落ちる。(´・ω・`)
がんばれNoriyaっち(´・ω・`)
http://www.google.co.jp/search?num=100&hs=8kl&hl=ja&client=opera&rls=ja&q=%E3%83%86%E3%82%B9%E3%83%88&btnG=Google+%E6%A4%9C%E7%B4%A2&lr=lang_ja グーグルで"テスト"を検索した結果100ページのHTMLソースを使って下記3種類のフィルタルールについて速度を測定しました。
1, $NEST(<,a\s*,>)
サンプルテキスト : 30000 バイト
成功マッチ数 : 101
平均時間 : 0.407000 (ミリ秒)
2, <a\s[^>]+>
サンプルテキスト : 30000 バイト
成功マッチ数 : 101
平均時間 : 0.890000 (ミリ秒)
3, <a\s*>
サンプルテキスト : 30000 バイト
成功マッチ数 : 101
平均時間 : 0.343000 (ミリ秒)
確かに,任意のタグで測定すると3番目 < 1番目 < 2番目となりますね。
ここで試しにa\sの部分を削除すると
1,$NEST(<,*,>)
サンプルテキスト : 30000 バイト
成功マッチ数 : 1042
平均時間 : 0.375000 (ミリ秒)
2,<[^>]+>
サンプルテキスト : 30000 バイト
成功マッチ数 : 1042
平均時間 : 1.422000 (ミリ秒)
3,<*>
サンプルテキスト : 30000 バイト
成功マッチ数 : 1042
平均時間 : 0.484000 (ミリ秒)
1番目 < 3番目 < 2番目と順位が逆転します。(>843の実験と同様の結果)
二つの実験で1番目と3番目の順位が逆転する理由は分かりませんが,
結論として<任意のタグ\s[^>]+>の代わりに$NEST(<,任意のタグ\s*,>)を使用することで高速化が達成されると言えると思います。
>結論として・・・ 僕ならそんなことは絶対に言わない。 間違ってるんだから。 何が間違ってるのかも分からないようなら僕はもう何も言いません。(´・ω・`)
一行ごとに顔文字使ってたyunasoftみたいだな
>847 間違いを指摘したいのなら指摘してください。 したくないのなら黙っていてください。
>>847 私も何が間違ってるのか解らないので教えて欲しい
851 :
名無しさん@お腹いっぱい。 :2006/06/25(日) 20:44:26 ID:rcyLShpJ0
>>847 こういうヤツ大嫌いだよ。
死ねばいいのに。
【結論】全ての人間は必ず死ぬ
853 :
think :2006/06/25(日) 21:04:27 ID:Rj06ZTnf0
>>843-846 検証お疲れ様です。
「* が [^>]+ より速い」のは、「* は ?+ より速い」と同じ理屈ですね。
「$NEST が * より速い」のは、私の経験からも頷けます。
>>846 後者テストの 1. では、$NEST の inner match を省略しないと、比較テストになりませんよ?
$NEST(<,*,>) と <*> の比較なら、前者は $NEST が増えているだけなので、速度低下を否定する理由が見あたりません。
私なら以下のように、表現を変えてテストします。
× $NEST(<,a\s*,>)
○ $NEST(<a\s,>)
× $NEST(<,*,>)
○ $NEST(<,>)
>>847 煽らなくても…。
>>849 ごめんね、本気で分からないとは素で想定外だった。(´・ω・`)
失礼な話だけどもう少しスキルのある人かと思ってたんだ。
think氏登場ということで説明は高速化の専門家にお任せし、ROMに戻ります。
すみませんがよろしくお願いします。 >think氏
thinkの自作自演?
(´・ω・`)つければ何言っても許されると思ってるのかね。
∧_∧ <ヽ`∀´> <二ダーは悪くないニダ これ書かれるのもきついな
Firefox関連のスレでいつも(´・ω・`)を使ってるやつか?
>853のthink氏のアドバイスを受けて実験し直しました。 1, $NEST(<a\s,>) サンプルテキスト : 30000 バイト 成功マッチ数 : 101 平均時間 : 0.234000 (ミリ秒) 2, <a\s[^>]+> サンプルテキスト : 30000 バイト 成功マッチ数 : 101 平均時間 : 0.890000 (ミリ秒) 3, <a\s*> サンプルテキスト : 30000 バイト 成功マッチ数 : 101 平均時間 : 0.343000 (ミリ秒) 下記は補助実験 4,$NEST(<,>) サンプルテキスト : 30000 バイト 成功マッチ数 : 1046 平均時間 : 0.328000 (ミリ秒) 5,<[^>]+> サンプルテキスト : 30000 バイト 成功マッチ数 : 1046 平均時間 : 1.344000 (ミリ秒) 6,<*> サンプルテキスト : 30000 バイト 成功マッチ数 : 1046 平均時間 : 0.469000 (ミリ秒) 以上の結果からタグの開け閉めにNESTが有効であることが分かります。 何度もお騒がせいたしました。
>>854 で、結局何が間違ってたの?
>>859 の結果見ても結論は同じにしか見えないんだけど
煽ったけど自分が間違ってたんで逃げただけ?
861 :
think :2006/06/26(月) 09:28:39 ID:6m+bP8XD0
>>859 再度の実験お疲れ様です。
>>860 >846では、「前者の 1. と 3.」の比較結果が逆転(* が $NEST よりも速い結果に)していますが、
>859では、明らかに$NESTを使った表現の方が速い事が実証されています。
862 :
名無しさん@お腹いっぱい。 :2006/06/26(月) 09:48:53 ID:I3kIDRyX0
>>854 なんにもわかんないけど偉そうにしたかっただけだよね。
きっとここの人たちは君の薄っぺらな人間性を理解してるよ。
>>861 >>854 が
>>847 で問題にしてるのは
>結論として・・・
の部分、つまり
>結論として<任意のタグ\s[^>]+>の代わりに$NEST(<,任意のタグ\s*,>)を使用することで高速化が達成されると言えると思います。
だよ
それの何が間違っているのか尋ねてるんだけど
いつの間に
>「前者の 1. と 3.」の比較結果が逆転
の話になったの?
>>840 を見れば解るように、最初から\s[^>]+>と$NESTの比較の話だよ
と言う訳で、再度質問
>>854 何が間違ってたの?
グーグルのやつ作ってみました
前のフィルタと併用すれば取り合えずは問題ないかなぁ?
あ、あとフィルタ作ったの初めてだったんで
至らない所があれば修正お願いします
[Patterns]
Name = "Google images link for JavaScript ver. (2006/06/26)"
Active = TRUE
URL = "$TYPE(htm)images.google.co(m|.jp)/images\?"
Bounds = "<a*>"
Limit = 20
Match = "<a href="\+e\+b.l\+">"
Replace = "<a href=
http:// "\+b.g\+">"
>>864 に先を越されたが俺も作ってみた。
[Patterns]
Name = "Google image redirector [060627]"
Active = TRUE
URL = "images.google."
Limit = 2000
Match = "var\ e=\"/imgres\?imgurl=
http://[^;]+;c\+=\ "<a href=\"\+e\+b.l$STOP()"
"$SET(9=var e=unescape(b.n.match(/^[^&]+/));c+="<a href=
http:// "+unescape(b.g)+" target=_blank>Link</a><a href="+e)"
"|"
"<a href=/imgres\?imgurl=\0\&imgrefurl=\1\&h=*>"
"$SET(9=<a href=$UESC(\0) target=_blank>Link</a> <a href=$UESC(\1) target=_blank>)"
Replace = "\9"
>>864-865 乙。
Google imageではURLに "&nojs=1" を付けるとjavascriptじゃないほうに飛ぶみたい。
>>866 &nojs=1のほうには
&nojs=0にリダイレクトするスクリプトが書いてあるので
スクリプトがオフになってないと&nojs=1を付けても意味なし。
あれ? それだとjavascriptを切ると無限ループになるはずだけどどういうことかな。
ああ、違うか。 間違えた。
>>863 なんか必死だね。 必死なのは分かるけど教えてもらったんだからお礼くらい言えば?
>>865 素晴らしい!!
Linkをクリックすると画像が出て、画像をクリックすると記事にリンクするという
動作を反対にしたいのですが、JavaScriptが分かりません。
修正方法を教えて頂けないでしょうか。
画像をクリック → 画像を表示
Linkをクリック → 記事へのリンク
みたいに。よろしくお願いします。
Google Kill adを使わせてもらってるのだが、これも検索の上のほうに表示される奴がカットされなくなってない? 右側に表示される奴はちゃんとカットされているんだが。 だれか修正お願いします。
>>870 別に教えてもらってないし
本気で何が間違ってるのか解らないから訊いているだけで
そんなに訊いている方を馬鹿に出来る程簡単なら何で誰も答えてくれないの?
当人じゃなくて
>>870 が答えてくれても良いよ
勿論
>>854 や
>>861 でも他の誰でも
[Patterns]
Name = "google image (040516) +js"
Active = TRUE
URL = "images.google.co(.jp|m)/"
Limit = 1024
Match = "<a href=/imgres\?imgurl=[^&]+\&imgrefurl=([^&]+)\0[^>]+>"
" <img[^>]++(src=/images\?q\=tbn:[^:]+:(((^https:)$SET(2=
http:// )|)[^ >]+)\3)\1*</a>"
Replace = "<a href="$UESC(\0)" target="_blank">imgref</a> / <a href="\2\3" 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\3'}"\1</a>"
これが使えないのがすごく痛い。
どなたか修正お願いします。
>>871 Matchの2行目の+unescape(b.g)と+eの入れ替えでいけるんじゃないかな
>>871 あ、あと下から2行目の\0と\1の入れ替えもね
>>877 編集したのうpしてください。
わけわかりません。。。
879 :
think :2006/06/27(火) 17:53:53 ID:kGraOtmN0
>>864-865 お疲れ様です。
私も今朝方、ようやくソースをキャプチャできました。
>>864 > あ、あとフィルタ作ったの初めてだったんで、至らない所があれば修正お願いします
目立った誤爆要素はないですし、良くできていると思います。
細かいことをいえば、
1. Boundsは不要 (高速化できる)
2. Match欄の <a href= を <a\shref= にすべき (確実にa要素にマッチできる)
3. 属性値のクオートは $AV にしてもよい (仕様変更に対応できる)
4. URL欄を $TYPE(htm)images.google.co(m|.jp)/images(^[^?])(^*[^?&]nojs\=1) にしてもよい (URL制限で不要なページにマッチしないように)
といったところです。
特に、2. について。今回は誤爆しませんが、要素名の後に \s を付ける癖を付けると良いと思います。
# 例えば、"<a*href=" とすると、area要素にもマッチしてしまいます。
# 要素名の後に空白が保証されているのなら、\s を使用した方が良い、という意味です。
>>872 アプロダの "Kill ad Type-List [2006.04.16]" に添付されている "Google: Kill ad [2005.10.18]" の事でしょうか?
それでしたら、
Match = "(<table)\#(^(^\s[^>]++align=$AV(right)))|"
"(<div)\#(^(^\s[^>]++class=$AV(ch)))|"
"(<br\sclear=$AV(all)>)\#(<br>)+"
"(<table(^[^>]+><tr><td\sclass=$AV(k))|<center)\#$STOP()"
でOKだと思います。
class=ch の位置が後ろに移っているようです。
880 :
think :2006/06/27(火) 17:55:03 ID:kGraOtmN0
>>863 ,873
あなたの疑問はごもっともですし、気持ちはわかります。
私の答え(>861)は私が疑問に思ったこと(>853)に対する答えであって、847氏の立場に立った答えにはなっていません。
私は当人ではないのでその疑問に対しては答えられませんが、煽りっぽく質問するのはどうかな、と思います。
後は、荒れないことを祈るのみです…。
881 :
872 :2006/06/27(火) 18:07:56 ID:gnwO0DLl0
>>879 素早い修正どうもありがとう!
ちゃんと期待どうり動きました!感謝!!
882 :
871 :2006/06/27(火) 19:01:53 ID:hWem3QzM0
>>875-877 アドバイス、ありがとうございます。感謝!
>>878 たぶん?合ってると思う。Matchのところだけ書きます。
Match = "var\ e=\"/imgres\?imgurl=
http://[^;]+;c\+=\ "<a href=\"\+e\+b.l$STOP()"
"$SET(9=var e=unescape(b.n.match(/^[^&]+/));c+="<a href="+e+" target=_blank>link</a> <a target=_blank href=
http:// "+unescape(b.g))"
"|"
"<a href=/imgres\?imgurl=\0\&imgrefurl=\1\&h=*>"
"$SET(9=<a href=$UESC(\1) target=_blank>link</a> <a href=$UESC(\0) target=_blank>)"
>880 thinkさんのウェブサイトでの文章に関する質問なのですが >$URLを検索表現の先頭に置くと、Proxomitronは1バイトずつURLテストします。 これは検索表現の欄の先頭に書いた場合にのみ起こる現象なのでしょうか? 1バイトずつの意味がよく分からないのですが(正規表現やコマンドの含まれないプレーンな検索表現でも同じことが言えるのでは?) $TESTなどではこの現象はおこらないのでしょうか。
884 :
think :2006/06/27(火) 22:57:56 ID:kGraOtmN0
>>883 > これは検索表現の欄の先頭に書いた場合にのみ起こる現象なのでしょうか?
はい、その通りです。
これは以下の2つの事例を比較してみると、解りやすいかと思います。
Match = "<script>$URL(
http://www.google.co.jp/ )"
Match = "$URL(
http://www.google.co.jp/ )<script>"
前者は <script> にマッチする度に、URLテストを行います。
見方を変えれば、<script> がある場合に限り、URLテストを行っている、とも解釈できます。
対して、後者は $URL より前にマッチングパターンが存在しません。
仕方がないので、Proxomitronは「1文字読み込む度に、URLテストを行っている」のです。
従って、後者は以下の表現と等価です。
Match = "(^(^?))$URL(
http://www.google.co.jp/ )<script>"
ページの先頭から <script> までの間に、4096バイトの文字が有れば、4096回のURLテストを経て、
ようやく、<script> にマッチすることになります。
この処理は大変な無駄なので、$URLの前には出来るだけ長いパターンを挿入する事をお勧めしています。
> 正規表現やコマンドの含まれないプレーンな検索表現でも同じことが言えるのでは?
通常のテキストのマッチングでも、初めは1バイトから読み始めますが、
URLテストに限っては、1バイトの文字を読み込む度にテストする必要性はないと思います。
# 先の後者の例では、googleにアクセスしているときには、
http://www.google.co.jp/ のURLテストで真を返すので、
# 1文字どころか何文字ものURLテストを行っていることになりますから。
885 :
think :2006/06/27(火) 22:59:05 ID:kGraOtmN0
>884の続き。 > $TESTなどではこの現象はおこらないのでしょうか。 $TSTでも起こります。 ですので、$TSTに関しても出来るだけ後ろに置くことを推奨しています。(公式ヘルプにもそのように書かれています) ただし、グローバル変数のテストに限っては、初めの方に置いた方が良いこともあります。 具体的には、「グローバル変数が初期化されているか否かのテスト」です。 「$SET(Flag=y) でグローバル変数をセットし、$TST(Flag=y) でフラグをチェックする。」 この場合は、出来るだけ早くにフラグをチェックした方が効率が良く、高速化される事を確認しています。 # さすがに初めの1文字で$TSTは止めた方が良いと思いますが、1文字のテキストをチェックした後に、$TSTなら速いケースもあるようです。 # この辺は、ケースバイケースで柔軟に使い分ける必要があります。
誤解しやすい表現を使ってるので補足しておくとMatch欄だけでなく Bounds欄にも同じことが言えますよ、と。(´・ω・`)
>>874 元のフィルタがどういう意図出作ってあるのかが
いまいちよくわかってないんだけど
とりあえずこんな感じでどう?
[Patterns]
Name = "google image (060628) +js"
Active = TRUE
URL = "images.google.co(.jp|m)/"
Limit = 1024
Match = "var\ e=\"/imgres\?imgurl=
http://[^;]+;c\+=[^;]+;[^;]+;$STOP ()"
"$SET(9=var e=unescape(b.n.match(/^[^&]+/));c+="<a href="+e+" target=_blank>imgref</a> / <a target=_blank href=
http:// "+unescape(b.g)+">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(b.g)+'"}'"
"+"' src=/images?q=tbn:"+b.c+b.g;)"
"|"
"<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="
http://\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='
http://\2 '}"\1</a>)"
Replace = "\9"
画像のURLが
https://の場合に誤爆が発生するので修正 。
[Patterns]
Name = "google image (060628) +js"
Active = TRUE
URL = "images.google.co(.jp|m)/"
Limit = 1024
Match = "var\ e=\"/imgres\?imgurl=
http://[^;]+;c\+=[^;]+;[^;]+;$STOP ()"
"$SET(9=var e=unescape(b.n.match(/^[^&]+/));if(b.g.match(/^
https:\\/\\// )){b.g=b.g.replace(/^http(s):\\/\\//,"")};"
"c+="<a href="+e+" target=_blank>imgref</a> / <a target=_blank href=http"+RegExp.$1+"://"+unescape(b.g)+">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(b.g)+'"}'"
"+"' src=/images?q=tbn:"+b.c+b.g;)"
"|"
"<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="
http://\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='
http://\2 '}"\1</a>)"
Replace = "\9"
こっちも同様の理由で修正。
>>882 の修正も加えました。
[Patterns]
Name = "Google image redirector [060628]"
Active = TRUE
URL = "images.google."
Limit = 2000
Match = "var\ e=\"/imgres\?imgurl=
http://[^;]+;c\+=\ "<a href=\"\+e\+b.l$STOP()"
"$SET(9=var e=unescape(b.n.match(/^[^&]+/));if(b.g.match(/^
https:\\/\\// )){b.g=b.g.replace(/^http(s):\\/\\//,"")};"
"c+="<a href="+e+" target=_blank>Link</a><a target=_blank href=http"+RegExp.$1+"://"+unescape(b.g))"
"|"
"<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"
特定の要素にマッチさせるときは なるべく Bounds を使うようにしているけれど、 Bounds を使ったほうがよいのか使わないほうがよいのか、 どちらにすればいいんだろう。 テストするだけでわかるものなのかな。 例えば marquee を無効化するだけのような簡単なものだったら、 Bounds を使う必要はないのかなとは思っているんだけれど。
>>889 乙。(´・ω・`)
>>890 Boundsはあらかじめ検索範囲を絞り込んでおくために使います。(´・ω・`)
例えばリンクのタグにマッチさせたいときは
Bounds = "<a\s*</a>"
と書いておけば例え↓のような誤爆しやすいMatch欄を書いたとしても
Match = "<a\s*href=*</a>"
<a name=foo></a><a href=bar>LINK</a> というHTMLソースの
<a href=bar>LINK</a> の部分だけに正しくマッチしてくれます。
→ もしBounds欄が無かったらどうなるかはテストウインドウでLet'sテスト。(´・ω・`)
>marquee を無効化するだけのような簡単なものだったら
Boundsを使う理由が特に見当たらない場合は使わないほうが良いでしょう。
意味も無く無駄な処理をすることになりますので。(´・ω・`)
よく見かける無駄な使い方に↓こういう書き方がありますが
Bounds = "<a\s*</a>"
Match = "*"
Boundsを使わずに↓このように書いたほうが遥かに良いです。(´・ω・`)
Match = "<a\s*</a>"
892 :
think :2006/06/28(水) 18:15:56 ID:8qH4NGQE0
>>886 どうもです。
>>887-889 httpsスキームはなかな気付きにくい修正点ですね。お疲れ様です。
別件ですが、これも問い合わせが来そうな予感がするので。
Googleイメージ検索(JS版)では、アプロダの "Google: High Light" が誤爆します。
JavaScript内のコードでクオートを不正に閉じてしまうのが原因なので、以下の修正で回避できます。
<span style="background-color: #******">
↓
<span style='background-color: #******'>
893 :
think :2006/06/28(水) 18:16:37 ID:8qH4NGQE0
>>890 >891氏が丁寧に解説されていますが、もう書いてしまったので、このまま投稿します。
> Bounds を使ったほうがよいのか使わないほうがよいのか
個人のポリシーによると思います。
Boundsの特徴は以下の通りです。
・遅くなる
・表現が見やすくなる
欠点と利点のどちらに比重を置くか、で判断することになるかと。
> 例えば marquee を無効化するだけのような簡単なものだったら、Bounds を使う必要はないのかな
前述のようにポリシーに依りますが、私なら使わないですね。
というか、私の場合はユーザースタイルシートで無効化してます。
(詳しくは、パソコン遊戯BBSの [No.719] に書いてあります。)
複数のブラウザで共用できるProxomitronに有用性を見いだすなら、以下の二者択一かなと。
Match = "(<marquee)\0"
Replace = "\0 style="-moz-binding: none""
Match = "(^(^</head>))$STOP()"
Replace = "<style> marquee { -moz-binding: none } </style>\r\n"
>>850 あなたに免じて特別に教えます。(´・ω・`) この3つのフィルタを入れてから
[Patterns]
Name = "1, $NEST(<,form\s*,>)"
Active = FALSE
Limit = 32767
Match = "$NEST(<,form\s*,>)"
Replace = "Match"
Name = "2, <form\s[^>]+>"
Active = FALSE
Limit = 32767
Match = "<form\s[^>]+>"
Replace = "Match"
Name = "3, <form\s*>"
Active = FALSE
Limit = 32767
Match = "<form\s*>"
Replace = "Match"
ブラウザで
http://pc7.2ch.net/test/read.cgi/software/1138069706/ を開き、
そのHTMLソースをテストウインドウに放り込んで各フィルタの"プロファイル"を取って下さい。
どれが一番速いかな?(´・ω・`)
>884 3つのフィルタ間で0.001msの差がありましたが,もしかしてそれをずっと言いたかったんですか?
>>896 わざわざformタグだけ取り出したりしてない?
HTMLソース全体をテストウインドウに貼らないと意味無いよ。(´・ω・`)
>897
まさかそんなことありませんよ。
ちなみに色々なケースで試してみなければいけないのでこんなケースを試してみます。
http://vird2002.s8.xrea.com/proxomitron/db_matching_rule.html こちらをソースとして,
[Patterns]
Name = "1, $NEST"
Active = FALSE
Limit = 256
Match = "$NEST(<(a|form)\s,>)"
Replace = "Match"
平均時間 : 0.266000 (ミリ秒)
Name = "2, [^>]+"
Active = FALSE
Limit = 256
Match = "<(a|form|)\s[^>]+>"
Replace = "Match"
平均時間 : 0.515000 (ミリ秒)
Name = "3, *"
Active = FALSE
Limit = 256
Match = "<(a|form)\s*>"
Replace = "Match"
平均時間 : 0.266000 (ミリ秒)
>894のケースでは$NEST(<,form\s*,>)という明らかに故意で低速化を意図されたフィルタは試していません。
$NEST(<form\s,>)と修正しました。
>>898 話をややこしくしないで欲しいな、$NEST(<,form\s*,>) を使ってテストしないと意味が無い。(´・ω・`)
今までの話の流れをちゃんと読んでからレス付けて。
>>887-888 >>874 の動作とは違ったものになってるようです。
>>874 のフィルタは、イメージのサムネイルをクリックすると
元画像とサムネイルを入れ替えるjavascriptを
追加するようになっている感じです。
過去にこのスレで話題になってopera対応とかもされていて
とても使いやすかったので、使えなくなったのが不便に感じてしまいます。
>>900 元画像とサムネイルの入れ替え自体は
>>887-888 のフィルタでも行われてるので
あとはIMGタグのwidth属性とheight属性の指定を削除すればいいのかな?
これでどうでしょう?
[Patterns]
Name = "google image (060629) +js"
Active = TRUE
URL = "images.google.co(.jp|m)/"
Limit = 1024
Match = "var\ e=\"/imgres\?imgurl=
http://[^;]+;c\+=[^;]+;[^;]+;[^;]+;$STOP ()"
"$SET(9=var e=unescape(b.n.match(/^[^&]+/));if(b.g.match(/^
https:\\/\\// )){b.g=b.g.replace(/^http(s):\\/\\//,"")};"
"c+="<a href="+e+" target=_blank>imgref</a> / <a target=_blank href=http"+RegExp.$1+"://"+unescape(b.g)+">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(b.g)+'"}'"
"+"' src=/images?q=tbn:"+b.c+b.g+">";)"
"|"
"<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="
http://\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='
http://\2 '}"\1</a>)"
Replace = "\9"
>891 >893 解説ありがとうございます。参考になります。 marquee の例で書くと、私が使っているのはこういうものです。 Name = "depend element rejecter (2006.01.17)" Active = TRUE URL = "^((www.|)((yahoo|vector).co.jp)/|$KEYCHK(d))" Limit = 256 Match = "<(/|)\2(" "(abbrev|animate|au|basefont|bgsound|blink|cmd|comment|credit|dir|(no|)embed|htmlplus|image|\?import|isindex|keygen|" "(i|no|)layer|lh|listing|marquee|menu|multicol|nobr|person|plaintext|server|spacer|t:[a-z]+|wbr|xmp)\3" "$SET(1=<span class="element-rejecter" title="depend element"><\2\3></span>)|" "(cs[a-z]+|(o|v|w|x):[a-z]+|x-claris-[a-z]+|xml)\3" "$SET(1=<!-- depend element - \2\3 -->))[^>]++>" Replace = "\1" ただ marquee を消すだけならば簡単なのですが、 元のソースに marquee があったということがすぐにわかると(個人的には)よいので、 こういうものを使っています。 -moz-binding を使うのもよいのですが、 (使用頻度が低いながらも)IE と共通で使えるものの方が便利かなと思っています。 image 要素などは普通に使われているようなので、 バイパスしたときのために -moz-binding をユーザスタイルに書いておくと、 なおよさそうです。
< > が < と > になってしまったので……。 正しくは "$SET(1=<span class="element-rejecter" title="depend element"><\2\3></span>)|" です。
Google Add Link (2005-10-26)って今も問題なく使えますか? Web.archiveなどにリンクが表示されないような
>>901 900さんじゃないですが使わせてもらいました。
今のところ完璧に動作してます(Firefox1.5)
ありがとうございます。
>>901 うちの環境のせいなのか、フィルタがマッチしてない感じです。
他のフィルタが悪さをしてるのか調べるために、
オミトロンを通さず取得したソースをテストに貼り付けてチェックしても、
マッチしなかったって出てしまいます。
使えている人がいるので、ひょっとしたらうちだけの問題なんでしょうか。
googleイメージ、「次へ」を押すと最初の1ページ目の検索結果に戻される。 新規ウィンドウでひらいたときは普通にひらくのに、なんだこれ。 何が誤爆してるのかわからんなぁ。
とおもったら普通に動作する場合もある。 意味わかんねぇ。
>>901 うちでもうまく働かないですね…
FirefoxとIE両方ともだめです
Googleイメージで my をキーワードに検索したときに同じ症状が出ます。。
912 :
think :2006/06/30(金) 18:27:13 ID:mlcNzTX/0
>>907 ,910-911
私の環境では、>887-888,901 のいずれもマッチしてくれました。(Sleipnir, Syleraで確認)
私が捕獲したhtmlソースは以下ですが、これでテストしてみるとどうなるでしょうか?
ttp://vird2002.s8.xrea.com/web/google_images_html_src.zip テストウインドウでマッチするなら、他のフィルタが先にマッチしているのでしょうから、
ログウインドウorデバッグ情報 からマッチしているフィルタを確認して、1つずつOFFにしていけば、原因を突き止められると思います。
>>908-909 > とおもったら普通に動作する場合もある。
直接的な原因は見当も付きませんが、とりあえず。
タブブラウザでセキュリティ切り替えしてませんか?
JavaScriptのON/OFFで対象のhtmlソースが切り替わるので、それが影響している可能性があります。
JavaScript版, 非JavaScript版 はURLから判断できます。
&nojs=0 を含む … JavaScript版
&nojs=1 を含む … 非JavaScript版
&nojs= が存在しない … JavaScript版
>>911 問題なく、フィルタがマッチしました。謎です…。
WEBページフィルタの内部処理はリクエストを受け取ったらその段階でURLマッチ欄のマッチを試行して そのURLで使えるWEBページフィルタと使えないフィルタを分けるんでしょうか。 それとも検索表現欄の先頭にマッチする度にURLマッチ欄のマッチングを試すのでしょうか。 例えばの話ですがURLマッチ欄に$LST()で非常に大きなリストを指定してしまうと なんどもそのマッチングを試行するのでは時間がかかるんじゃないでしょうか。
914 :
think :2006/06/30(金) 19:40:32 ID:mlcNzTX/0
>>913 > WEBページフィルタの内部処理はリクエストを受け取ったらその段階でURLマッチ欄のマッチを試行して
「URL欄 → Bounds欄 → Match欄」の順にチェックしていると理解しています。
例えば、以下のフィルタを比較実験してみてください。
[Patterns]
Name = "Erase all"
Active = TRUE
Limit = 32767
Match = "?+"
Name = "Erase google"
Active = TRUE
URL = "www.google.co.jp/"
Limit = 32767
Match = "?+"
前者は全てのWebページでProxomitronのCPU使用率が100%となります。(ブラクラと同じなので、実行するときには他のタスクを停止してください)
後者は "www.google.co.jp/" だけで、ProxomitronのCPU使用率が100%となり、他のページでは速度的に影響はありません。
体感速度なので確実とはいえませんが、「異常に遅いフィルタでもURL欄の対象外のWebページでは体感速度に影響はない」
と考えていただければ納得がいくかと思います。
> 例えばの話ですがURLマッチ欄に$LST()で非常に大きなリストを指定してしまうと
以上の事からも察するに、「URLテストはリクエストが開始された直後だけ」だと思います。
私が使用しているWebページフィルタで使用しているブロックリストは、最大で 168 のアイテム数がありますが、体感的に遅いと感じることはないです。
URLマッチよりも、むしろ、検索表現, Bounds の方が速度に影響していると思います。
>>912 わかりました。
Jane系2chブラウザだと、"が&quot;になってしまっているようです。
正しくフィルタが取り込まれていなかったのが原因でした。
ブラウザで開きなおしてコピペか、&quot;を取り除く事によって動作する事を確認しました。
他の方もお試しあれ。
検証してくれた方、フィルタ修正してくれた方、 本当にありがとうございます。
>914 めちゃくちゃ丁寧な測定・考察・解説ありがとうございます。 なぜこんな疑問が起こったかというとですね 検索表現が似通った3種類のフィルタがありORを使って簡単に統合可能なのですが URLマッチがそれぞれ別々のブロックリストから成っているのでそのままでは統合できません。 そこでURLマッチのみのフィルタを作り,URLにマッチした段階でグローバル変数で適当なフラグを立て その変数を元にして統合したルールを使用しようかと考えたんです。 1番目のフィルタ URLマッチ:$LST(A) 検索表現:$SET(A=1)$STOP() 2番目のフィルタ URLマッチ:$LST(B) 検索表現:$SET(B=1)$STOP() 3番目のフィルタ URLマッチ:$LST(C) 検索表現:$SET(C=1)$STOP() 4番目のフィルタ URLマッチ: 検索表現: 共通部分 ($TST(A=1)処理A|$TST(B=1)処理B|$TST(C=1)処理C)
ところがこれをもし1つのフィルタで実現しようとすると 検索表現欄内で$URL()を使ったテストが必要になるので『共通部分』にマッチするたびに 多分ですが$URL()を繰り返す非常に重いフィルタになるのではないかと考えました。 統合したフィルタ URLマッチ: 検索表現: 共通部分 ($URL($LST(A))処理A|($URL($LST(B))処理B|($URL($LST(C))処理C)
919 :
think :2006/06/30(金) 23:48:57 ID:mlcNzTX/0
>>917-918 うーん…、難しく考えすぎではありませんか?
1〜3 ですが、これはグローバル変数をセットするだけのフィルタですよね。
私なら、初めから3つのフィルタに分けてしまいます。
1番目のフィルタ
URLマッチ:$LST(A)
検索表現:共通部分 処理A
2番目のフィルタ
URLマッチ:$LST(B)
検索表現:共通部分 処理B
3番目のフィルタ
URLマッチ:$LST(C)
検索表現:共通部分 処理C
>914で説明しましたように、Proxomitronは「URL欄 → Bounds欄 → Match欄」の順にチェックしていると思われます。
ですので、各ブロックリストにマッチしなかったときには、検索表現は使われません。(検索を行いません)
検索表現がどんなに複雑であっても、URLマッチではねれば良いのですから、
検索表現をまとめる事よりも、URLマッチをまとめる事を優先すべきだと思います。
920 :
think :2006/07/01(土) 00:00:42 ID:mlcNzTX/0
>>915-916 > Jane系2chブラウザだと、"が&quot;になってしまっているようです。
検証お疲れ様です。
気になって私も試してみましたが、コピペでは「" → "」の変換は行われませんでした。(JaneDoe View)
派生によって、挙動が違うのかもしれませんね。
JaneDoe View α Build ID: 0606160542
Windows XP Service Pack 2
ComCtrl Version: 00060000
IE Version: 6.0.2900.2180
ログ整理: Off
正規検索にWSHを使用: On
板の読みこみを速くする: On(CLIENT)
新着レスの画像を自動で開く: On
# datファイルをのぞくと、" は 実体参照(")で書かれていることがわかります。
# 915氏の使用しているJaneでは実体参照から " への変換を行わないでコピーされたのだと思います。
# 何となく不具合っぽい挙動なので、作者に報告すれば修正される問題かもしれません。
921 :
think :2006/07/01(土) 00:04:16 ID:EIX4blN00
失礼。書き込みミスしました。 × コピペでは「" → "」の変換は行われませんでした。 ○ コピペでは「" → "」の変換は行われませんでした。 # 実体参照が有効な仕様は今後変えられないんでしょうかね。 # たまに、実体参照を表示させたいので困ります…。
>>917 (´・ω・`)つ
[Patterns]
Name = "New HTML filter"
Active = TRUE
URL = "$LST(A)$SET(A=1)|$LST(B)$SET(B=1)|$LST(C)$SET(C=1)"
Limit = 256
Match = "共通部分 ($TST(A=1)処理A|$TST(B=1)処理B|$TST(C=1)処理C)"
Replace = "Replace text"
>>902 それにはboundsは必要ないスね。(´・ω・`) ほかに直すところを探すなら
(o|v|w|x) ⇒ [ovwx]
[^>]++> ⇒ *>
と、分岐の代わりにリストを使うか迷うくらい(´・ω・`)ス
googleのスポンサーがひょうじされるようになってない?
925 :
think :2006/07/01(土) 11:34:22 ID:EIX4blN00
>>902 すみません、レスし忘れていました(汗
私からのアドバイスは>923氏が述べておられる事とほとんど同じです。
(私ならOR関数をブロックリストに変えます。)
あと、1つ付け加えるならば、下記の「OR関数の後ろの文字列」をOR関数として含めると、高速化を期待できると思います。
(no|)embed
(i|no|)layer
# 私のWebサイトコンテンツの [フィルタの高速化 -> OR関数は内部パターンを長くした方が速くなる] が理由です。
[Patterns]
Name = "livedoor News "ZENBUN" Jumper [2005 11 10]"
Active = TRUE
URL = "news.livedoor.com/"
Limit = 256
Match = "<a\s[^>]++href=$AV((
http://[^.]+.livedoor.com/* )\0)[^>]+>\[[%B5][%AD][%BB][%F6][%C1][%B4][%CA][%B8]\]</a>"
Replace = "<meta http-equiv="refresh" content="0; url=\0">\k"
livedoorニュースで自動的に記事全文に飛ぶフィルターなんですけど
なぜか合致しません。どこがおかしいんでしょう?文字コード?
927 :
910 :2006/07/01(土) 15:28:48 ID:VpxXWtAm0
>>901 のフィルタで動作確認しました
うちの場合、&quot;の問題に加えて
>>3 のAdd Link beta2というフィルタが誤爆していました
これをオフにすると無事表示できました
検証・修正していただいた方々に感謝です
928 :
910 :2006/07/01(土) 15:34:15 ID:VpxXWtAm0
しかし、Add Link beta2も便利なフィルタなので google imageに誤爆しないように作り替えるとなると…自分にはとても無理ですorz どなたかお願いできませんでしょうか
>>928 うちでもその症状が出てたんでAdd Link 4.2 beta2のurlのマッチで
グーグルイメージだけ除外して使ってます。まー根本的な解決になってませんが。
アップローダにあるhttp Text to Link [2006.04.17]を使えばいいんじゃないか? Add Link 4.2より誤爆が少ないよ。
>923 >925 アドバイスありがとうございます。 時間のあるときに、もっとじっくり勉強してみます。
>922 $SET()コマンドはそこでは使えないようです。 やはりProxomitronは仕様からしてもURLマッチレベルで考えたほうがいいようですね。
933 :
think :2006/07/01(土) 19:03:44 ID:EIX4blN00
>>917 ,932
ひょっとして、「共通部分」が非常に長い複雑な表現だったりしますか?
それなら、「4番目のフィルタ」にまとめようとした気持ちも理解できます。
> $SET()コマンドはそこでは使えないようです。
この場合は、ブロックリスト内で $SET を宣言すればよいと思います。
// $LST(A) の中身
apple.com/$SET(List=A)
orange.com/$SET(List=A)
peach.com/$SET(List=A)
$LST(B), $LST(C) でも同じように、$SET(List=...) を記述し、フィルタを1つ作成します。
[Patterns]
Name = "Fourth filter remake"
Active = TRUE
URL = "$LST(A)|$LST(B)|$LST(C)"
Limit = 256
Match = "Common process ($TST(List=A)Process-A|$TST(List=B)Process-B|$TST(List=C)Process-C)"
Replace = "Replace text"
ブロックリストのアイテム数が多いと、$SET(List=...) を追加するのが大変ですが、
正規表現による置換で頑張れば、何とかなるんじゃないでしょうか。
>>926 試してみたけど期待通りに動いたよ?(´・ω・`) 他のフィルターに邪魔されてるのでは?
>>927 firefoxならtext linkっていう拡張もオススメ。(´・ω・`)
>>932 試してみたけど期待通りに動いたよ?(´・ω・`) 動かないとしたら *$SET() のバグのせいじゃないかな。
リストのアイテムの最後が * だったりすると$SETは効かないから回避策が必要。(´・ω・`)
>>933 乙ス。(´・ω・`) 自分も書いといてなんですが$TST(List=C) は不要ですね。(´・ω・`)
935 :
名無しさん@お腹いっぱい。 :2006/07/02(日) 10:17:04 ID:N74/5mPD0
これは入れておけっていうフィルタの詰め合わせください><
937 :
名無しさん@お腹いっぱい。 :2006/07/02(日) 10:27:04 ID:N74/5mPD0
そこの忍者キラーいれましたが、上端に表示されるタイプの忍者には効かないことないですか?
938 :
名無しさん@お腹いっぱい。 :2006/07/02(日) 10:29:42 ID:N74/5mPD0
とおもいましたが効いてました でも自分のブログには効かない><変なところに貼ってあるからかな
>>936 これはすごい、どれもこれも神レベルのフィルターじゃないですか!
横からありがとうございます! 全部2つずつ入れてしまいましたw
てかこれって散々叩かれたやつじゃなかった?
それは別のやつ
別じゃねーよ
IEを最大化にした状態で一度閉じた後、ヤフーのトップを開くと最大化のままですが グーグルのトップを開くと最大化にはならずに開いてしまいます。 グーグルでも最大化のまま開くフィルターをお願い致します。
66.249.89.104 66.249.89.99 この二つのIP遮断しとけばGoogle AdSense表示されない
946 :
945 :2006/07/05(水) 00:29:03 ID:CfijsDsi0
IEだとフィルターは有効に機能する sleipnir2.41だと駄目。プニルスレに行ってきます
プニルのプロキシ設定でオミトロンを指定すれば解決だ。
>>947 プロキシ設定済みです。他のフィルタは有効なのに、このフィルタだけ機能しなくて。。
そりゃまたおかしな現象だね。 プニル使ってないから検証出来ないな・・。
950 :
787 :2006/07/05(水) 02:58:56 ID:acLMtbeI0
フリーティケットシアター広告を完全に見えなくするフィルタってありませんか? 旧ぷにる使っているんですが毎度毎度うざくて
URL貼りなよ
952 :
787 :2006/07/05(水) 17:38:51 ID:acLMtbeI0
>>952 [HTTP headers]
In = FALSE
Out = TRUE
Key = "URL-Killer: freett.com (out)"
URL = "page.freett.com/(popup|wind|foot).js"
Replace = "\k"
( ゚д゚)ポカーン
955 :
787 :2006/07/06(木) 20:43:14 ID:87e0z2UM0
>>953 ありがとうございました!
消えました!
956 :
名無しさん@お腹いっぱい。 :2006/07/07(金) 04:33:44 ID:S6TN2jXc0
>>956 [HTTP headers]
In = TRUE
Out = FALSE
Key = "Content-Type: Fix WebArchive Encode (in)"
URL = "web.archive.org/web/[0-9]+/"
Match = "(text/html)\0; charset=*"
Replace = "\0"
958 :
956 :2006/07/07(金) 12:31:34 ID:S6TN2jXc0
>>957 ありがとうございます。
バッチリでした!感謝。
pornotubeのaddlinkとホモ動画消去フィルターをお願いします (18禁につきURL貼れません><)
アクセスを防ぐフィルター教えてください。
>>936 のフィルターは評判悪いようですが・・・。
ヒント: 有名サイトには必ずアンチが付く
次スレは本スレでいいな?
次スレよろ
テンプレ整理も頼む
>>965 やべえ!
次スレは本スレと合併で良いよ
thinkのサイトは一般人役に立たない。 単なる自己満足だろ。 パソコン遊戯が100倍ましだった
969 :
960 :2006/07/09(日) 03:28:26 ID:azGwxzN10
アクセスではなく、アクセス解析でした。
>>961 ありがとうございます。
ということは、特に問題ないのかな・・・。
アクセス解析防止フィルタぐらい一杯落ちてる
ぶっちゃけた話、フィルタ作りはもう飽きたw
972 :
960 :2006/07/09(日) 07:31:21 ID:azGwxzN10
正々堂々とサイト訪問しろ アクセス解析と一口に言っても、いろんなのが氾濫してんだからな どのアナライザをカットしたいのかわからんではないか
次すれ作らなくていいのか? いらねーよが大多数なので今のところ待機中
本スレが機能してないから統合で構わない。ブラクラ対策スレも入門スレもいらない。 本スレへの誘導リンク貼っときゃいいんじゃないかな。
いらないと言っても結局は建つけど
かもね。 スレが複数あってもマルチされるだけで意味無いんだよな。
ブラウザはDonutを使っているんですが、 タブに表示されるタイトル名を違う名前に置き換えたいのですが、 例えば「AAAAA」というのを「BBBBB」に。 よろしくお願いします。
[Patterns] Name = "Title changer" Active = TRUE Limit = 256 Match = "$NEST(<title,</title>)$STOP()" Replace = "<title>BBBBB</title>"
>>979 誤解かも知れんけど、閲覧したサイトのタイトルを会社に知られたく無いという事なら、
自分のマシンだけでタイトル書き換えても意味無いと思うよ。
>>981 そういう目的ではないです(苦笑
>>980 これだと全部のタイトルが変わってしまいます。
タイトルが「AAAAA」の場合のみ「BBBBB」にしたいのです。
説明不足ですいません。
[Patterns] Name = "Title changer" Active = TRUE Limit = 256 Match = "<title>AAAAA</title>$STOP()" Replace = "<title>BBBBB</title>"
>>980 が読解できるのにそんなのも自分で書けないって不思議
育ちが良いのでは?(苦笑
>>983 上手く行きました。
どうもありがとうございました。
タブのタイトル変えてなんか意味とかあんの?
Mixiではユーザー名とかトピック名に変えたい時があるな やり方分からんけど
>>987 [Microsoft WindowsMedia Player]みたいなのがMicroso...みたいに省略されるのが嫌なんじゃね?
なるほどね。タブの幅を広くすると見てくれが悪いしな
>988 ビューしてる先のユーザ名とかトピック名とか? 現状でもできないことはないだろうけどそういうのはmetaタグで埋め込んでくれるともっと楽でいいよね。 そうすれば人それぞれに好きなタイトルを表示させられるし。
992 :
960 :2006/07/09(日) 16:34:33 ID:azGwxzN10
>>973 アクセス解析設置されてると、なんか気持ち悪いので・・・。
アクセス解析の種類で、フィルター違うのかな。
例えば、忍者だったら
>>965 の忍者キラーでokですか?
>>967 気に入らないなら何がいけないのかを直接言いに行け。
言わんとしたいことは分からなくもないけど。
>>992 それでok。 数ヶ月前に更新されたばかりだしばっちり。
996 :
960 :2006/07/09(日) 21:47:08 ID:azGwxzN10
1000GET!
1001 :
1001 :
Over 1000 Thread このスレッドは1000を超えました。 もう書けないので、新しいスレッドを立ててくださいです。。。