w3m その8 (737レス)
1-

616
(3): [86] 2019/05/22(水)09:42 AAS
Google の表示がおかしい。
直接の原因は a 要素の中に div 要素があるから、つまり HTML5 だからということかなあ。
とはいえ、リンクがいつものテキストではなくテキストの手前にあるというだけだから
リンクが判りにくいけど慣れれば平気ということになるのかな。
Google 自体は w3m じゃなくてもいいけどその先を w3m で見たいということも
あるんだけどな。
617: 616 2019/05/23(木)17:21 AAS
なんか、このままの方が快適じゃないかという気がしてきた。
ESC-m のメニューは使い物にならないけど元々使ってないし。
618: 2019/05/24(金)14:37 AAS
>>616
昨日これに気がついたけどUser-Agentを色々いじると元のようになるのもあった
Mozilla/4.0だけとか
他にも5.0でもあったけどどれか分からなくなった
619
(1): 2019/05/24(金)19:45 AAS
今はjavascript 有効ブラウザじゃないとgmailログイン出来ないのね。
w3mユーザーオワタ
620: 2019/06/02(日)09:49 AAS
>>619
w3mってJS解釈できないの?
今までGoogleにログインできたのは一体なにを解釈してたんだろう。
621
(2): 2019/06/23(日)00:20 AAS
質問させてください!
よく行くWebページを自分好みに整形したいです
構想は
1. w3mでページにアクセス
2. なんらかの方法でpythonに渡して整形
3. 整形したものを再びw3mに表示
です.
2と3の方法が分かりません.
ちなみに,スレの中で出てた「フィルター」がこの機能でしょうか?
622
(1): 2019/06/23(日)06:25 AAS
>>621
2のpythonのプログラムを標準入力で受け取って標準出力で表示するように作れば、
w3m 〜 | python 〜 | w3m …
という方法で渡していける。

ただ、pythonの出力がただのテキストなら、3をw3mで受ける必要があるか。
lessで十分だと思う。
w3m 〜 | python 〜 | less
pythonがhtmlを出力するなら、3のw3mのオプション(…の部分)は
-T text/html とする。
w3m 〜 | python 〜 | w3m -T text/html
623: 2019/06/23(日)12:17 AAS
>>622
まさか当日中にレスが帰ってくるとは・・・!
ありがとうございます!
今プログラム作ってるのでできたらやってみたいと思います
624
(1): 2019/06/23(日)15:45 AAS
最初のところはcurlとかwgetとかでやったほうがいいんでねえの?
625: 2019/06/23(日)21:09 AAS
>>624は頭悪そう
626: 2019/06/28(金)00:37 AAS
最初のところはw3mで閲覧中に | 入力にしたほうがいいんでねえの?
627: 2019/06/29(土)07:23 AAS
ブログとか読むのに Perl の HTTP::Proxy 使っていろいろやってたよ。
整形だけでなく、どの記事を読んだかとか SQLite で管理してた。
最近は https だからローカルサーバに URL を渡して処理するね。
こっちも検索結果のマージとか、いろいろなことに利用してる。
628: 2019/09/05(木)01:09 AAS
難しい事してるんだな。どんな風に管理するんだろ。
まああまり頭良い使い方は向いてないだろうな。
自分が頭良くない事は痛いほどに痛感する重言する。

