w3m その8 (738レス)
上下前次1-新
663: 2019/09/07(土)15:01 AAS
 #!/bin/zsh 
 # 直し忘れの修正。 
 UNIQ=$(basename $( factor $PPID |md5sum )) 
 if test "${QUERY_STRING%%=*}" != $UNIQ; then  # default. 
 URL="外部リンク:www.google.co.jp 
  
 else case "$QUERY_STRING" in 
 # formから流れてくるもの。# 次のページへ、時間指定等の対応。 
 ${UNIQ}=form\&*|${UNIQ}=rotate\&*)  
 URL="外部リンク:www.google.co.jp cut -d '&' -f 2- <<<$QUERY_STRING )";; 
 ${UNIQ}=decode\&*) # ここから再検索して下さいの対処。 
 URL="外部リンク:www.google.co.jp\ 
 $(nkf --url-input <( sed 's/[^&]*&//; s/%25/%/g' <<<$QUERY_STRING ))";; 
 esac 
 fi 
 <<EOF 
 Content-Type: text/plain 
 w3m-control: GOTO $URL 
 w3m-control: VIEW 
 w3m-control: PIPE_BUF sed 's%\(<input[^>]*\)Shift_JIS%\1UTF-8%; s%\(<form \)\([^>]*>\)'\ 
 '%\1action="file:///cgi-bin/google.zsh" \2<input name=$UNIQ type=hidden value="form">%;'\ 
 's%\(<span[^>]*>\|</span>\)%%g; s%<div[^>]*>%%g; s%</div>%<div>&%g;'\ 
 's,\(<a [^>]*href="\)/url?q=/search%3F\(q%3D[^"]*"\)'\ 
 ',\1file:///cgi-bin/google.zsh?${UNIQ}=decode\&\2,;'\ 
 's%\(<a [^>]*href="\)/url?%\1外部リンク:www.google.co.jp\ 
 's%\(<a [^>]*href="\)/search?\([^"]*"\)'\ 
 '%\1file:///cgi-bin/google.zsh?${UNIQ}=rotate\&\2%g' 
 w3m-control: VIEW 
 $( printf '%s\n' 'w3m-control: DELETE_PREVBUF'{,,,} ) 
  
 EOF 
664: 2019/09/07(土)15:35 AAS
 #!/bin/zsh 
 # ごめんこれだけで良かったの修正。 
 UNIQ=$(basename $( factor $PPID |md5sum )) 
  
 case "$QUERY_STRING" in 
 # formから流れてくるもの。# 次のページへ、時間指定等の対応。 
 ${UNIQ}=form\&*|${UNIQ}=rotate\&*)  
 URL="外部リンク:www.google.co.jp cut -d '&' -f 2- <<<$QUERY_STRING )";; 
 ${UNIQ}=decode\&*) # ここから再検索して下さいの対処。 
 URL="外部リンク:www.google.co.jp\ 
 $(nkf --url-input <( sed 's/[^&]*&//; s/%25/%/g' <<<$QUERY_STRING ))";; 
 *) URL="外部リンク:www.google.co.jp 
 esac 
  
 <<EOF 
 Content-Type: text/plain 
 w3m-control: GOTO $URL 
 w3m-control: VIEW 
 w3m-control: PIPE_BUF sed 's%\(<input[^>]*\)Shift_JIS%\1UTF-8%; s%\(<form \)\([^>]*>\)'\ 
 '%\1action="file:///cgi-bin/google.zsh" \2<input name=$UNIQ type=hidden value="form">%;'\ 
 's%\(<span[^>]*>\|</span>\)%%g; s%<div[^>]*>%%g; s%</div>%<div>&%g;'\ 
 's,\(<a [^>]*href="\)/url?q=/search%3F\(q%3D[^"]*"\)'\ 
 ',\1file:///cgi-bin/google.zsh?${UNIQ}=decode\&\2,;'\ 
 's%\(<a [^>]*href="\)/url?%\1外部リンク:www.google.co.jp\ 
 's%\(<a [^>]*href="\)/search?\([^"]*"\)'\ 
 '%\1file:///cgi-bin/google.zsh?${UNIQ}=rotate\&\2%g' 
 w3m-control: VIEW 
 $( printf '%s\n' 'w3m-control: DELETE_PREVBUF'{,,,} ) 
  
 EOF 
