1 名前:ミスターオミトロン [2006/11/13(月) 17:00:32 ID:oCAoIukD0] このスレは作成依頼されたフィルタを有志により作るスレッドPart4です アップローダー wind.prohosting.com/proxmine/cgi-bin/uploader/ proxo.hp.infoseek.co.jp/cgi-bin/sn_uploader/upload.html Proxomitron等に関するWiki abc.s65.xrea.com/prox/wiki/ Thinking Archive(仮) vird2002.s8.xrea.com/ CastleCops Proxomitron Filters www.castlecops.com/f65-Proxomitron_Filters.html >>2-10 にいろいろと
487 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/03/09(金) 03:15:52 ID:3Cl7ivfL0] 簡単なテストでANDとDOUBLEANDとTSTの速度比較をしてみた。 AND : <a\s([^>]+>&href=$AV(*)) TST : <a\s([^>]+)\0>$TST(\0=*href=$AV(*)*) DAND : <a\s([^>]+>&&*href=$AV(*)*) フィルタとしては考え得る限りで同一の動作をすると思う。 結果から言うと所要時間は AND ≒ DAND < TST でした。 TSTが一番遅いだろうとは思ってたけどANDとDANDがほぼ同じというのは少し意外。 #もちろんサンプルによっては結果は異なると思うので、本来なら色々なサンプルでテストしてみるべきところだが #今回は二つのサンプルでほぼ同一の結果(所要時間の比率)を得たのでよしとした。 AND/DANDとTSTの速度差は数回の平均を取った場合で0.7%。 ANDとDANDの差は誤差範囲内。 ちなみに <a\s[^>]++href=$AV(*)[^>]+> は上記三つの約7倍の速さだった。 [^>]++をアスタリスクに置換すると更に6%早くなった。(但しこのアスタリスクの使い方は非推奨) 長い文字列に対しては$NESTを使うことで更に早くなる場合もあるがそれはケースバイケース。
488 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/03/09(金) 04:45:32 ID:hFs8erHf0] ニコニコ動画から直接.flvをDLできるフィルタきぼん
489 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/03/09(金) 05:15:16 ID:edKiCEkR0] 間接キスでガマンして
490 名前:名無しさん@お腹いっぱい。 [2007/03/09(金) 05:36:25 ID:TLLxfe8n0] 素人な人は、ここで質問して作ってもらったフィルターは、すぐに試さない方がいいかもしれない。 半日程度寝かして、否定的なコメントが出ないぐらいまで待った方が良いかもね。 とんでもないスクリプトを混ぜられるかもしれん。
491 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/03/09(金) 07:20:42 ID:bjxVpHmZ0] >>485-487 どうも 作成途中の段階で冗長になりすぎてわけがわからなくなったので 全部おじゃんにして作り直して出来たと思った途端に半端なまま UPしてしまいました。 出直します..
492 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/03/10(土) 03:18:00 ID:uXHetq1x0] <a(rea|)>...</a(rea|)> についてすっかり忘れていたことがあったので追記します。 >残念ながらProxomitronの仕様ではこれに多少の修正を加えることで「意図」通りに動かすということはできない。 これはまったくの誤りで実はもう一つの(比較的小規模な修正で意図通りに動かせる)方法がある。 第三の方法は変数をフラグとして用いてOR関数で分岐させるというもの。 例: <a(\s$SET(flag=0)|real\s$SET(flag=1))[^>]+>*<($TST(flag=0)/a|$TST(flag=1)/area)> 但しこの手法ではローカル変数は使えないので、グローバル変数を使うことになるが使用後に解放することを忘れずに。 解放のやりかたは不要になった段階で$SET(flag=)というように空でSETすれば良い。 グローバル変数自体は基本的にほかのフィルタに値を渡すために使うためのもので、フラグとして使うというのはトリッキーな部類に属すのだが Proxomitronの仕様上、ローカル変数をフラグとして利用することができない(一度使ったローカル変数をマッチ欄で再度使うことができない)ので仕方がない。
493 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/03/10(土) 03:35:34 ID:650fW3oU0] ttp://vipup.org/ このサイトの広告を消すフィルタを作っていただけないでしょうか。よろしくお願いします。
494 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/03/10(土) 04:37:51 ID:Q+Oc8G1J0] Name = "3d>>>2 d" Active = TRUE URL = "$TYPE(htm)vipup.org/" Limit = 256 Match = "$NEST(<a\shref=$AV(click.t2z.jp/* ),</a>)|" "<a\shref=$AV(ofuda.cc/ )*</a>"
495 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/03/10(土) 06:38:33 ID:650fW3oU0] >>494 遅くなりましたが、ありがとうございます。
496 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/03/10(土) 08:02:57 ID:pr+9tzs+0] firefoxのadblockplusで^click\. とofuda.cc/を弾いてる漏れには無縁
497 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/03/10(土) 10:08:04 ID:FcJ4cSpA0] オミトロン入れてるのにadblockplusとかアホちやうかと思う。
498 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/03/10(土) 10:57:17 ID:v1L9WvH00] >>492 一生懸命なとこ申し訳ないけど、日本語訳ヘルプサイトのマッチングコマンドページの $TSTの説明文のところにそれと同じことをローカル変数で実現する例が載ってる。 あとその方法でやるなら$TSTはもっと後ろに置くべき。 </a>、</area>の後ろで。 >>470 置換スタックに代入するためだけに先頭の<aを()で囲うのは 処理速度の低下になるから高速化に拘るのであれば避けるべき。
499 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/03/10(土) 14:15:10 ID:uXHetq1x0] >498 $TST(\0)の存在を完全に忘れてた。使い所はまだあまり思い浮かばないけど参考になったよ。 <([a-z]+)\1*</$TST(\1)> すごく……スマートです。 >置換スタックに代入するためだけに先頭の<aを()で囲うのは >処理速度の低下になるから高速化に拘るのであれば避けるべき。 該当部分を $NEST(<a(\s|rea\s)\#, .....) に変えて 置換テキストの先頭に <a を加えたほうが良いということ? 前後での速度変化は検知すら不可能な気がするけど調べてないから何とも言えない。 しかし個人的には修正するときに弄る箇所が多くなる可能性があるフィルタというのは使い勝手がよくないと思う。
500 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/03/10(土) 14:16:49 ID:nGbrcGZM0] myspace(例えばwww.myspace.com/hellogoodbye )で 一番上に出る"今週のお勧めアーティスト"のバナーを消したいのと、 おそらくインターネットオプションの言語が日本語だと メニューが中途半端に日本語になるのがいやなのですが(英語のままがいいです)、 フィルターで解決できますでしょうか? もしできるのであればどなたか作っていただけませんか? よろしくおねがいします。
501 名前:think ◆MM0nnAOCiQ mailto:sage [2007/03/10(土) 14:58:13 ID:iZYl65vB0] >>498 > 置換スタックに代入するためだけに先頭の<aを()で囲うのは処理速度の低下になる 今回はa要素かarea要素かを覚え込ませる必要があるので、置換スタックを使わざるを得ませんでした。 (rea|) で変数に格納した方が望ましいということでしょうか?
502 名前:think ◆MM0nnAOCiQ mailto:sage [2007/03/10(土) 15:00:25 ID:iZYl65vB0] ところで、何の前提も無しに私がフィルタを作成しようと思ったら、$NESTは使わないと思います。 $NESTを使用すると、最小限のマッチが実現しにくくなる(マッチしなくても良いところまでマッチする)場合があり、今回はその状況なので…。 [Patterns] Name = "Insert <a> title [2007/03/10] test4" Active = TRUE URL = "$TYPE(htm)" Limit = 256 Match = "(<a(rea|)\s)\#(^(^[^>]++href=$AV(\2)))" "(([^>]++)\#title=$AV(\1)$SET(#=title="<a title>: \1\r\n<a href>: \2)|" "$SET(#=title="<a href>: \2))" "(" "[^>]+>(^<img\s[^>]++title=)" "(<img\s(" "[^>]++src=$AV(\3)$SET(#=\r\n<img src>: \3)&" "([^>]++alt=$AV(\4)$SET(#=\r\n<img alt>: \4)|)" ")|)" ")\9" Replace = "\@"\9" ---- サンプルソース <a id="a_id" title="a_title" href="a_href"><img alt="img_alt" src="img_src" title="img_title" /></a> <a id="a_id" title="a_title" href="a_href"><img alt="img_alt" src="img_src" /></a> <a id="a_id" title="a_title" href="a_href">text</a> IE7とSyleraで検証したところ、img要素のtitle属性が存在するときは、img要素のtitle属性がツールチップに表示されるようです。 そのため、img要素のtitle属性が存在する状況ではマッチしないようにしてあります。 どうせなら、img要素用のフィルタがあっても良いかもしれません。
503 名前:think ◆MM0nnAOCiQ mailto:sage [2007/03/10(土) 15:06:46 ID:iZYl65vB0] >502の続き。 「最小限のマッチ」を最優先で考えるならば、>502のフィルタは \9 ではなく「肯定先読み」を使うべきですが、それでは置換スタックに該当テキストが代入されませんでした。 仕方がないので、ローカル変数で代替えしていますが、他に良い手段があれば改善したい部分です。
504 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/03/10(土) 17:25:14 ID:S0lPbdUa0] ニコニコ動画から直接.flvをDLできるフィルタきぼん
505 名前:think ◆MM0nnAOCiQ mailto:sage [2007/03/10(土) 17:52:21 ID:iZYl65vB0] >>325 遅レスですが、作成したのを忘れていました。(汗) [Patterns] Name = "Mooter: Kill ad [2007/02/09] test1" Active = TRUE URL = "$TYPE(htm)www.mooter.co.jp/moot/\?" Limit = 2048 Match = "$NEST(<td[ >],[^>]++bgcolor=$AV(*)*<div\s[^>]++id=$AV(sponsor)*,</td>)" "$SET(0=\r\n<!-- Kill Mooter ad -->\r\n)|" "<div(^(^\s[^>]++id=$AV(sp)))$SET(0=<div style="display: none")$STOP()" Replace = "\0" 参考までに、どんな時に「Mooter」で検索するのか、聞かせていただけると嬉しいです。
506 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/03/11(日) 01:45:50 ID:QC5rXZw90] みなさんのアドバイスをいただきたいです。 proxo.hp.infoseek.co.jp./cgi-bin/sn_uploader/src/pr0071.txt 相対リンクを絶対リンクに直すリストを作ったのですが、思ったように動きません。 相対リンクなら絶対リンクに直し、絶対リンクならそのままにグローバル変数ABSにURLを格納するのですが それを正しく呼び出すことができません。 $SET(ABS=\8\9) のようにセットしているのですが $GET(ABS)と\8\9が一致していないということです。 置換テキストで $GET(ABS) の代わりに\8\9を使うとこちらの環境では大部分のウェブサイトで動作を確認できました。
507 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/03/11(日) 02:41:41 ID:LLusi//q0] パスを変換するフィルタはときどき話題になるけど、面倒な問題だと思う。 自分も以前考えたことがあったけど、 わざわざパスを変換しなくても目的さえ達成できればいいかと考えて、 まったく別の見方からフィルタを書くことで解決した。 パスを書き換えることが本当に必要なのかを考え直すのも手だと思う。
508 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/03/11(日) 02:45:15 ID:woTiePuf0] >>502 457ですが ありがとうございます。
509 名前:498 mailto:sage [2007/03/11(日) 14:17:22 ID:LSOWJrEn0] >>499 >>501 >置換テキストの先頭に <a を加えたほうが良い >(rea|) で変数に格納した方が望ましい そうです。 でもこれは’高速化を重視する場合は’という条件での 話なので必ずこう書かなければいけないということではないです。 >>470 は高速化のために$NESTを使ってると思ったので>>498 のレスを 付けたんですが、>>502 を読むとどうやら違ったみたいです。 こちらの勘違いだったようなのですみませんが忘れて下さい。
510 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/03/11(日) 15:31:59 ID:LSOWJrEn0] >>503 (^(^$SET(#=…)))は使えないようですね。 (^(^$SET(ローカル変数=…)))は動いたのでこれで代用してはいかがでしょうか。
511 名前:名無しさん@お腹いっぱい。 [2007/03/11(日) 17:50:01 ID:0EO6G7xs0] title要素内の改行をスペースに置換するにはどうしたらいいでしょう。
512 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/03/11(日) 20:45:54 ID:LSOWJrEn0] >>506 試してないので推測ですが、wikiの$SETの説明文に書いてある現象が 起きていると思われるので最短一致にならない書き方にすれば直ると思います。 >>511 改行は\r\n。
513 名前:511 [2007/03/11(日) 21:44:41 ID:0EO6G7xs0] >>512 それは知っています。
514 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/03/11(日) 21:57:38 ID:qs13JhQR0] アメーバ動画をDLできるフィルタきぼん
515 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/03/11(日) 23:37:09 ID:LSOWJrEn0] >>513 一応確認なんですが>>502 のフィルターのことですよね?
516 名前:511 [2007/03/12(月) 00:16:20 ID:/2yG7ZeG0] >>515 違います。 私は既存のどのフィルターに対しても言及していません。 ただ、私のやりたいことについて言っているのです。 改行をスペースに置換する方法は知ってるんです。 それをtitle要素に限定する方法がわからないのです。
517 名前:think ◆MM0nnAOCiQ mailto:sage [2007/03/12(月) 00:32:23 ID:zgeKaTdr0] >>510 ローカル変数で万事OKでした。多謝。 # まさか、置換スタックの制限だったとは…。$SET が使えないものと想定していました。 [Patterns] Name = "Insert <a> title [2007/03/12] test4.1" Active = TRUE URL = "$TYPE(htm)" Limit = 256 Match = "(<a(rea|)\s)\#(^(^[^>]++href=$AV(\2)))" "(([^>]++)\#title=$AV(\1)$SET(#=title="<a title>: \1\r\n<a href>: \2)|" "$SET(#=title="<a href>: \2))" "(^(^" "[^>]+>(^<img\s[^>]++title=)" "(<img\s(" "[^>]++src=$AV(\3)$SET(\8=\r\n<img src>: \3)&" "([^>]++alt=$AV(\4)$SET(\9=\r\n<img alt>: \4)|)" ")|)" "))" Replace = "\@\8\9"" >>511 ,513,516 $NEST でマッチ範囲を制限してみてはどうでしょうか?
518 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/03/12(月) 00:46:37 ID:awFCazQV0] どなたかSHOUTcast Song HistoryをShift-JISで表示する ヘッダフィルタをお願いしマス
519 名前:think ◆MM0nnAOCiQ mailto:sage [2007/03/12(月) 00:52:44 ID:zgeKaTdr0] >>511 ,513,516 もしくは、「title要素の開始タグから次のタグまでの文字列」に制限する方法ですね。 <title>[^<]++[\r\n]... title要素は、内容モデルで文字列のみを許可しているので、HTMLに即した書き方である限り、他のタグが現れることはありません。 ttp://www.asahi-net.or.jp/%7Esd5a-ucd/rec-html401j/struct/global.html#h-7.4.2 最も、"<>" を文字列としてそのまま書いたりするサイトもあるので(本来は実体参照で書くべきところです)、$NESTの方が確実ではあります…。 見やすいフィルタを作るなら、Bounds でも良いです。
520 名前:511 [2007/03/12(月) 01:35:35 ID:/2yG7ZeG0] >>517 ,519 ありがとうございます。 私、$NEST()の使い方がどうもわからないのです。 Match = "$NEST(<title*>,\r\n,</title>)" Replace = " " と書いてみたんですが、駄目でした。おそらくこれは間違った書き方なんでしょう。 正しい書き方をご教示願います。
521 名前:think ◆MM0nnAOCiQ mailto:sage [2007/03/12(月) 02:28:08 ID:zgeKaTdr0] >>520 "$NEST(<title*>,\r\n,</title>)" は "<title>\r\n</title>" にマッチします。 $NEST の第二引数 (上例では "\r\n") は完全一致ですので、「改行を含む文字列」を指定してやれば良いでしょう。 「改行を含む文字列」の簡単な例は *(\r\n|[\r\n])* ですが、これでは一つの改行しか置換できません。 複数の改行を置換するためには、「グループ化を利用して、再帰的にマッチ」させる必要があります。 ttp://www.pluto.dti.ne.jp/~tengu/proxomitron/help/Tips_And_Tricks.html (「再帰的なマッチングを使わない方法」を参照) (*(\r\n|[\r\n]))+{1,*}* この表現で期待通りにマッチすると思います。 後は、置換スタックに格納して、変換してあげてください。 改行が見つかったときに、$SET で置換スタックに半角空白を格納するのがポイントです。
522 名前:think ◆MM0nnAOCiQ mailto:sage [2007/03/12(月) 02:38:10 ID:zgeKaTdr0] 今更ですが。 title要素内の「空白」と「改行」は同様に「空白としてWebブラウザに解釈される」ので、ブラウザの挙動を変更したいのなら、ご希望のフィルタは期待通りに動作しません。 今回は別の意図が質問者さんにあるのかと思っていたのですが、やはり、気になってしまいました…。
523 名前:511 [2007/03/12(月) 06:33:53 ID:/2yG7ZeG0] thinkさんのレスを参考にして、title要素内の改行をスペースに置換するフィルターを作りました。 [Patterns] Name = "Opera History Saver" Active = TRUE Multi = TRUE Bounds = "<title(\s*|)>*</title>" Limit = 256 Match = "(\#(\r\n|[\r\n])$SET(\#= ))+\1" Replace = "\@\1" これで適切なのかどうか不安ですが、テストをした限りでは私の望み通り働いてくれます。 thinkさんありがとうございました。 なぜtitle要素内の改行を空白に置換したかったのかといいますと… Operaの履歴ファイルがたまに破損するから調べてみると、原因はタイトルに含まれる改行らしい。 そこで、Proxomitronを使って、改行を空白に置換してしまえと思ったわけです。 でもですね、もっとよく調べてみると、メディアタイプがapplication/xhtml+xmlの場合において タイトルに改行を含むと履歴ファイルが破損するらしく、text/htmlならセーフみたいなんです。 だからHTTPヘッダーフィルターでapplication/xhtml+xmlをtext/htmlに書き換えれば済む話でした。 せっかく作った "Opera History Saver" ですが、存在意義がなさそうです…。
524 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/03/12(月) 12:32:18 ID:sFZoAlND0] 以前このスレでYahooBlog検索の右側にあるニュースとかを消すフィルターを作ってもらったものですが Name = "test" Active = TRUE URL = "blog-search.yahoo.co.jp/" Limit = 50 Match = "(<!-- [%b1][%a6]\w --> )\1<td [^>]+>$SET(#=\1<td style="display: none;">)" Replace = "\@" これがいつのまのか通用しなくなってしまいました。どこをどう変えればいいのかご教示してくれれば幸いです。
525 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/03/12(月) 12:55:47 ID:tVcyCE360] IEが受け取れないメディアタイプを指定するほどのニッチなウェブサイトがタイトル要素に改行を含めるなんてなかなか飲み込めない話だね。 もしかしてインデントでもしてるのかな。 どちらにしろそんなウェブサイトは見る価値がないだろうと思うのでURL killfile.txtに追加するのも一つ。 <title> タイトル </title>
526 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/03/12(月) 14:44:55 ID:aCYQ5JIW0] >>485 >もう一つだけど最初のうちはアスタリスクを乱用しないほうがいい。 >初心者にとってのアスタリスクというのはおそらく面倒なことをブラックボックスに詰め込ん>>でどっかにやるためのツールなんだろうけど >それじゃ何も上達しないし理解もすすまないだろう。 >>(*href=$AV(\1)*|)&(*title=$AV(\2)*|) >これなんかはアスタリスク乱用の好例だね。 Tips and Tricks ttp://www.pluto.dti.ne.jp/~tengu/proxomitron/help/Tips_And_Tricks.html アンパサンド「&」を使用すれば、タグの属性を、見つけた順番に関係なく 取り込むことができます。 たとえば、「<img ... >」タグを書き換えて、あなたが持っている画像と置き換え、 元の「width」と「height」の値はそのまま残す、という例を考えてみましょう。 その場合、以下のようにします... Matching: <img ( (*(height=\w)\1*| ) & (*(width=\w)\2*| ) ) > この表現真似したんだろ。少し意地悪過ぎないか?
527 名前:511 [2007/03/12(月) 21:51:58 ID:xzItuT7B0] >>525 私のOperaの履歴が破損する原因だったサイトは――こんな言い方するとそのサイトが悪い見たいだけど、 もちろん悪いのはOperaのバグ――IEからのリクエストが来たらtext/htmlを吐くように配慮しているサイトでした。 ところで「ニッチなウェブサイト」って何でしょう。
528 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/03/12(月) 23:09:22 ID:Xw0bZVnJ0] >ニッチ【niche】 >西洋建築で,壁面を半円または方形にくぼめた部分。 >彫刻などを飾ったり噴水を設けたりする。壁龕(へきがん)。 >転じて,広く,隙間をいう。 スキマ産業的Webサイト???
529 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/03/12(月) 23:26:51 ID:Tn7hpqvH0] ニッチもサッチもどうにもこうにもブルドッグ
530 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/03/12(月) 23:30:23 ID:IhbXMcJV0] >525 ttp://www.faireal.net/ application/xhtml+xml の際のソース参照。
531 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/03/13(火) 02:12:22 ID:O2zL+zL90] google imageまたダメになった?
532 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/03/13(火) 02:35:52 ID:mu+tlPQe0] >>531 Google Image: Image Change (070115)だったら <a href="\+e\+b.m\+"><imgを <a href="\+e\+b.n\+"><imgにすればいいよ
533 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/03/13(火) 02:38:39 ID:O2zL+zL90] >>532 おお、ありがとう。
534 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/03/13(火) 13:37:19 ID:6oKDUNzC0] >>524 とりあえず作り直してみた。 Name = "Yahoo blog search" Active = TRUE URL = "blog-search.yahoo.co.jp/" Limit = 80 Match = "<td [^>]+>( <!-- [%a5][%c8])\1$SET(#=<td style="display: none;">\1)" Replace = "\@"
535 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/03/13(火) 19:16:45 ID:POt57Fu+0] >>534 ありがとうございます・・・しかし私の環境では右側のキーワードの注目度、評判、ニュース記事などが消えませんでした。 blog-search.yahoo.co.jp/search?ei=UTF-8&fr=sfp&p=%E6%88%B8%E7%94%B0%E6%81%B5%E6%A2%A8%E9%A6%99
536 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/03/13(火) 22:36:25 ID:+r6UlnCI0] xhtmlって要素内に改行入れちゃいけないの? ってそんなことあるわけないか。
537 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/03/14(水) 08:04:48 ID:nHF3h8Zy0] >>535 トップページがEUCで検索した後のページがUTF8 …… なのか? これで動くはず。 Name = "Yahoo blog search" Active = TRUE URL = "blog-search.yahoo.co.jp/" Limit = 80 Match = "<td [^>]+>( <!-- [%a5][%c8][%a5][%d4])\1$SET(#=<td style="display: none;">\1)" "|</head>$SET(#=<style>\n<!--\ntd#rightcol { display: none; }\n-->\n</style>\n</head>)" Replace = "\@"
538 名前:think ◆MM0nnAOCiQ mailto:sage [2007/03/14(水) 08:25:50 ID:VvDEM1HD0] おはようございます。 最近、書くだけ書いて投稿を忘れてしまうことが多い気が…(汗)。遅レスですみません。 >>523 なるほど、そういう訳でしたか。 > これで適切なのかどうか不安ですが、テストをした限りでは私の望み通り働いてくれます。 比較的、良くできていると思います。少しアドバイスしますと -- <title(\s*|)> を <title(\s[^>]+|)> に変更 アスタリスクは制限された領域でない限り、2つ連続で使わない方がよいです。 ttp://vird2002.s8.xrea.com/proxomitron/meta_character/m-chara_asterisk.html -- \1 を \# に変更 置換テキストを \@ のみにできます。 -- Multi を外す。 私の書き方も悪かったのですが、このやり方はProxomitronHelp記述上の「再帰的なマッチングを使わない方法」です。 ヘルプ上のマッチという表現は「フィルタのマッチ」を指していると思われますが、私は「ある表現部分のマッチ」という意味で用いていましたので、ややこしくなっていました…。 Multiに依存しない表現を使う場合は、Multi を外した方が高速化されますし、誤爆を最小限に抑えられます。
539 名前:think ◆MM0nnAOCiQ mailto:sage [2007/03/14(水) 09:16:00 ID:VvDEM1HD0] >>536 br要素のことでしたら、XHTML1.1 でも使用できます。 <p> で括るべきところで <br /> を使うのはNGですが、論理構造にそってマークアップされていれば仕様上は問題ありません。 最も、「論理要素でないbr要素は非推奨」というポリシーの方もいるようで、それも納得できる話ですけど…。 余談ですが、XHTML2.0 では br要素 は廃止され、新しい要素として l要素 ("line"を意味し、空要素ではなくなります) が導入される見込みです。 ですので、前方互換性を考慮するなら、br要素は使わない方が良いと思います。 >>537 > トップページがEUCで検索した後のページがUTF8 …… なのか? Yahoo!ブログ検索 - 「Proxomitron」の検索結果 ttp://blog-search.yahoo.co.jp/search?p=Proxomitron ↑の検索結果はEUC-JPで出力されているようですが、そのフィルタではコメント部分がマッチしていないようです。 つまり、<td ... id="rightcol"> へのスタイルのみが適用されているわけですが、これで必要条件を満たしているように思えます。 [%a5][%c8][%a5][%d4] をデコードしてみると、"トピ" となりましたがこれはどの部分にマッチさせようとしているのでしょうか? Proxomitronによる改変前のhtmlソースを検索してみましたが、HITしませんでした。
540 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/03/14(水) 14:35:09 ID:2lOdeE9F0] >>537 完璧です!本当にありがとうございました。お手数をおかけしました。
541 名前:536 mailto:sage [2007/03/14(水) 18:17:41 ID:72ybzZdr0] >>539 やはりOKでしたか、どうもありがとう。
542 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/03/14(水) 18:49:24 ID:PpkryFJv0] >>542 よっ大将!見事ですね。
543 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/03/15(木) 04:00:02 ID:ridcyRuU0] ( ´ー`)。oO(…ぬう、何者かがいきなり自画自賛を・・・・)
544 名前:537 mailto:sage [2007/03/15(木) 12:43:08 ID:M2i2oHhr0] >>539 > トップページがEUCで検索した後のページがUTF8 …… なのか? ↑ この文字コード云々……というコメントは全然関係なくて、自分の勘違いでした。 > つまり、<td ... id="rightcol"> へのスタイルのみが適用されているわけですが、これで必要条件を満たしているように思えます。 検索結果のページの右側の部分には <td valign="top" id="rightcol"> という風に idが振られているんですが、 トップページ ttp://blog-search.yahoo.co.jp/ の同じ <td>タグの箇所にはidとかclassが無いんですよ。 それで仕方なく後続のコメント(<!--トピックス関連検索-->)にマッチするような書き方になりました。
545 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/03/15(木) 13:02:15 ID:M2i2oHhr0] そうそう、質問しに来たんですが…… ttp://www.amazon.co.jp/dp/4480062858/ たとえばこのページに行って、「マーケットプレイスに出品する」のボタンを押して、次の画面で ALT + 1キーを押すと「商品説明」のフォームにフォーカスが行くようにしたいんです。 それで以下のようなフィルタを書いたんですが、上手くいきません。 Name = "test" Active = TRUE URL = "s1.amazon.co.jp/" Limit = 100 Match = "(name=$AV(sdp-sai-condition-comments))\1$SET(#=accesskey="1" \1)" Replace = "\@" テスト画面ではちゃんとマッチするのですが、実際の画面ではマッチしてないようです。何が原因でしょうか?
546 名前:think ◆MM0nnAOCiQ mailto:sage [2007/03/15(木) 20:22:58 ID:ZDvtMegz0] >>544 トップページも考慮していたのですか。納得しました。 >>545 掲示されたフィルタをAmazonでテストしてみましたが、期待通りにマッチし、[Alt + 1] キーでフォーカスが移動しました。 インターネットキャッシュが残っているのではないでしょうか? # そのままでも支障はありませんが、そのフィルタは置換スタックを使わなくとも、置換テキストに accesskey="1" を記述するだけで機能します
547 名前:537 mailto:sage [2007/03/15(木) 22:09:16 ID:5Hl7rs480] >>546 >>545 のフィルタで上手くいきますか? 自分の環境では CTRL + F5 で強制リロードしても、「インターネットオプション」の 「インターネット一時ファイル」でキャッシュを削除しても変わらないです。 いったい何が悪いのやら…… ともかく、検証してもらってありがとうございました。
548 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/03/15(木) 22:13:02 ID:3+4y6iBM0] 他のフィルターに邪魔されてるのかも。 デバックモードを試してみれば分かります。
549 名前:think ◆MM0nnAOCiQ mailto:sage [2007/03/15(木) 22:47:52 ID:ZDvtMegz0] >>547 ええ、動作の上でもhtmlソースを見ても正常動作を確認しています。 >548氏の指摘が当たっているかもしれませんね。 フィルタは早い者勝ちなので、ある範囲にフィルタがマッチすると他のフィルタがマッチできなくなります。 Multiを有効にすることでこの制限を外せますが、動作が重くなるのと複雑なロジックなので、このオプションはあまり使わない方がよいです。
550 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/03/15(木) 22:59:36 ID:5XjJlvKV0] アクセスキーは例えば、検索画面等で [Mat] $NEST(<input\s,\0name=$AV((query|p|q)\1)\2,>) [Rep] <input \0name="\1"\2 accesskey="1"> pはyahoo,qはgoogle な感じで色々使えそうな気がする。
551 名前:think ◆MM0nnAOCiQ mailto:sage [2007/03/15(木) 23:00:00 ID:ZDvtMegz0] と、対処法を書き忘れました。 フィルタは上に配置してあるものの優先度が高いので、特定のURLにのみ適用させるフィルタ等、出来るだけ有効にしたいフィルタは上に配置してください。 基本的に、上に配置してあるフィルタから作用しますが、マッチングパターンによっては下のフィルタが先に働く場合もあります。 例えば、以下の状況があるとします。 ---- htmlソース <a href="test.com/">TestLink</a> ---- フィルタ Name="test filter1" Match="TestLink" Name="test filter2" Match="$NEST(<a\s[^>]++href=$AV(test.com/ ),</a>)" 「test filter1」は「test filter2」より上に配置しています。 但し、Proxomitronはファイルの先頭から1バイトずつ読み込んでフィルタに合致する状況かどうかテストしています。 ですので、初めにマッチするのはa要素から始まる「test filter2」です。 「test filter1」を優先させたい場合は、 Match="<a\s[^>]+>[^<]++TestLink" と書きます。 「test filter1」と「test filter2」はa要素から始まるパターンを持っている事になります。 同じ状況のフィルタが2つある場合は、優先度の高いフィルタから働きます。
552 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/03/15(木) 23:19:06 ID:uLDWt/T60] >551 下に置いたフィルタが先にマッチする現象は、ずっと前から疑問に思ってた。 Proxomitron の仕様なのね。 フィルタを書き直すなどしないとだめなのか……。 優先度を設定することができるといいんだけど。
553 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/03/16(金) 07:41:06 ID:kg1cd2iM0] そいうのは「仕様」とはいわないだろ。 むしろどうしてそれを疑問に思えるのかが疑問なくらいに 至極当たり前の挙動だ。
554 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/03/16(金) 09:13:53 ID:+6j5jdaH0] いや、日本語としては「仕様」で間違ってないと思うけど。 >>552 と>>553 がどういうニュアンスで捉えているか知らんが。
555 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/03/16(金) 10:31:21 ID:9J0GOQta0] まさに、仕様。
556 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/03/16(金) 14:29:20 ID:Lin+siRH0] 仕様であってると思うよ。 これが至極当たり前の挙動と思ってるほうがおかしい。 検索アルゴリズムにはいろいろあるがオミトロンのこの方式はその中の1つでしかない。
557 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/03/16(金) 14:30:04 ID:8/GkMkD20] まぁ確かに 0 < 1 と評価するのはProxomitronの仕様なのね みたいなこと言われたら 日本語として見ても主張の内容として見ても100%正しいけど なんか妙だなって違和感は覚える どちらの言いたいことも分かるが
558 名前:think ◆MM0nnAOCiQ mailto:>557 むしろ、数学の仕様です、と説明して欲しい気もw sage [2007/03/16(金) 18:53:48 ID:Hi6v4zHb0] >>552 「現在のProxomitronの動作」と「>552氏が求めるProxomitronの動作」をまとめると以下のようになると思います。 ---- 現在のProxomitronの動作 (以降、「動作A」とする) 1. ファイルの先頭の1バイト目から読み込み、優先度の高いフィルタから順番にテスト 2. 1バイト進み、優先度の高いフィルタから順番にテスト 3. 「3. の動作」をファイルの末尾([EOF])まで続ける ---- 「フィルタの優先度」を最優先した場合のProxomitronの動作 (以降、「動作B」とする) 1. ファイルの先頭の1バイト目から読み込み、「優先度の最も高いフィルタ」をテスト 2. 1バイト進み、「優先度の最も高いフィルタ」をテスト 3. 「2. の動作」をファイルの末尾([EOF])まで続ける 4. ファイルの先頭の1バイト目から読み込み、「前回テストしたフィルタの次に優先度の高いフィルタ」をテスト 5. 1バイト進み、「4. でテストしたフィルタ」をテスト 6. 「4. 〜 5. の動作」をファイルの末尾([EOF])まで続ける ここで、フィルタテストに必要とするバイト数に注目してみてください。 動作A … 「フィルタテストするバイト数 = 読み込んだファイルのサイズ」 動作B … 「フィルタテストするバイト数 = 読み込んだファイルのサイズ×フィルタの数」 このことから、「動作B」はフィルタの数が多ければ多いほど、Proxomitronの動作が顕著に重くなるでしょう。 「動作A」でもフィルタの数が多いほど、Proxomitronの動作が重くなりますが、フィルタテストするバイト数はファイルサイズ分だけに留まるため、「動作A」の負荷は「動作B」程には大きくならないと想像できます。 日本語としては私も「仕様」であっていると思いますが、上のところの内部事情を知っているか否かで見方が変わってきます。 特に、「フィルタの優先度」という表現は、如何にも「最優先されそうな設定」ですから、勘違いがあっても致し方ない気がします。 # 余談ですが、2chブラウザ「JaneDoe View」の ReplaceStr.txt は「動作B」に近い動作になっていると思われます。
559 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/03/16(金) 20:42:00 ID:HCDQ1kIb0] Jane板見たけど、結構大変そうなことやるつもりみたいだねぇ。 ガンガレ。
560 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/03/16(金) 21:13:39 ID:Lin+siRH0] JaneViewのReplaceStr.txtをオミトロン方式にしたら早くなるのではとViewスレに書き込んだら 複数の人に否定されたことがある。 何故なのか未だに分からない。
561 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/03/16(金) 22:31:20 ID:1wcXUPwP0] >558 ややっ、詳しい解説ありがとうございます。 そういう事情があると極めて妥当な動作ですね。 今後は、優先度を高くしたいフィルタは ほかのフィルタと競合しても問題ないように努力します。
562 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/03/17(土) 03:30:08 ID:AadC9Up90] TOK2のWebスペースの広告が激しくUzeeeee!! 消すこと自体は簡単なんだが、 こちらが対応した数日〜1週間後に10〜数百バイトくらいずつ増やして、 バイト制限を潜り抜けてきやがる。 このまま増やし続ける気か(#゚Д゚)ゴラァ!
563 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/03/17(土) 05:21:53 ID:RWq7G/0N0] >562 自分の場合、limit は16384(16KB)になってる。 1回につき最低でも512バイト、最大で2KBくらい増やして、 いったい何回 limit を増やしたことか。
564 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/03/17(土) 05:26:11 ID:RWq7G/0N0] いま思いついたけど、 <!-- tok2_top --> → <div class="tok2-ad"> <!-- tok2_top_end --> → </div> こんな感じで置き換えて、 div.tok2-ad { display: none !important } こうすれば消える。 バイト制限を増やす必要がなさそうだし、動作も軽くなるかも。
565 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/03/17(土) 11:02:34 ID:HIHHgHWL0] >>560 あまり知らずに言ってるんじゃない? 手間と見返りを考えるとその価値があるかは別として、確かに悪くはなさそうな気はする。
566 名前:560 mailto:sage [2007/03/17(土) 12:29:59 ID:MSvIFEtK0] >>565 どうなんでしょうね、検索アルゴリズムに詳しそうなレスを書く人ではありましたが 本当に詳しい人だったのか私には分かりませんでした。
567 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/03/17(土) 13:22:55 ID:AadC9Up90] >>563 自分は現在13160っす。 >>564 ユーザスタイルシートはキャッシュするからなぁ。 ソース見たときすっきりせんし。
568 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/03/17(土) 18:08:19 ID:MjkjkU7H0] BFilter ttp://bfilter.sourceforge.net/ 新顔ウェブフィルタープロクシらしい
569 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/03/17(土) 18:37:53 ID:jVQSctLy0] >>564 >>567 <noembed><nolayer><comment>で囲めばキャッシュしないはず。
570 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/03/18(日) 07:59:30 ID:s5Pb2Uih0] >>562 トクトクの人気ランキングに出てるサイトいくつか見たけど、そんなに広告だらけって感じでもなかったけど……
571 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/03/18(日) 11:52:02 ID:x92h/snR0] >>570 無料の方だよ。 人気ランキング上位は有料が多い気がする。
572 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/03/18(日) 16:33:15 ID:4oJ5D+yI0] ttp://www.1rk.net/ このサイトの広告を消すフィルターを作って頂けないでしょうか。 お願いします。
573 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/03/18(日) 19:50:17 ID:UeHdvFS20] URLの最後が.jpgで終わっててContent-Type: がimage/jpegで、中身が普通のhtmlになってると WEBページフィルタ適応されないんですが対処方法ありませんか?
574 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/03/18(日) 21:08:43 ID:YcHYPNb90] >>562 とりあえず作ってみた。 広告部分にidが振ってあったのでCSSで消したよ。 Name = "TOK2" Active = TRUE URL = "[^/]++.tok2.com/$TYPE(htm)" Limit = 120 Match = "(<script * </script> && *(prego.jp)*)" "|</head>$SET(#=<style>\n<!--\n" "#TOK2-TOP-BANNER, #TOK2-SIDE-BANNER, #TOK2-SEO { display: none; }\n" "-->\n</style>\n</head>\n)" Replace = "\@"
575 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/03/18(日) 21:09:27 ID:YcHYPNb90] >>572 Name = "1rk" Active = TRUE URL = "www.1rk.net/$TYPE(htm)" Limit = 80 Match = "(<img *> && *(image.jpg)*)" "|</head>$SET(#=<style>\n<!--\n" ".ad, p.ads, p.adw { display: none; }\n-->\n</style>\n</head>)" Replace = "\@"
576 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/03/18(日) 21:35:26 ID:qf1arYv00] イメージファイルの中にアドビのタグ?が入っていると 誤爆するのを防ぐにはどうしたらよいですか
577 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/03/18(日) 21:56:22 ID:WywTxmu/0] >>573 Content-Type: をimage/jpegからtext/htmlに置換するフィルタで対処。 URL欄を使ってフィルタが動作するサイトを絞ってから使うといいよ。 [HTTP headers] In = TRUE Out = FALSE Key = "Content-Type: image to html (In)" URL = "www.hoge.com/" Match = "image/jpeg" Replace = "text/html" >>576 画像ファイルはデフォルトではフィルタリング対象外のはず。 その画像を見れば対策方法が分かるかも。
578 名前:ROMラー mailto:sage [2007/03/18(日) 23:52:16 ID:WywTxmu/0] >>506 これで期待通りに動くようです。 # NoAddURL (#?+)\9$URL(\8)$SET(ABS=\8\9) ./(?+)\9($TST(SWITCH1=1)$SET(ABS=$GET(CURRENTURL)\9)| $URL(([^:]+://*/([^/]+/)+)\8)$SET(CURRENTURL=\8)$SET(SWITCH1=1)$SET(ABS=\8\9)) /(?+)\9$URL(([^:]+://*/)\8)$SET(ABS=\8\9) ../($TST(SWITCH2=1)$SET(NUM=$GET(LEVEL))|$URL([^:]+://*/$SET(NUM=1) ([^/]+/$LST(increment))+)$SET(SWITCH2=1)$SET(LEVEL=$GET(NUM))) ($LST(decrement)../)+$URL(([^:]+://*/([^/]+/$LST(decrement) $TST(NUM=[^0]*))+)\8)(?+)\9$SET(ABS=\8\9) ([a-z]+:?+)\9$SET(ABS=\9) (?+)\9$URL(([^:]+://*/([^/]+/)+)\8)$SET(ABS=\8\9)
579 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/03/19(月) 00:42:49 ID:tQMpuigO0] >>575 遅くなりましたが、ありがとうございます。
580 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/03/19(月) 00:45:50 ID:NXCUdEyC0] 本スレが不毛な言い争いの場に… DOCTYPE宣言があればそのまま、無ければ付加ってフィルタを作ろうと思ったのに 前者が実現できなくて問答無用に付加されてしまう 有効リストなり無効リストなりを作ってマッチさせる手もあるけど それじゃ汎用性が落ちるからなぁ
581 名前:ROMラー mailto:sage [2007/03/19(月) 00:48:14 ID:7ZzHzeuq0] >>506 $GET(ABS)と\8\9が一致しない原因は以下のフィルターを試せば分かります。 テストウインドウに"abc"と書いて下の3つのフィルターを試して下さい。 Name = "$SET test1" Active = FALSE Limit = 256 Match = "*" Replace = "<match>" Name = "$SET test2" Active = FALSE Limit = 256 Match = "*$SET(\0=text)" Replace = "<match>" Name = "$SET test3" Active = FALSE Limit = 256 Match = "?+$SET(\0=text)" Replace = "<match>" 1と2の違いは$SET(\0=text)が付いてるかどうかの違いしかありませんが結果が 変わっていると思います。 3では2で起きた問題を修正するために*を?+に書き換えています。
582 名前:ROMラー mailto:sage [2007/03/19(月) 01:09:43 ID:7ZzHzeuq0] >>506 何故こうなるかというと、*は後ろに何かがあれば最短一致として動作、無ければ 最長一致として動作するためです。 *の後ろに$SETコマンドがあると*は最短一致として 動作するようになってしまうので2のようにカラにマッチしてしまうわけです。 そこで後ろに何があっても最長一致をする?+を使うことでこの問題を回避しています。 >>580 こんな感じですかね。 Active = FALSE Limit = 256 Match = "(" "(^(^ <!DOCTYPE))" "|" "$SET(0=<!DOCTYPE ....)" ")" "$STOP()" Replace = "\0"
583 名前:580 mailto:sage [2007/03/19(月) 06:43:35 ID:NXCUdEyC0] >>582 お、これはありがとうごぜぇやす ブックマークから適当に踏んで試してみたらXML宣言ありなページで誤爆したんで 回避する為に”(^(^ *<;!DOCTYPE))”に変えてしばらく使ってみるっす そこでSTOPかけるのを思い付かんかったのと 宣言文に続く<HTML〜まで見るようにしてたのが敗因か
584 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/03/19(月) 18:06:50 ID:WHlPa9sf0] >>577 ども URL: Filter image extension をブラクラ用にオンにしてます ログに Protect Contents except HTML が出てます ttp://www.mxtv.co.jp/goji/ ここの画像がそうなります
585 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/03/20(火) 16:44:20 ID:0LIwAOV50] Amazonの長ったらしいURLを短くするフィルターありませんか? こんな感じで ttp://rag2ch.s151.xrea.com/archives/2007/02/10-0018
586 名前:ROMラー mailto:sage [2007/03/20(火) 17:30:14 ID:PPne+SNt0] >>584 Protect Contents except HTMLというフィルタが誤爆しているようなので このフィルターを修正するしかないですが、ログを検索してみてもこのフィルターを 配布しているところが見つかりません。 よろしければここに貼るか、うpして頂けないでしょうか。 問題が起こるところがそのサイトだけならば (^([^/]++.|)mxtv.co.jp/) をそのフィルターの URL欄の先頭に入れれば回避出来ますが、根本的な解決にはなりません。
587 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/03/20(火) 20:49:41 ID:PJkWD4Ws0] >>585 ヘボくてすんません、おかしかったら誰か直してやってください 勉強させていただきやす。 [HTTP headers] In = FALSE Out = TRUE Key = "URL: Amazon URI Simplizer alpha.1.3.1" URL = "www.amazon.co.jp/\w(ASIN(/|=)|obidos/|product/)[0-9A-Z]+{10}?" Match = "*([0-9A-Z]+{10})\0" Replace = "$JUMP(www.amazon.co.jp/o/ASIN/\0 )$LOG(R[Amazon] www.amazon.co.jp/o/ASIN/\0 )" www.amazon.co.jp/gp/product/ じゃなくて www.amazon.co.jp/o/ASIN/ に飛ばす仕様なんだけど これだとまずいのかなぁ。飛べない商品とかあるかもしれない。 Amazonの仕様自体イマイチわかってないからそこも不安…。