>>621 とかはlocal cgiといという機能もある。
w3mのtarballを展開したdoc-jp/*にちょっと説明が書いてある。
そのdoc-jp/の中で実行すればlocal cgiから使える機能とkeymapの説明を合体させてみた。
.w3m/keymapとして使えるはず?。ちなみに、linein.cを変更すれば入力の時のkeymapも変更出来る。
並び替えるだけ。
---zsh
sed '/^#/d; $ adummy' keymap.default |while read
do
test -z "$REPLY" && {echo; continue}
if test $REPLY != dummy
then
mark=( $(grep -o '[^[:space:]]*$' <<<$REPLY) $mark)
grep "^$mark[1]"[[:space:]] README.func \
|sed 's%[^[:space:]]\+[[:space:]]\+%# %'
echo $REPLY

else grep -Ev "$(printf '^%s|' $mark |sed 's%|$%%')" README.func \
|awk '{printf "# %s\n#keymap undefined-key %s\n", $2, $1}'
fi
done |nkf -w |cat <(grep '^#' keymap.default) - |less
------
629: 2019/09/05(木)01:10 AAS
local cgiはoptionで設定されたディレクトリにあるものはcgiとして実行出来るよ、
その時w3mの機能も使えるよという感じか。
まずw3mで一度optionの画面を開いて設定してもいいし、適当に保存すると、
.w3m/configが出来るから扱いやすいと思う。
w3m -show-option すると何のoptionか分かる。

場所決めてそこに^*2のようなscriptを入れて実行..あれ実行..なんて言うんだっけ
とにかくそれをして以下のように呼び出すとgoogleのsourceの画面になる。後は勘でいけると思う。
俺も勘でしか触ってないし、勘で触って色々出来ると思うよ。
w3m file:///cgi-bin/echo.zsh?外部リンク:google.com
---*2
#!/bin/zsh

<<EOF
Content-Type: text/plain
w3m-control: GOTO $QUERY_STRING
w3m-control: VIEW

EOF
------
後便利なのはEXTERNとかは以下みたいな使い方も出来るよとかか。
なんでこんな書き方するのというのは、ただの説明の為。辞書系の機能も色々出来るね。
keymap ft EXTERN 'p=%s; |echo $p |xsel -a'
630: 2019/09/05(木)01:15 AAS
#!/bin/zsh

# 見れなくなったgoogleの対処を書いた。やっつけだけどやっつけがいつも自分を助けてくれない?

# googleがおまえもっと使いにくいスタイルで使えと言ってきたら.w3m/.cookieを削除したり。
# httpsをhttpに変えてみたり、後num=100を50ぐらいに減らしたら文句言われない場合もある。

# 以下のようにcommandを実行した場合に変数$QUERY_STRINGに入っている'test%20test'を
# test+testへ変えて吐き出す。
# w3m file:///cgi-bin/google.zsh?'test test'

# 日本語は%エンコーディング?へ変えている。
# sedの処理は長い日本語をnkf -MQした時に入る改行への対応をしている。
w3go ()
{
printf %s $1 |nkf -MQ |sed -n ':S $! {N; b S;}; s/=\n//g; s/=/%/g; p'
test $# -eq 1 || {shift; echo -n +; w3go $@}
}

# 次のページへの対応。
if test "$QUERY_STRING" \=~ '^start=[0-9]*;'
then
NEXT="&$(cut -d ';' -f 1 <<<$QUERY_STRING)"
QUERY_STRING=$(cut -d ';' -f 2- <<<$QUERY_STRING)
fi

# 検索部分の対応。
# formから送られてくるspaceが+に変換されたものを変える。
test "$QUERY_STRING" \=~ '^submit=1&' \
&& QUERY_STRING=$(cut -d '&' -f 2- <<<$QUERY_STRING |sed 's/+\+/%20/g')
631: 2019/09/05(木)01:16 AAS
# 飛ぶURLを作る。
URL="外部リンク:www.google.co.jp\
q=$(w3go $(nkf --url-input <<<$QUERY_STRING))&hl=ja&biw=&bih=&gbv=1&num=100"

# googleのhtmlをfilteringして表示する。
# ここら辺は癖なのか仕様なのかがあってcopyして実行しても
# 動かないだろうからこういう書き方をしている。
# またここは丁寧にやれはやるほど遅くなる。
# 最後のsを,で仕切っているのは$QUERY_STRINGの中に%が含まれる為。
<<EOF
Content-Type: text/plain
w3m-control: GOTO $URL$NEXT
w3m-control: VIEW
w3m-control: PIPE_BUF sed 's%<form.*/form>'\
'%<form action="file:///cgi-bin/google.zsh">'\
'<input name=submit type=hidden value=1>'\
'<input type=text value="$(nkf --url-input <<<$QUERY_STRING)"></form>%;'\
's%\(<a [^>]*>\)<[^>]*>\([^<]*\)</[^>]*>%\1\2%g;'\
's%\(<a [^>]*href="\)/%\1外部リンク:www.google.co.jp\
's,<a [^>]*;\(start=[0-9]*\)[^<]*\(&.t;</a>\)'\
',<a href="file:///cgi-bin/google.zsh?\1;$QUERY_STRING">移動 \2,g'
w3m-control: VIEW

EOF
632: 2019/09/05(木)01:18 AAS
以下みたいに実行。動かなかったらごめんな。でも俺の環境だと動いてる。
w3m file:///cgi-bin/google.zsh?'わずかばかりの 運の悪さを 恨んだりして'
633: 2019/09/05(木)06:03 AAS
色々変な事してるなsubmitされて来て完成されてる文字列を+を%20とかに変える必要ないな。
inputってdefaultで入ってる文字列の方を加工すべきで。
後やっぱ一度に表示しないと戻る時にゴミが入りすぎるな。
まあ直さないんだけど。ノシ。
634: 2019/09/05(木)18:12 AAS
やっぱ後でやっつけで直す。
635: 2019/09/05(木)19:33 AAS
#!/bin/zsh

w3go ()
{
printf %s $1 |nkf -MQ |sed -n ':S $! {N; b S;}; s/=\n//g; s/=/%/g; p'
test $# -eq 1 || {shift; echo -n +; w3go $@}
}

case "x$QUERY_STRING" in

xstart=[0-9]*\;*) # 次のページへの対応。
NEXT="&$(cut -d ';' -f 1 <<<$QUERY_STRING)"
QUERY_STRING=$(cut -d ';' -f 2- <<<$QUERY_STRING)
URL="外部リンク:www.google.co.jp\
q=$( w3go $(nkf --url-input <<<$QUERY_STRING))&hl=ja&biw=&bih=&gbv=1&num=100"
;;
xsubmit=1\&*) # formから流れて来た文字列は加工しない。
# こうしないと移動の表示が狂う。
QUERY_STRING=$( cut -d '&' -f 2- <<<$QUERY_STRING )
URL="外部リンク:www.google.co.jp\
q=$QUERY_STRING&hl=ja&biw=&bih=&gbv=1&num=10"
;;
*)
URL="外部リンク:www.google.co.jp\
q=$( w3go $(nkf --url-input <<<$QUERY_STRING))&hl=ja&biw=&bih=&gbv=1&num=100"
;;
esac
636: 2019/09/05(木)19:33 AAS
<<EOF
Content-Type: text/plain
w3m-control: GOTO $URL$NEXT
w3m-control: VIEW
w3m-control: PIPE_BUF sed 's%<form.*value="\(.*\)"[^>]*name="q".*/form>'\
'%<form action="file:///cgi-bin/google.zsh">'\
'<input name=submit type=hidden value=1>'\
'<input type=text value="\1"></form>%;'\
's%\(<span[^>]*>\|</span>\)%%g; s%<div[^>]*>%%g; s%</div>%<div>&%g;'\
's%\(<a [^>]*href="\)/%\1外部リンク:www.google.co.jp\
's,<a [^>]*;\(start=[0-9]*\)[^<]*\(&.t;</a>\)'\
',<a href="file:///cgi-bin/google.zsh?\1;$QUERY_STRING">移動 \2,g'
w3m-control: VIEW
w3m-control: DELETE_PREVBUF
w3m-control: DELETE_PREVBUF
w3m-control: DELETE_PREVBUF
w3m-control: DELETE_PREVBUF