665: 2019/09/07(土)19:35 AAS
 一応簡単に説明しくおくと、最近googleで検索してもlink先へ飛べなくなった事への対 
 処をしている。googleが送ってきたソースをsedで加工して表示している。<a></a>の中に 
 <div>があってそれが原因なので消しているだけ。 
   他にそのままgoogleを開いたまま検索した場合、検索は出来るが出てくるソースはまた 
 上で書いた問題を含む為、cgiを経由するように書き換える、だからまた同じようにsedで 
 加工されたページが表示される。その繰り返し。 
666: 2019/09/07(土)19:37 AAS
 いや、原因違うかも。まあ動いてるから良しとする。 
667: 2019/09/07(土)19:40 AAS
 やっぱちょっと違うな。<div></div>に変えて動いてるわけだからな。 
668: 2019/09/07(土)19:41 AAS
 これは動く。 
 <a href='test.html'>test<div></div></a> 
 これ駄目。 
 <a href='test.html'><div>test</div></a> 
669: 2019/09/07(土)19:50 AAS
 ただ面倒なので、duckduckgoがお勧め。 
670: 2019/09/08(日)01:27 AAS
 #!/bin/zsh 
 # factorを変更しただけ。 
 UNIQ=$(basename $(ps -p $PPID -o pid,ppid,egroup,euser,lstart |md5sum)) 
  
 case "$QUERY_STRING" in 
 # formから流れてくるもの。# 次のページへ、時間指定等の対応。 
 ${UNIQ}=form\&*|${UNIQ}=rotate\&*)  
 URL="外部リンク:www.google.co.jp cut -d '&' -f 2- <<<$QUERY_STRING )";; 
 ${UNIQ}=decode\&*) # ここから再検索して下さいの対処。 
 URL="外部リンク:www.google.co.jp\ 
 $(nkf --url-input <( sed 's/[^&]*&//; s/%25/%/g' <<<$QUERY_STRING ))";; 
 *) # default. 
 URL="外部リンク:www.google.co.jp 
 esac 
  
 <<EOF 
 Content-Type: text/plain 
 w3m-control: GOTO $URL 
 w3m-control: VIEW 
 w3m-control: PIPE_BUF sed 's%\(<input[^>]*\)Shift_JIS%\1UTF-8%; s%\(<form \)\([^>]*>\)'\ 
 '%\1action="file:///cgi-bin/google.zsh" \2<input name=$UNIQ type=hidden value="form">%;'\ 
 's%\(<span[^>]*>\|</span>\)%%g; s%<div[^>]*>%%g; s%</div>%<div>&%g;'\ 
 's,\(<a [^>]*href="\)/url?q=/search%3F\(q%3D[^"]*"\)'\ 
 ',\1file:///cgi-bin/google.zsh?${UNIQ}=decode\&\2,;'\ 
 's%\(<a [^>]*href="\)/url?%\1外部リンク:www.google.co.jp\ 
 's%\(<a [^>]*href="\)/search?\([^"]*"\)'\ 
 '%\1file:///cgi-bin/google.zsh?${UNIQ}=rotate\&\2%g' 
 w3m-control: VIEW 
 $( printf '%s\n' 'w3m-control: DELETE_PREVBUF'{,,,} ) 
  
 EOF 
