Navi2ch for Emacs (Part 22)
Emacsen で動く 2ch 専用ブラウザ、Navi2ch のスレッドです。
Navi2ch Project Home Page
http://navi2ch.sourceforge.net/
開発版
% cvs -z3 -d:pserver:anonymous@navi2ch.cvs.sourceforge.net:/cvsroot/navi2ch co navi2ch
過去ログ
>> ~/.navi2ch/etc.txt
> navi2ch
> http://navi2ch.sourceforge.net/log/
> navi2ch
前スレ
Navi2ch for Emacs (Part 21)
https://mevius.5ch.net/test/read.cgi/unix/1405127170/ いや ENABLE_REPLACE_HTTPS_LINK みたいです >>34
ENABLE_REPLACE_HTTPS_LINK は bbsmenu.html の書き換えには使われなくね?
(少なくとも commit 15bf90b までは) >>31
ありがとう。読めるようになった。
パッケージの更新を待ってたけど、待ちくたびれた。 >>31
有難う
.navi2chを消すとスレタイ読めるようになるけど
今まで.navi2chがあると読めない
これは仕方ないですかね? >>37
(navi2ch-list-sync 'force)
を eval すれば更新されると思う C-u sで板一覧を読み直してもだめかな?
いずれにしてもboard.txtを一度捨ててやればいい気がするけど。 >>39
ああ専用のキーバインドあるならそっちの方がいいね
確か board.txt 削除するだけだとダメだった気がする >>38,39,40
素晴らしい!できました
ありがとう これからどんどんhttpsが普通になってくるんだろうけど、windowsのgnutls-cli.exeが亡くなってる
もはやemacsをWindowsで使う人は絶滅危惧種なのだろうか change_access_Nch_request() で https を http に置換すればいいよ イジメ被害者に凄惨ないじめをしても
「いじめられた本人が悪い」と
平気で言えるのが大阪府三島郡島本町の奴等
大阪府三島郡島本町は
「大阪府三島郡島本町のいじめはいじめられた本人が悪い」
として虐め加害者を擁護し被害者を非難する
ガラも程度も悪い暴力イジメ廃人町
大阪府三島郡島本町は
「大阪府三島郡島本町のいじめはいじめられた本人が悪い」
と公言して公然とイジメ加害者を擁護し被害者を非難する
極悪非道の卑劣な町
大阪府三島郡島本町こそ日本国家社会の癌 2chproxy.plでENABLE_REPLACE_HTTPS_LINKを有効にしても、
置き換えたhttpのリンクを開けなくなってる? 最近、BBSPINKがヘッドラインしか見れなくなったです。
これって、navi2chが原因でしょうか、
それとも、2chproxy.plが原因でしょうか? >>48
あぁ >>33 の方法(ENABLE_2CH_TO_nCH を 3 以上にする)は BBSPINK だとダメなのね
>>31 の方法でやるか、あるいは 2chproxy.pl を書き換えるなら
bbsmenu_tolower_response() の中の適当なところで
$content =~ s|https:|http:|g;
とすればいいかも >>49
2chproxy.plの書き換えでうまくつながりました。
ありがとうございます。 ubuntuで以下で落ちるのですが何ででしょう?
Debugger entered--Lisp error: (wrong-type-argument stringp nil)
expand-file-name(nil "~/.navi2ch")
navi2ch-load-info(nil)
navi2ch-board-load-info(((name . #("芸スポ速報+" 0 6 (charset cp932-2-byte))) (bbstype . unknown) (uri . "https://hayabusa9.5ch.net/mnewsplus/") (id . "mnewsplus") (type . board) (seen)))
navi2ch-board-select-board(((name . #("芸スポ速報+" 0 6 (charset cp932-2-byte))) (bbstype . unknown) (uri . "https://hayabusa9.5ch.net/mnewsplus/") (id . "mnewsplus") (type . board) (seen)) nil)
navi2ch-bm-select-board(((name . #("芸スポ速報+" 0 6 (charset cp932-2-byte))) (bbstype . unknown) (uri . "https://hayabusa9.5ch.net/mnewsplus/") (id . "mnewsplus") (type . board) (seen)) nil)
navi2ch-list-select-board(((name . #("芸スポ速報+" 0 6 (charset cp932-2-byte))) (bbstype . unknown) (uri . "https://hayabusa9.5ch.net/mnewsplus/") (id . "mnewsplus") (type . board) (seen)) nil)
navi2ch-list-select-current-board(nil)
funcall-interactively(navi2ch-list-select-current-board nil)
call-interactively(navi2ch-list-select-current-board nil nil)
command-execute(navi2ch-list-select-current-board) >>51
多分 https: から始まる文字列を板のURLと認識できてない
navi2ch 内部または串で https: を http: に書き換えるようにすればいいはず
詳しくは>>27あたりから読んで >>52
ありがとうございます。
その対応は仕込んんでいたんですが
(setq navi2ch-net-enable-http11 t)
をnilに変更したら逝けるようになりました。 自分は 2chproxy.pl で>>49の対処法でやってるんだけど
navi2ch-net-enable-http11 の値は nil でも t でも板の読み込みは問題ないっぽい
問題はどの板でも書き込みが当分お断りされることなんだけどね
2chproxy.pl のスレは荒らされ放題だし、串自作すっかなあとかって考えてるとこ >>55
トン
最初はそれで回避できてたんだけどしばらくしてダメになった
FirefoxからのPOSTと比較して色々試したらできるようになったっぽい
俺環の予感 >>56
うちは FORWARD_PROXY で上位PROXYに squid を指定してるとダメだった
リクエストヘッダにproxy的なヘッダ (例えば、Cache-Control とか?) があると拒否されるっぽいけど、
それ以上は詳しく調べてない
stone で中継すれば、ヘッダいじらないので大丈夫だった proxy的なヘッダもだけど、専ブラ的なヘッダで弾くこともあるらしい
(ソースはDetour情報ページ) >>31
ありがとうございます。5chは読めるようになりました。machi.to をbbsmenuに追加したところ、machi.to のスレだけ読めないのですが、皆様いかがでしょうか? >>59
5chと違って常時SSL化されてるからじゃないかな
2chproxy.plはSSL非対応だから別の串使うとか
上の方のレス見るとstoneで中継してる人もいるみたいね 内製っつうか、EmacsからGnuTLSを使うオプションは標準で用意されてるんだけどね
使ったことないからNavi2chや串との相性は知らんけど >>59
自分のバージョンだと machi. の前に www. とか付いてないとダメみたい
関数 navi2ch-machibbs-p を適当に書き換えれば読めるようになった
(ちなみに自作串で http と https の変換をしてる) 備忘録に書いておく。
850 臨時で名無しです2021/03/13(土) 17:14:53.00ID:LBn3hLWN
●UAをwin10 2004(20H2)に偽装する
以下参照で
Jane Style (Windows版) Part167
https://egg.5ch.net/test/read.cgi/software/1613305763/4 https://egg.5ch.net/test/read.cgi/software/1608815679/588
588 名無しさん@お腹いっぱい。2021/01/23(土) 07:57:15.62ID:hPKq93iZ0
User-Agent: Monazilla/1.00 JaneStyle/4.00 Windows/10.0.19042
↑
UAを>>4の方法で上に変えたのですが、
User-Agent: Monazilla/1.00 (JaneXeno/200711)
に変更する方法は公開されていないのでしょうか?
jane styleで「余所」のエラーが出ても、JaneXenoだとちゃんと書き込めるので、
UAをJaneXenoの方に変更できたら、janeでもエラーが出ずに書き込めると思って。 Hey, Yoga Pig Watkins!
Stop speech suppression soon!
US authorities already grasped your misdeeds colluding to Japanese junta, National Police Agency.
Go to hell! Fuckin' fat! 2chproxy.pl と一緒だと navi2ch-net-connect-check がうまく動かない?
連続してアクセスしすぎるせいか、cloudflare にブロックされてつらい・・・ うちの Navi2ch には navi2ch-net-connect-check って関数ないなあ
開発版で追加された?
1.8.4 では何の問題もなく動いてるよ >>70
wait 入る?
navi2ch-bm-fetch-maybe-new-articles で連続で fetch するとブロック食らう・・・ wait入らないなぁそのせいかアニメ2板とかでブロックされている
navi2ch melpa版
2chproxy git最新版
あと
>投稿エラー: ERROR: 不正なPROXYを検出しました。401
とかでnavi2ch+2chproxyから投稿できないみたいだ 自分も以前 navi2ch 1.8.4 でちょくちょく 410 Gone 食らってたけど最近ないなあ
2chproxy は、まあリクエストヘッダ書き換えないとダメだろうなあ navi2chも2chproxyも開発停止している? https://asahi.5ch.net/test/read.cgi/newsplus/1628123335/56
From: [56] ニューノーマルの名無しさん <sage>
Date: 2021/08/05(木) 11:14:43.17 0
のようにIDが表示される所が "0" となっているレスを検索したいです。 すまんが何からチェックしていいのかも検討がつかず、手助けしてくれる人がいたらよろしく頼む。
Navigator for 2ch 2.0.0-DEV を使っていて open某 を見ているのだが、板のスレ一覧を更新しようとしたら「Checking file...error」
古いスレ一覧からスレを選んで「Filtering and inserting current messages...done」が出ても article のデータが更新されている様子がない
別にブラウザから見て確認できるほどのメッセージがない。
「そんな少ない手掛かりでわかるかー」かもしれんが、なにとぞよろしく その症状自体は 5ch.net でも起こることあるよ
ネットワークが一時的に繋がらなかったりするとね
ネットワークが復旧して Emacs 再起動すれば直る
で、open某ってどこ? うーん、いくつか適当な板で subject.txt 取得しようとしてみたけど
503: Service Temporarily Unavailable.
が返ってくるね
サーバ側の不具合?自分は今まで使ったことなかったから分からん 今朝になったら症状がなくなってました。
サーバかネットの問題だったもんでしょうか、すんません。
某にしたのは NG ワードで引っ掛けられるかと思ったもんで。
ドメイン名だけだったのか、ひっかかるの。 proxy2chを「proxy2ch -s」で使って、melpa版のnavi2chで>>31と↓のRefererの置換で書ける板と書けない板がある
--- navi2ch-multibbs.el.orig 2021-11-16 11:41:23.001065794 +0900
+++ navi2ch-multibbs.el 2021-11-17 20:38:11.623090914 +0900
@@ -466,7 +466,7 @@
(list (cons "Content-Type" "application/x-www-form-urlencoded")
(cons "Cookie"
(navi2ch-net-cookie-string cookies coding-system))
- (cons "Referer" referer))
+ (cons "Referer" (replace-regexp-in-string "http" "https" referer)))
(navi2ch-net-get-param-string param-alist
coding-system))))
(navi2ch-net-update-cookies url proc coding-system) 2chproxy.plで読んでinit.elに次のように設定してもずっと書き込みはできないけどそんなもん?
(setq navi2ch-net-http-proxy "localhost:xxxx")
(setq navi2ch-net-send-message-use-http-proxy nil)
(setq navi2ch-net-user-agent
"Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:81.0) Gecko/20100101 Firefox/81.0")
投稿エラー: ERROR: 投稿時の認証用クエリがありません。
Navi2chのソースはここ。
https://github.com/naota/navi2ch そんなもんだ
user-agent に webブラウザのものを使うならリクエストヘッダの値なども偽装する必要がある
もしくは偽装してくれる proxy を経由させるか
それができないなら user-agent に専用ブラウザのもので書き込める値を指定する やっぱりそうだよね。
proxy2chであれこれ試してみたけど、
「投稿エラー: ERROR: もう新しいのにしましょ。」か、
「投稿エラー: ERROR: 不正なPROXYを検出しました。」で、
手に負えそうにない。 結局、アクセス規制をかいくぐる修正が延々と必要になって放置されちゃったのかな 一瞬 2chproxy.pl のスレかと思ったわ
どの串にせよ、ユーザがリクエストヘッダをカスタマイズできればいいんだけどね >>87
それでダメなときもあったのよ
今どうなのか知らないけど すまぬ。ゴミを書き込んじゃったけど何か書けるようになった。 結局、proxy2chをUSE_LUAでビルドし直して、
>>87さんのようにUAを変更したsample.luaを少しいじったら書けるようになった。
また使えるようになって助かったよ。 書き込めたり書き込めなかったりイタチゴッコな感じ有る URL の http:// が半角で書けない規制とか今どうなってるんだろう
面倒だからコロンを文字参照に自動変換してるんだけど
某スレで指摘されるまで自分でもそのことすっかり忘れてたっていう navi2chを久しぶりに終了して再度スタートさせたら
板のカテゴリ(「ニュース」とか「案内」)は表示されるけど
カテゴリにカーソルを移動してEnterを押しても板が表示されなくなりました
.navi2chを見るとboad.txtが同じように板のカテゴリが羅列されているだけで
板名やURLが記入されていません
これはどうすれば直りますかね?
navi2ch-list-bbstable-url を変えれば良い? 板一覧でC-u sとかして更新してもだめなのかな? >>96
レス有難うございます
駄目です直りません 前スレを navi2ch-list-valid-host-regexp で検索 >>98
以下でも出来ません
(setq navi2ch-list-valid-host-regexp
(concat "\\("
(regexp-opt '(".2ch.net" ".5ch.net" ".bbsp=ink.com" ".mach=ibbs.com" ".mach=i.to"))
"\\)\\'"))
(setq navi2ch-list-bbstable-url "http://menu.5ch.net/bbstable.html")
(= はNG ワード対策なので抜く)
今は古い.navi2chからboard.txtをコピーしています https:のアドレスに対応してないんじゃないの
それも前スレに対応策あったような気がしたけどすぐには見つけられんなあ
自分は串で全部http:に書き換えてる >>101
うまいこといきました
有難うございました 別のスレにも書いたけど
UA だけじゃなく他のリクエストヘッダも見てるっぽいから
板にもよるけど UA 偽装だけじゃ不十分な場合もある Accept: text/html と Accept-Language: ja と oekaki_thread1 あたりが必要みたいだね。
あと Referer もスレの l50 のアドレスとかにしないといけないみたい。
navi2ch-2ch-send-message を書き換えるのが良さそうかな。 proxy2chのサンプルスクリプトもそんな風になってるけど、
ApiKeyのあたりが何のことかわからない。 proxy2ch は知らないけど、API 使ってるなら話が全然違うような
スクレイピングで何とかしようって流れだから どこぞの親切な人のsample.luaを借りてUAだけちょっと変更したらとりあえず書けた。
でもいろいろ制限してるみたいだしこの先もわからんね。 いや、だから>>113で書けたの。
でもまた書けなくなったりくり返してるね。 今のところ以下で書ける
(setq navi2ch-net-user-agent "Monazilla/1.00 (Ciisaa/1.43(A))") その後>>116で書けなくなる
proxy2chを使ったら書ける proxy2chは以下で起動
http://egg.5ch.net/test/read.cgi/software/1649749366/62
navi2chは以下を設定
(setq navi2ch-net-send-message-use-http-proxy t) >>118
proxy2ch 拾ってきてコンパイルして復活できたわ。さんくす
今のところ sample.lua でリクエストヘッダいじる必要はないんだね あ、でも書き込みすると俺環では Emacs 上に
>投稿エラー: HTTP status: 200
>----------------
>send message...failed: HTTP status: 200
って出るわ。書き込みは成功しているけど
何だろこれ…
(navi2chの設定を色々イジりすぎてるせいかもだけど) >>121
proxy2ch からの HTTPレスポンスをキャプチャしたりして原因を調べてましたが、
どうやら proxy2ch を --chunked オプションを付けずに起動すると、
navi2ch がなぜか書きこみ結果の HTTPボディを拾えなくなって? >>120 の症状が出るみたい
おま環、OS依存かもしれないですが…
あと、>>118 の先の proxy2ch オプションですが、-c は要らない気がします
(navi2ch は HTTP CONNECT を喋らないと思うので)
現時点で navi2ch + proxy2ch を動かすための
・navi2ch に当てるパッチ
・proxy2ch 起動オプション
をまとめたほうがいいですよね
2chproxy.pl 今までありがとう~ >>122
navi2ch を設定変更なしで
・*.5ch.net 対応
・proxy2ch で動作
させるためのパッチを置いておきます
変更点:
・*.2ch.net -> *.5ch.net 変更対応
・bbsmenu.html を 5ch.net から取得
・bbsmenu.html に含まれる https:// リンクを http:// に強制書き換え
・navi2ch-net-http-proxy : proxy2ch に接続するために初期値を localhost:9080 に変更
navi2ch と proxy2ch が別マシンで動いている環境では、要設定変更
・navi2ch-net-accept-gzip : 環境によりgzip周りがまともに動かない? ようなので、初期値を無効に変更
・navi2ch-net-enable-http11 : 今どき HTTP/1.1 を喋るほうが望ましいので、初期値を有効に変更
(・navi2ch-net-send-message-use-http-proxy はデフォルトで有効になっている) >>123
patch 1つ目
--- navi2ch-list.el.orig 2021-02-07 02:11:34.000000000 +0900
+++ navi2ch-list.el 2022-05-07 18:24:59.186532000 +0900
@@ -94,7 +94,7 @@
(nil " " navi2ch-list-board-name-face))))
(defconst navi2ch-list-bbstable-default-url
- "http://menu.2ch.net/bbsmenu.html")
+ "http://menu.5ch.net/bbsmenu.html")
;; add hook
(add-hook 'navi2ch-save-status-hook 'navi2ch-list-save-info)
@@ -592,6 +592,9 @@
(when (and (not ignore)
(string-match "href=\\(.+/\\([^/]+\\)/\\)" attr))
(setq url (match-string 1 attr))
+ ;;(when (string-match "^https" url)
+ ;; (setq url (replace-regexp-in-string "^https" "http" url)))
+ (setq url (navi2ch-replace-string "^https:" "http:" url nil))
(setq url (or (cdr (assoc
url
navi2ch-list-moved-board-alist)) >>123
patch 2つ目
--- navi2ch-vars.el.orig 2021-02-07 02:11:33.000000000 +0900
+++ navi2ch-vars.el 2022-05-07 18:31:29.607203000 +0900
@@ -257,3 +257,3 @@
(concat "\\("
- (regexp-opt '(".2ch.net" ".bbspink.com" ".machibbs.com" ".machi.to"))
+ (regexp-opt '(".2ch.net" ".5ch.net" ".bbspink.com" ".machibbs.com" ".machi.to"))
"\\)\\'")
@@ -2010,6 +2010,3 @@
;; net variables
-(defcustom navi2ch-net-http-proxy
- (if (string= (or (getenv "HTTP_PROXY") "") "")
- "127.0.0.1:8080"
- (getenv "HTTP_PROXY"))
+(defcustom navi2ch-net-http-proxy "localhost:9080"
"*HTTP プロキシの URL。"
@@ -2081,3 +2078,3 @@
-(defcustom navi2ch-net-accept-gzip t
+(defcustom navi2ch-net-accept-gzip nil
"*non-nil なら、ファイル受信に GZIP エンコーディングを使う。"
@@ -2096,3 +2093,3 @@
-(defcustom navi2ch-net-enable-http11 nil
+(defcustom navi2ch-net-enable-http11 t
"*non-nil なら、HTTP/1.1 を使用する。" >>123
proxy2ch の起動オプション (現時点では Version 20220501 が最新、sample.luaは不要) :
-s --chunked --api a6kwZ1FHfwlxIKJWCq4XQQnUTqiA1P:ZDzsNQ7PcOOGE2mXo145X6bt39WMz6 --api-server api.5ch.net --api-auth-xua "JaneStyle/4.23" --api-dat-xua "JaneStyle/4.23" -a "Monazilla/1.00 JaneStyle/4.23 Windows/10.0.22000"
必要に応じて、以下のオプションを追加
--verbose : 詳細メッセージ
-g : localhost 以外からの接続も受け付ける navi2ch-net-enable-http11を有効にするからgzipでエラーになるんじゃないのか >>127
そうかもしれないけど、HTTP/1.1有効にしないほうがこの先色々と不味くないです? 串が読み書きして
curl_easy_setopt(curl, CURLOPT_HTTP_VERSION, CURL_HTTP_VERSION_1_1);
使ってるのに >>129
いやそうじゃなくて、proxy2ch がいつまでもHTTP/1.0を解釈してくれるとは期待できないって話です
そもそも今どき HTTP/1.0 とかもうないでしょ?
他の専ブラ次第かもしれませんが
嫌ならpatch当てなければいいです そこで串の名前を出すあたり何も分かってないだろ
したらばでも1.0で問題無いのに何が今どきなのやら ていうかいまどき Shift_JIS だからなあ 5ch は 文字コードとか1.0とかおーぷん、Nextなども同じだし