EOF
637: 2019/09/05(木)19:35 AAS
まだ色々間違ってるだろうけど、まあ適当には使えるじゃないか。
おしまい。
638: 2019/09/05(木)19:38 AAS
あ、一ヶ所だけnum=が10になっちゃってるから手動で直して。
639: 2019/09/06(金)01:07 AAS
明日か明後日には検索出来ない文字列と、時間指定の対応をする。
640: 2019/09/06(金)02:07 AAS
#!/bin/zsh

# これだけで良かったのか簡単になった。でも半分寝てるから何処か間違えてるだろう。

w3go ()
{
printf %s $1 |nkf -MQ |sed -n ':S $! {N; b S;}; s/=\n//g; s/=/%/g; p'
test $# -eq 1 || {shift; echo -n +; w3go $@}
}

UNIQ=$(mktemp -u XXXXXXXX)
case "$UNIQ$QUERY_STRING" in

${UNIQ}submit=1\&*) # formから流れて来た文字列は加工しない。
URL="外部リンク:www.google.co.jp\
q=$( cut -d '&' -f 2- <<<$QUERY_STRING )&hl=ja&biw=&bih=&gbv=1&num=100"
;;
${UNIQ}dummy\&*) # 次のページへの対応。# 時間指定への対応。
URL="外部リンク:www.google.co.jp cut -d '&' -f 2- <<<$QUERY_STRING )"
;;
*)
URL="外部リンク:www.google.co.jp\
q=$( w3go $(nkf --url-input <<<$QUERY_STRING))&hl=ja&biw=&bih=&gbv=1&num=100"
;;
esac
641: 2019/09/06(金)02:08 AAS
<<EOF
Content-Type: text/plain
w3m-control: GOTO $URL$NEXT
w3m-control: VIEW
w3m-control: PIPE_BUF sed 's%<form.*value="\(.*\)"[^>]*name="q".*/form>'\
'%<form action="file:///cgi-bin/google.zsh">'\
'<input name=submit type=hidden value=1>'\
'<input type=text value="\1"></form>%;'\
's%\(<span[^>]*>\|</span>\)%%g; s%<div[^>]*>%%g; s%</div>%<div>&%g;'\
's%\(<a [^>]*href="\)/url?%\1外部リンク:www.google.co.jp\
's%\(<a [^>]*href="\)/search?\([^"]*"\)%\1file:///cgi-bin/google.zsh?dummy\&\2%g'
w3m-control: VIEW
w3m-control: DELETE_PREVBUF
w3m-control: DELETE_PREVBUF
w3m-control: DELETE_PREVBUF
w3m-control: DELETE_PREVBUF