671: 2019/09/08(日)01:40 AAS
 #!/bin/zsh 
 # bsdのmanにはeuserとかの指定の仕方は無かったので変えただけ。 
 # そもそもたぶんここ要らないと思うんだけど改造する時の使い道としてまあやっとく。 
 UNIQ=$(basename $(ps -p $PPID -o pid,ppid,group,user,lstart |md5sum)) 
  
 case "$QUERY_STRING" in 
 # formから流れてくるもの。# 次のページへ、時間指定等の対応。 
 ${UNIQ}=form\&*|${UNIQ}=rotate\&*)  
 URL="外部リンク:www.google.co.jp cut -d '&' -f 2- <<<$QUERY_STRING )";; 
 ${UNIQ}=decode\&*) # ここから再検索して下さいの対処。 
 URL="外部リンク:www.google.co.jp\ 
 $(nkf --url-input <( sed 's/[^&]*&//; s/%25/%/g' <<<$QUERY_STRING ))";; 
 *) # default. 
 URL="外部リンク:www.google.co.jp 
 esac 
  
 <<EOF 
 Content-Type: text/plain 
 w3m-control: GOTO $URL 
 w3m-control: VIEW 
 w3m-control: PIPE_BUF sed 's%\(<input[^>]*\)Shift_JIS%\1UTF-8%; s%\(<form \)\([^>]*>\)'\ 
 '%\1action="file:///cgi-bin/google.zsh" \2<input name=$UNIQ type=hidden value="form">%;'\ 
 's%\(<span[^>]*>\|</span>\)%%g; s%<div[^>]*>%%g; s%</div>%<div>&%g;'\ 
 's,\(<a [^>]*href="\)/url?q=/search%3F\(q%3D[^"]*"\)'\ 
 ',\1file:///cgi-bin/google.zsh?${UNIQ}=decode\&\2,;'\ 
 's%\(<a [^>]*href="\)/url?%\1外部リンク:www.google.co.jp\ 
 's%\(<a [^>]*href="\)/search?\([^"]*"\)'\ 
 '%\1file:///cgi-bin/google.zsh?${UNIQ}=rotate\&\2%g' 
 w3m-control: VIEW 
 $( printf '%s\n' 'w3m-control: DELETE_PREVBUF'{,,,} ) 
  
 EOF 
672: 2019/09/08(日)01:55 AAS
 このぐらいの変更で貼り付けないけど、gidとuid使ったほうがいいのかも。 
673: 2019/09/08(日)01:57 AAS
 UNIQ=$(basename $(ps -p $PPID -o pid,ppid,gid,uid,lstart |md5sum))  
 ここの話しね。 
674: 2019/09/08(日)02:52 AAS
 UNIQ=$(printf $(ps -p $PPID -o pid,ppid,lstart |md5sum)) 
 このぐらいでいいな。後printfの方が速いな。 
 いまいちここ好きじゃなんだよな。 
675(1): 2019/09/08(日)15:05 AAS
 #!/bin/zsh 
 # すまんnkfとか無くてももっと簡単な事だった。 
 # 後<span>を削る必要は無いけど扱いやすくなるから残しとく。 
 UNIQ=$(printf $(ps -p $PPID -o pid,ppid,lstart |md5sum)) 
  
 case "$QUERY_STRING" in 
 # formから流れてくるもの。 
 ${UNIQ}=form\&*) 
 URL="外部リンク:www.google.co.jp cut -d '&' -f 2- <<<$QUERY_STRING )";; 
 ${UNIQ}=rotate\&*) # 次のページへ、ここから再検索して下さい、時間指定等の対応。 
 URL="外部リンク:www.google.co.jp cut -d '&' -f 2- <<<$QUERY_STRING )";; 
 *) # default. 
 URL="外部リンク:www.google.co.jp 
 esac 
  
 <<EOF 
 Content-Type: text/plain 
 w3m-control: GOTO $URL 
 w3m-control: VIEW 
 w3m-control: PIPE_BUF sed 's%\(<input[^>]*\)Shift_JIS%\1UTF-8%; s%\(<form \)\([^>]*>\)'\ 
 '%\1action="file:///cgi-bin/google.zsh" \2<input name=$UNIQ type=hidden value="form">%;'\ 
 's%\(<span[^>]*>\|</span>\)%%g; s%<div[^>]*>%%g; s%</div>%<div>&%g;'\ 
 's,\(<a [^>]*href="\)/\(search?\|url?q=/search%3F\)\([^"]*"\)'\ 
 ',\1file:///cgi-bin/google.zsh?${UNIQ}=rotate\&\2\3,g;'\ 
 's%\(<a [^>]*href="\)/url?%\1外部リンク:www.google.co.jp 
 w3m-control: VIEW 
 $( printf '%s\n' 'w3m-control: DELETE_PREVBUF'{,,,} ) 
  
 EOF 
676: 2019/09/09(月)02:05 AAS
 最後にちょっとだけ拡張してみた。これでそろそろ辞めるわ。 
 変数大文字ですまんな、なんかそうなってしまった。 
 まあまた間違いのラッシュだろけど。 
  
 現在のurlが一番上に表示されるようにしたからそれを見ながら、 
 二つ目のformにsedに渡す文字列を入力してsubmitするとその変更したurlに変わる。 
 だからs/ja/en/とすると英語のページに変わりますよという事。 