EOF
642: 2019/09/06(金)03:07 AAS
何度もごめん見直して無い部分は大概間違ってるな。
そもそも最初testしてた時のcodeがまったくいらない。
まったく分けから無く見えてるなこれじゃ。
643: 2019/09/06(金)03:09 AAS
#!/bin/zsh
UNIQ=$(mktemp -u XXXXXXXX)
case "$UNIQ$QUERY_STRING" in
${UNIQ}submit=1\&*) # formから流れて来た文字列は加工しない。

URL="外部リンク:www.google.co.jp\
q=$( cut -d '&' -f 2- <<<$QUERY_STRING )&hl=ja&biw=&bih=&gbv=1&num=100";;
${UNIQ}dummy\&*) # 次のページへの対応。# 時間指定への対応。
URL="外部リンク:www.google.co.jp cut -d '&' -f 2- <<<$QUERY_STRING )";;
*)
URL="外部リンク:www.google.co.jp\
q=$QUERY_STRING&hl=ja&biw=&bih=&gbv=1&num=100";;
esac

<<EOF
Content-Type: text/plain
w3m-control: GOTO $URL
w3m-control: VIEW
w3m-control: PIPE_BUF sed 's%<form.*value="\(.*\)"[^>]*name="q".*/form>'\
'%<form action="file:///cgi-bin/google.zsh">'\
'<input name=submit type=hidden value=1>'\
'<input type=text value="\1"></form>%;'\
's%\(<span[^>]*>\|</span>\)%%g; s%<div[^>]*>%%g; s%</div>%<div>&%g;'\
's%\(<a [^>]*href="\)/url?%\1外部リンク:www.google.co.jp\
's%\(<a [^>]*href="\)/search?\([^"]*"\)%\1file:///cgi-bin/google.zsh?dummy\&\2%g'
w3m-control: VIEW
w3m-control: DELETE_PREVBUF
w3m-control: DELETE_PREVBUF
w3m-control: DELETE_PREVBUF
w3m-control: DELETE_PREVBUF

EOF
644: 2019/09/06(金)07:26 AAS
#!/bin/zsh
#おかしいな寝る前は対処出来てたんだけど起きたら世界が変わってた。変な所を一度消す。
case "$QUERY_STRING" in
rotate\&*) # 次のページへ、時間指定等の対応。
URL="外部リンク:www.google.co.jp cut -d '&' -f 2- <<<$QUERY_STRING )";;
decode\&*) # ここから再検索して下さいの対処。
URL="外部リンク:www.google.co.jp\
$(nkf --url-input <( sed 's/[^&]*&//; s/%25/%/g' <<<$QUERY_STRING ))";;
*) #default, またはformから流れてくるもの。
URL="外部リンク:www.google.co.jp
esac

<<EOF
Content-Type: text/plain
w3m-control: GOTO $URL
w3m-control: VIEW
w3m-control: PIPE_BUF sed 's%<form.*value="\(.*\)"[^>]*name="q".*/form>'\
'%<form action="file:///cgi-bin/google.zsh">'\
'<input type=text value="\1"></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?decode\&\2,;'\
's%\(<a [^>]*href="\)/url?%\1外部リンク:www.google.co.jp\
's%\(<a [^>]*href="\)/search?\([^"]*"\)%\1file:///cgi-bin/google.zsh?rotate\&\2%g'
w3m-control: VIEW
w3m-control: DELETE_PREVBUF
w3m-control: DELETE_PREVBUF
w3m-control: DELETE_PREVBUF
w3m-control: DELETE_PREVBUF

EOF
645: 2019/09/06(金)18:14 AAS
#!/bin/zsh
test "${QUERY_STRING%%&*}" = $(basename $( factor $PPID |md5sum )) \
&& UNIQ=$(basename $( factor $PPID |md5sum ))

case "$QUERY_STRING" in
${UNIQ}\&rotate\&*) # 次のページへ、時間指定等の対応。
URL="外部リンク:www.google.co.jp cut -d '&' -f 3- <<<$QUERY_STRING )";;
${UNIQ}\&decode\&*) # ここから再検索して下さいの対処。
URL="外部リンク:www.google.co.jp\
$(nkf --url-input <( sed 's/\([^&]*&\)\{2\}//; s/%25/%/g' <<<$QUERY_STRING ))";;
*) #default, またはformから流れてくるもの。
URL="外部リンク:www.google.co.jp
UNIQ=$(basename $( factor $PPID |md5sum ));;
esac

<<EOF
Content-Type: text/plain
w3m-control: GOTO $URL
w3m-control: VIEW
w3m-control: PIPE_BUF sed 's%<form.*value="\(.*\)"[^>]*name="q".*/form>'\
'%<form action="file:///cgi-bin/google.zsh">'\
'<input type=text value="\1"></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
646: 2019/09/06(金)18:15 AAS
# この星の一等賞んなりたいのw3mで俺は!そんだけ!

# 変数UNIQ関係は検索した文字列がcaseの命令と重ならないようにしている。
# それはw3mの起動ごとに変わるはず。もしかしたらいらないのかな。
647: 2019/09/06(金)18:18 AAS
あーまた間違える。さっきまでとまた世界が変わってる。
648: 2019/09/06(金)18:30 AAS
#!/bin/zsh
test "${QUERY_STRING%%&*}" != $(basename $( factor $PPID |md5sum )) \
&& UNIQ=$(basename $( factor $PPID |md5sum ))
case "$UNIQ$QUERY_STRING" in
rotate\&*) # 次のページへ、時間指定等の対応。
URL="外部リンク:www.google.co.jp cut -d '&' -f 3- <<<$QUERY_STRING )"
UNIQ=$(basename $( factor $PPID |md5sum ));;
decode\&*) # ここから再検索して下さいの対処。
URL="外部リンク:www.google.co.jp\
$(nkf --url-input <( sed 's/\([^&]*&\)\{2\}//; s/%25/%/g' <<<$QUERY_STRING ))"
UNIQ=$(basename $( factor $PPID |md5sum ));;
${UNIQ}*) #default, またはformから流れてくるもの。
URL="外部リンク:www.google.co.jp
esac