677: 2019/09/09(月)02:13 AAS
 #!/bin/zsh 
 # やられた停電だよ。まじか。 
 UNIQ=$(printf $(ps -p $PPID -o pid,ppid,lstart |md5sum)) 
  
 case "$QUERY_STRING" in 
 ${UNIQ}=option\&*) 
 URL_HOLD=$(nkf --url-input <(sed 's%[^&]*&field=\([^&]*\)&.*%\1%' <<<$QUERY_STRING)) 
 URL=$(sed $(nkf --url-input <(cut -d '&' -f 3 <<<$QUERY_STRING |tr '+' ' ')) <<<$URL_HOLD) 
 test -z "$URL" && URL=$URL_HOLD;; 
 ${UNIQ}=form\&*) 
 URL="外部リンク:www.google.co.jp cut -d '&' -f 2- <<<$QUERY_STRING )";; 
 ${UNIQ}=rotate\&*) URL="外部リンク:www.google.co.jp cut -d '&' -f 2- <<<$QUERY_STRING )";; 
 *) URL="外部リンク:www.google.co.jp 
 esac 
678: 2019/09/09(月)02:14 AAS
 <<EOF 
 Content-Type: text/plain 
 w3m-control: GOTO $URL 
 w3m-control: EXTERN echo %s |xsel -s 
 w3m-control: VIEW 
 w3m-control: PIPE_BUF sed "s,<body [^>]*&\$(xsel -s |sed "s/&/\\\\\&/g")<br /;"\ 
 's%\(<input[^>]*\)Shift_JIS%\1UTF-8%; s%\(<form \)\([^>]*>\)'\ 
 '%\1action="file:///cgi-bin/google.zsh" \2<input name=$UNIQ type=hidden value="form">%;'\ 
 's,</form&<form action="file:///cgi-bin/google.zsh">'\ 
 '<input name=$UNIQ value="option" type=hidden>'\ 
 '<input name=field value='"\$(xsel -s |sed "s/&/\\\\\&/g")"' type=hidden>'\ 
 '<input type=text></form;'\ 
 's%\(<span[^>]*>\|</span>\)%%g; s%<div[^>]*>%%g; s%</div>%<div>&%g;'\ 
 's,\(<a [^>]*href="\)/\(search?\|url?q=/search%3F\)\([^"]*"\)'\ 
 ',\1file:///cgi-bin/google.zsh?${UNIQ}=rotate\&\2\3,g;'\ 
 's%\(<a [^>]*href="\)/url?%\1外部リンク:www.google.co.jp 
 w3m-control: VIEW 
 $( printf '%s\n' 'w3m-control: DELETE_PREVBUF'{,,,} ) 
  
 EOF 
679: 2019/09/09(月)02:17 AAS
 そうだった。xsel -s使ってるから。xsel -sの内容消えるからね。 
680: 2019/09/09(月)02:43 AAS
 #!/bin/zsh 
 UNIQ=$(printf $(ps -p $PPID -o pid,ppid,lstart |md5sum)) 
  
 case "$QUERY_STRING" in 
 ${UNIQ}=option\&*) 
 URL_HOLD=$(nkf --url-input <(sed 's%[^&]*&field=\([^&]*\)&.*%\1%; s/%25/%/g' \ 
    <<<$QUERY_STRING)) 
 URL=$(sed $(nkf --url-input <(cut -d '&' -f 3 <<<$QUERY_STRING |tr '+' ' ')) <<<$URL_HOLD) 
 echo $QUERY_STRING>>$HOME/debug 
 echo $URL>>$HOME/debug 
 echo $URL_HOLD>>$HOME/debug 
 test -z "$URL" && URL=$URL_HOLD;; 
 ${UNIQ}=form\&*) 
 URL="外部リンク:www.google.co.jp cut -d '&' -f 2- <<<$QUERY_STRING )";; 
 ${UNIQ}=rotate\&*) 
 URL="外部リンク:www.google.co.jp cut -d '&' -f 2- <<<$QUERY_STRING )";; 
 *) URL="外部リンク:www.google.co.jp 
 esac 