<<EOF
Content-Type: text/plain
w3m-control: GOTO $URL
w3m-control: VIEW
w3m-control: PIPE_BUF sed 's%<form.*value="\(.*\)"[^>]*name="q".*/form>'\
'%<form action="file:///cgi-bin/google.zsh">'\
'<input type=text value="\1"></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
649: 2019/09/06(金)18:33 AAS
全然違うわ。なんなんだよ。
650: 2019/09/06(金)19:09 AAS
#!/bin/zsh
# あってるのかな。
UNIQ=$(basename $( factor $PPID |md5sum ))
if test "${QUERY_STRING%%&*}" != $UNIQ; then # default, またはformから流れてくるもの。
URL="外部リンク:www.google.co.jp

else case "$QUERY_STRING" in
${UNIQ}\&rotate\&*) # 次のページへ、時間指定等の対応。
URL="外部リンク:www.google.co.jp cut -d '&' -f 3- <<<$QUERY_STRING )";;
${UNIQ}\&decode\&*) # ここから再検索して下さいの対処。
URL="外部リンク:www.google.co.jp\
$(nkf --url-input <( sed 's/\([^&]*&\)\{2\}//; 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%<form.*value="\(.*\)"[^>]*name="q".*/form>'\
'%<form action="file:///cgi-bin/google.zsh">'\
'<input type=text value="\1"></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
651: 2019/09/07(土)00:34 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
${UNIQ}=\&*) # formから流れてくるもの。
URL="外部リンク:www.google.co.jp cut -d '&' -f 2- <<<$QUERY_STRING )";;
${UNIQ}=\&rotate\&*) # 次のページへ、時間指定等の対応。
URL="外部リンク:www.google.co.jp cut -d '&' -f 3- <<<$QUERY_STRING )";;
${UNIQ}=\&decode\&*) # ここから再検索して下さいの対処。
URL="外部リンク:www.google.co.jp\
$(nkf --url-input <( sed 's/\([^&]*&\)\{2\}//; 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%Shift_JIS%UTF-8%g; s%\(<form \)\([^>]*>\)'\
'%\1action="file:///cgi-bin/google.zsh" \2<input name="${UNIQ}" type=hidden>%;'\
'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
652: 2019/09/07(土)00:43 AAS
formから流れてくるものはqueryの変更をしない事にした。ニュースを検索したいのに「すべて」を
検索してしまう事への対応。
Shift_JISは変えないと、formから流れてくる文字の検索が失敗する。

大体これで前と一緒な感じがするな。ただ眠るとどうだろうな。
まあ誰か役に立てば。
653: 2019/09/07(土)01:02 AAS
はい間違えてる。なんなの俺。俺の頭どうしちゃったんだよ。
654: 2019/09/07(土)01:05 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
${UNIQ}=\&rotate\&*) # 次のページへ、時間指定等の対応。
URL="外部リンク:www.google.co.jp cut -d '&' -f 3- <<<$QUERY_STRING )";;
${UNIQ}=\&decode\&*) # ここから再検索して下さいの対処。
URL="外部リンク:www.google.co.jp\
$(nkf --url-input <( sed 's/\([^&]*&\)\{2\}//; s/%25/%/g' <<<$QUERY_STRING ))";;
${UNIQ}=\&*) # formから流れてくるもの。
URL="外部リンク:www.google.co.jp cut -d '&' -f 2- <<<$QUERY_STRING )";;
esac
fi
<<EOF
Content-Type: text/plain
w3m-control: GOTO $URL
w3m-control: VIEW
w3m-control: PIPE_BUF sed \
's%Shift_JIS%UTF-8%g; s%\(<form \)\([^>]*>\)'\
'%\1action="file:///cgi-bin/google.zsh" \2<input name="${UNIQ}" type=hidden>%;'\
'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
655: 2019/09/07(土)01:13 AAS
あれ、これ駄目か、振り出しに戻ってるか。
656: 2019/09/07(土)01:22 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
${UNIQ}=\&rotate\&*) # 次のページへ、時間指定等の対応。
URL="外部リンク:www.google.co.jp cut -d '&' -f 3- <<<$QUERY_STRING )";;
${UNIQ}=\&decode\&*) # ここから再検索して下さいの対処。
URL="外部リンク:www.google.co.jp\
$(nkf --url-input <( sed 's/\([^&]*&\)\{2\}//; s/%25/%/g' <<<$QUERY_STRING ))";;
${UNIQ}=1\&*) # formから流れてくるもの。
URL="外部リンク:www.google.co.jp cut -d '&' -f 2- <<<$QUERY_STRING )";;
esac
fi
<<EOF
Content-Type: text/plain
w3m-control: GOTO $URL
w3m-control: VIEW
w3m-control: PIPE_BUF sed 's%Shift_JIS%UTF-8%g; s%\(<form \)\([^>]*>\)'\
'%\1action="file:///cgi-bin/google.zsh" \2'\
'<input name=$UNIQ type=hidden value="1">%;'\
'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
657: 2019/09/07(土)01:23 AAS
あ、num=10のままになってるな。
これでもうもう間違いないっしょ。
だからnumは自分で変えてくんろ。
658: 2019/09/07(土)01:50 AAS
UTF-8に変える所にgは要らないな。このぐらいじゃ貼らないけど。
659: 2019/09/07(土)01:57 AAS
てか直さないと出力の中のも変えちゃうか。あーまた間違えてる。
660: 2019/09/07(土)02:05 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
${UNIQ}=\&rotate\&*) # 次のページへ、時間指定等の対応。
URL="外部リンク:www.google.co.jp cut -d '&' -f 3- <<<$QUERY_STRING )";;
${UNIQ}=\&decode\&*) # ここから再検索して下さいの対処。
URL="外部リンク:www.google.co.jp\
$(nkf --url-input <( sed 's/\([^&]*&\)\{2\}//; s/%25/%/g' <<<$QUERY_STRING ))";;
${UNIQ}=1\&*) # formから流れてくるもの。
URL="外部リンク:www.google.co.jp cut -d '&' -f 2- <<<$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="1">%;'\
'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
661: 2019/09/07(土)02:08 AAS
良かった。気づいて。これは申し訳ないレベルだった。
よしもういいだろ。もういいだろ。
662: 2019/09/07(土)14:22 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/\([^&]*&\)\{2\}//; 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
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/&/\\\\\&amp;/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/&/\\\\\&amp;/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/&/\\\\\&amp;/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/&/\\\\\&amp;/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/&/\\\\\&amp;/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/&/\\\\\&amp;/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/&/\\\&amp;/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じゃない。
693: 2019/09/11(水)17:50 AAS
自己顕示欲の塊みたいなやつだな
694: 2019/09/19(木)19:41 AAS
5chでよく聞く気持ち悪い台詞だな。
695: 2019/09/20(金)08:49 AAS
そんなにたくさん5chを見てるのか
696
(1): 2019/12/07(土)20:24 AAS
「誰に向けて書いてんだよ?」とは思うけど、どうせ過疎スレだし…
そんなことより Google の仕様がまた変わったな。
テキストがリンクになってる。a 要素の中に div 要素が無い。
まあ、この変更に気付いたのは lynx で見てる時なんだが。
697: 2019/12/08(日)08:31 AAS
俺の環境だとgoogle検索結果の <a> 要素中に <div> が入ってる。
User-Agent を見て出力形式を振り分けてるのかも知れん。
lynx は対応してるけど w3m は放置されてる感じで。
698
(1): 2019/12/16(月)05:18 AAS
Lynx で google が使えなくなった視覚障害者の話がちょっと前にバズってたけど
ちょっとは影響があったのかな? でも、リンクが辿れるだけマシになったとは言え、
圧倒的に情報量が少ない。

User-Agent が Mozilla 系でも使えた頃が一番見やすかった。まだ今年の話だと思うが、
まともに見られなくなり User-Agent を Lynx 系にして凌いでいた。しかし、1 ヶ月
ちょっと前に完全にダメになってしまった。それまでにもちょいちょい表示が崩れることが
あったが大抵リロードで解決できていたのに。JavaScript 必須、GET より POST の時代ですな。