681: 2019/09/09(月)02:44 AAS
 <<EOF 
 Content-Type: text/plain 
 w3m-control: GOTO $URL 
 w3m-control: EXTERN echo %s |xsel -s 
 w3m-control: VIEW 
 w3m-control: PIPE_BUF sed "s,<body [^>]*&\$(xsel -s |sed "s/&/\\\\\&/g")<br /;"\ 
 's%\(<input[^>]*\)Shift_JIS%\1UTF-8%; s%\(<form \)\([^>]*>\)'\ 
 '%\1action="file:///cgi-bin/google.zsh" \2<input name=$UNIQ type=hidden value="form">%;'\ 
 's,</form&<form action="file:///cgi-bin/google.zsh">'\ 
 '<input name=$UNIQ value="option" type=hidden>'\ 
 '<input name=field value='"\$(xsel -s |sed "s/&/\\\\\&/g")"' type=hidden>'\ 
 '<input type=text></form;'\ 
 's%\(<span[^>]*>\|</span>\)%%g; s%<div[^>]*>%%g; s%</div>%<div>&%g;'\ 
 's,\(<a [^>]*href="\)/\(search?\|url?q=/search%3F\)\([^"]*"\)'\ 
 ',\1file:///cgi-bin/google.zsh?${UNIQ}=rotate\&\2\3,g;'\ 
 's%\(<a [^>]*href="\)/url?%\1外部リンク:www.google.co.jp 
 w3m-control: VIEW 
 $( printf '%s\n' 'w3m-control: DELETE_PREVBUF'{,,,} ) 
  
 EOF 
682: 2019/09/09(月)03:07 AAS
 >>675で完成してるからな。後は余興。ノシ。PC触り過ぎてきもちわり。 
683: 2019/09/09(月)07:23 AAS
 すまん。やっぱ寝ぼけてたな。$HOME/debugにfileを書き出してる。 
684: 2019/09/09(月)07:26 AAS
 #!/bin/zsh 
 UNIQ=$(printf $(ps -p $PPID -o pid,ppid,lstart |md5sum)) 
  
 case "$QUERY_STRING" in 
 ${UNIQ}=option\&*) 
 URL_HOLD=$(nkf --url-input <(sed 's%[^&]*&field=\([^&]*\)&.*%\1%; s/%25/%/g' \ 
    <<<$QUERY_STRING)) 
 URL=$(sed $(nkf --url-input <(cut -d '&' -f 3 <<<$QUERY_STRING |tr '+' ' ')) <<<$URL_HOLD) 
 test -z "$URL" && URL=$URL_HOLD;; 
 ${UNIQ}=form\&*) 
 URL="外部リンク:www.google.co.jp cut -d '&' -f 2- <<<$QUERY_STRING )";; 
 ${UNIQ}=rotate\&*) 
 URL="外部リンク:www.google.co.jp cut -d '&' -f 2- <<<$QUERY_STRING )";; 
 *) URL="外部リンク:www.google.co.jp 
 esac 
685: 2019/09/09(月)07:26 AAS
 <<EOF 
 Content-Type: text/plain 
 w3m-control: GOTO $URL 
 w3m-control: EXTERN echo %s |xsel -s 
 w3m-control: VIEW 
 w3m-control: PIPE_BUF sed "s,<body [^>]*&\$(xsel -s |sed "s/&/\\\\\&/g")<br /;"\ 
 's%\(<input[^>]*\)Shift_JIS%\1UTF-8%; s%\(<form \)\([^>]*>\)'\ 
 '%\1action="file:///cgi-bin/google.zsh" \2<input name=$UNIQ type=hidden value="form">%;'\ 
 's,</form&<form action="file:///cgi-bin/google.zsh">'\ 
 '<input name=$UNIQ value="option" type=hidden>'\ 
 '<input name=field value='"\$(xsel -s |sed "s/&/\\\\\&/g")"' type=hidden>'\ 
 '<input type=text></form;'\ 
 's%\(<span[^>]*>\|</span>\)%%g; s%<div[^>]*>%%g; s%</div>%<div>&%g;'\ 
 's,\(<a [^>]*href="\)/\(search?\|url?q=/search%3F\)\([^"]*"\)'\ 
 ',\1file:///cgi-bin/google.zsh?${UNIQ}=rotate\&\2\3,g;'\ 
 's%\(<a [^>]*href="\)/url?%\1外部リンク:www.google.co.jp 
 w3m-control: VIEW 
 $( printf '%s\n' 'w3m-control: DELETE_PREVBUF'{,,,} ) 
  
 EOF 
  
 # もう間違っててもちょっと離れる。 
686: 2019/09/09(月)07:30 AAS
 まじすまんな。上の$HOME/debugにfileを書いちゃってるから。 
 まあダメージないだろうけど。この失敗は教訓にしよう。 
687: 2019/09/09(月)07:35 AAS
 幸い>>でつけたしだから。万が一があってもあわてずにな。ノシ。 
688: 2019/09/09(月)18:59 AAS
 すまん。xselなくてもいけるなPIPE_BUFでも普通に%s使えるっぽいな。 
 直すか。 
689: 2019/09/09(月)19:18 AAS
 いや、どうやら無理だな。後sedで変更する値が見えてるままの値じゃなくて 
 検索に入ってる文字列を変更するようになってるけと、これは直さないほうが使いやすいな。 
 後ほんとsedに流し込んでるだけなので、危険な事すれば危険なのでね。 
690: 2019/09/09(月)19:36 AAS
 # 下部分だけちょっと改良。 
 # でも前のほうがxsel -sにurlがそのまま入ってる形だけど。 
 # xselを一時fileにしたほうが素直だと思うけどrm使うのは頭働かせないと怖いからやらない。 
 <<EOF 
 Content-Type: text/plain 
 w3m-control: GOTO $URL 
 w3m-control: EXTERN echo %s |sed 's/&/\\\&/g' |xsel -s 
 w3m-control: VIEW 
 w3m-control: PIPE_BUF sed "s,<body [^>]*&\$(xsel -s)<br /;"\ 
 's%\(<input[^>]*\)Shift_JIS%\1UTF-8%; s%\(<form \)\([^>]*>\)'\ 
 '%\1action="file:///cgi-bin/google.zsh" \2<input name=$UNIQ type=hidden value="form">%;'\ 
 's,</form&<form action="file:///cgi-bin/google.zsh">'\ 
 '<input name=$UNIQ value="option" type=hidden>'\ 
 '<input name=field value='"\$(xsel -s)"' type=hidden>'\ 
 '<input type=text></form;'\ 
 's%\(<span[^>]*>\|</span>\)%%g; s%<div[^>]*>%%g; s%</div>%<div>&%g;'\ 
 's,\(<a [^>]*href="\)/\(search?\|url?q=/search%3F\)\([^"]*"\)'\ 
 ',\1file:///cgi-bin/google.zsh?${UNIQ}=rotate\&\2\3,g;'\ 
 's%\(<a [^>]*href="\)/url?%\1外部リンク:www.google.co.jp 
 w3m-control: VIEW 
 $( printf '%s\n' 'w3m-control: DELETE_PREVBUF'{,,,} ) 
  
 EOF 
691: 2019/09/09(月)19:58 AAS
 どうでもいいだろうけど以下の部分は、""いらないな。 
 '<input name=field value='"\$(xsel -s)"' type=hidden>'\  
 こう見たほうが素直に何してるか分かるかも。\\\&が非常に自分でも分かり辛い。 
 '<input name=field value='\$(xsel -s)' type=hidden>'\ 
692: 2019/09/11(水)02:42 AAS
 w3mは適当にformだけを切り出してもちゃんと描画してくれるから、 
 適当に抜き出してw3m-control: SUBMITを使えば、 
 10行20行に満たないコードでいろいろ書けちゃうね。shで書くよりも短く書ける。 
 やっぱw3m作った人はセンスの塊だと思うわ。いつか俺はテコ入れしてバージョン上げたいね。 
 色々書いたから載せたい所だか、まあ間違い直しでスレッドが埋まっちゃうから無理だな。 
 5chはmoreなんだな。lessじゃない。 
上下前次1-新書関写板覧索設栞歴
あと 46 レスあります
スレ情報 赤レス抽出 画像レス抽出 歴の未読スレ
ぬこの手 ぬこTOP 0.019s