StartPage もいつからか次ページに移動できなくなったし、DuckDuckGO も何だか
見辛かったのだが、今回の騒動で Lite 版があるのを知って使い勝手がマシになった。
とは言え、タイトルはぶったぎりだし、検索の質はやはり劣るか。

本家の CVS から落とせなくなってからは、Debian 管理化の Git リポジトリを利用してるけど
User-Agent を Lynx 系にしようとしたとき siteconf に対応していることに気付いた。
それ以来便利に使っている。
699: 2019/12/19(木)22:17 AAS
>>698
w3mは高機能でテーブルのレイアウトができて視覚障害者は利用しないので、Lynx対応の方が社会的な要求が強いのでしょうね。
いきなりLynx-devのメール流量が増えた時は、私も驚きました。
700: 2020/06/30(火)16:54 AAS
googleさんの検索結果ページだけど、またw3mで使い物になるように改善されたかな。
皆さんどうですか?

自分とこ、色々手を入れちゃったせいで一般的な環境じゃないんだわ。
701: 2020/07/11(土)18:42 AAS
書き込みがあったとは、気付かなかった。ほら、過疎スレだからさ…

w3m も lynx も、a 要素の中に div 要素があると hidden link になるけど
特に困ることじゃない。
w3m の場合はリンク番号を表示させれば済む。
Google で hidden link になってた時期は >>616 から >>696 まで。
702: 2020/10/13(火)23:15 AAS
ぬるぽ
703: 2020/10/15(木)17:32 AAS
ぬるぬるぽ
704: 2020/12/09(水)09:26 AAS
画像リンク[jpg]:i.imgur.com
705: 2020/12/17(木)07:19 AAS
Twitter 逝ったぁ!
706
(2): 2020/12/17(木)20:49 AAS
Twitter 閲覧する local CGI とか作ってる方っていらっしゃらないですかね……?
707: 2020/12/19(土)05:44 AAS
>>706
スクレイピングする方法はググれば沢山見つかるから簡単に自作できるんじゃない?
っていうか自分もこれから作ろうと思ってる

あんま関係ないけど、とあるサイトで w3m で画像が表示されなくなったことがあって
なんか lazy load とかいうやつらしくて
そのときは串自作して対応したよ
708
(1): 2020/12/19(土)09:31 AAS
>>706
Twitterは、user-agentをBot等に変えれば行けませんか?
709
(4): 2020/12/21(月)23:40 AAS
>>708
いままで mobile.twitter.com でモバイル版が提供されてて
w3m などのテキストブラウザでも HTML で直接閲覧できていたんですが、
2020-12-16 で mobile.twitter.com 自体が廃止になったので、
今後は API 叩いたり JSON いじったりしないとダメじゃないかと思います。
710
(1): 2020/12/22(火)07:39 AAS
試してみれば見れるのは分かるだろうに
なんで適当な事書くのかね
711: 2020/12/22(火)07:57 AAS
そっか、検索でツイート引っかかるよう抜け道残してあるんだな
712: 709 [site] 2020/12/22(火)09:45 AAS
>>710
失礼しました。「user_agent」を「Bot」にしたら確かに見れますね。
だいぶ読みづらくはなりますが……。
713
(1): 2020/12/23(水)20:46 AAS
え、User-Agentを「Bot」にしても、ログインすると
「このブラウザは現在サポートされていません。」
と出るんだけど、何か足りない設定があるのかな
714
(1): 2020/12/24(木)07:16 AAS
>>713
ログインしない状態での閲覧はできましたが、ログインしてからの操作は、こちらもできませんでした。
user-agent以外の手段が必要そうです。
なお、閲覧するだけなら、nitterを使うとすっきりした表示になるようです。
715: 2020/12/25(金)00:27 AAS
ありがとう、やっぱり見れないのね
JavaScriptの勉強してlocal CGIを書くかなあ
1-
あと 22 レスあります
スレ情報 赤レス抽出 画像レス抽出 歴の未読スレ AAサムネイル

ぬこの手 ぬこTOP 0.019s