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/
探検
Navi2ch for Emacs (Part 22)
2019/11/29(金) 16:12:11.21
2023/06/09(金) 12:05:59.07
書き込みできないのは何で?
5chのAPIって有料なの?
5chのAPIって有料なの?
2023/06/09(金) 21:07:48.08
別に API 使わなくても書き込めるよ
現に自分は 2chproxy.pl の他にさらに自作の串挟んで書いてる
確かリクエストヘッダをちょいといじるだけ(自作だけど詳細忘れた)
まあプロバイダと板と時期(選挙期間とか)の組合せによってはダメなこともあるけど
現に自分は 2chproxy.pl の他にさらに自作の串挟んで書いてる
確かリクエストヘッダをちょいといじるだけ(自作だけど詳細忘れた)
まあプロバイダと板と時期(選挙期間とか)の組合せによってはダメなこともあるけど
2023/06/09(金) 21:09:27.14
てか今は他にもいい串あるみたいだからそれ使えばいけるんじゃない?
正直 Perl スクリプトとかもういじりたくない…
正直 Perl スクリプトとかもういじりたくない…
2023/06/10(土) 10:06:24.73
なんだか複雑ですね
2023/06/11(日) 10:09:02.49
2023/06/14(水) 17:50:02.58
昨日から何も読めなくなったのは俺だけですか?
2023/06/14(水) 19:04:12.53
read.cgiの仕様が変わったんでproxyの対応を待った方が良さそう
2chproxy.plはlinux板のスレでパッチが作られてるし
proxy2chは対応したバージョンに更新されてる
2chproxy.plはlinux板のスレでパッチが作られてるし
proxy2chは対応したバージョンに更新されてる
2023/06/14(水) 19:29:09.45
2023/06/15(木) 00:22:26.62
proxy2chを更新してないけど読めるんだが?
2023/06/15(木) 00:24:56.79
そりゃAPIは変わってないんだから読めるだろ
過去ログやread.cgi経由で読む時の話だ
上にもread.cgiと書いてあるだろ
過去ログやread.cgi経由で読む時の話だ
上にもread.cgiと書いてあるだろ
2023/06/15(木) 00:44:07.02
ああなるほど
あんまりよく分かっていないもんですから
あんまりよく分かっていないもんですから
157名無しさん@お腹いっぱい。
2023/06/15(木) 23:39:55.74 elisp だけで 5ch を読むための navi2ch-5ch.el を書き換えた
必要な変数設定も埋め込んだ
----BEGIN BASE64----(navi2ch-5ch.el.gz)
H4sICJ4gi2QCC25hdmkyY2gtNWNoLmVsAM1YX4/bRBB/vogPsTIctXOyfcm1UE6+
RLSq2opSXpB4iO8ix94kFrETvJtrQX3hHvkUPIKQQOIb8DUQX4JvwMzser32JSlX
XrjrpevZ+fPbmdmZcVzB5TesTK7zYbr0k0rm6Yr7vExm8F+Wz+eszFdez22xrXIh
/dlMSOLaVivmLKXcnIdhwctt8CBdBiWXIXDQ81IWK2enjutklWf+cg3Lii/4602P
0Y+brss0kcyJY9fpHWmiYvHXG8nuuU5txmFOAAoDkdYrTQTzm7z8OkjXBeg4Ii1O
UCTpMoctItfPgVw7nlcbAqteHN9DSs/N+Pw6qQxsMOrjeXy59rOkhu0PehboKJMj
Qo3wJ6f+J5cnpFFMrqLLvtqJYGt8nrBlxecXsVMk+Uquz5H/KnYUP0i/ma9LObka
XfaBoHVGsxGwBf0xkKKQHmCl90KlVks2QoHBYxbjc4RzMjbCRAOU/cjAGmNYEREi
cMaEZESniMIELHvjjmhLL9HgI1I+QP4TEkZB8kgj36xE39IZJeQ2MDvjLnnH9Uje
U1jieEzUiFzWBhVlmRWGq7gkHqLcIbLDVmQJVJZfg4PFJilBH0tXiRDgq3JbzHgF
rrodekWxox/eVjSyE2OPiaTgxgDkgeUoTTucUHbiJEb6je1vk3AjFSTNrzZD3G2F
3eRdDeYdTwYO5218e9XYxz2gccYpc+jsxmXGPZjXYgwFa8YDFSZds7aCV2Hr2jrK
HbVxlW8jK662LzsX4k0UAroRLRDgqH62r1wEJAO74EIkC+ULlJYjSGOzKwF+kk3z
kvYbJcppOyKQZcZxd8j5s1bO66bAIH/h2LUrMy4hxQRbb3hp8G2wki8BonURIrEt
iqT61jyCH1oCeaYib1yufbWPH0Okb0L7Drw9+63wkMsoqVXN0KV0fO7+9dsfv/7+
FVOlxgMTassbd6GpygukAwdsJXadBC2OLZ2/Tvu2+v9foh+8mKbyhjo7jEt4KvN1
J08gwSSHJtW69prTVBOdfCPTjLfl3uxd5SUXzPUwe1dc9pnrbip+Pa24mKrqzE6x
ybtPXn766MWT6fDxs+mXX0zLx8/a9OefP0X6i+cvP1PTD0CpuGQyl3ANZnzBeJkx
dVc8mljcxRowpEu4Wu5mnZfSL/LS03uvlnBD3AREYAJKKgA9X1evkirT1w2OSZpH
Dlpj0swhTE1MaNAtEgmCaPfUazHsVBhX47iEdDuoF5VpvWAiL8u8XKB2r2dzqUO7
つづく
必要な変数設定も埋め込んだ
----BEGIN BASE64----(navi2ch-5ch.el.gz)
H4sICJ4gi2QCC25hdmkyY2gtNWNoLmVsAM1YX4/bRBB/vogPsTIctXOyfcm1UE6+
RLSq2opSXpB4iO8ix94kFrETvJtrQX3hHvkUPIKQQOIb8DUQX4JvwMzser32JSlX
XrjrpevZ+fPbmdmZcVzB5TesTK7zYbr0k0rm6Yr7vExm8F+Wz+eszFdez22xrXIh
/dlMSOLaVivmLKXcnIdhwctt8CBdBiWXIXDQ81IWK2enjutklWf+cg3Lii/4602P
0Y+brss0kcyJY9fpHWmiYvHXG8nuuU5txmFOAAoDkdYrTQTzm7z8OkjXBeg4Ii1O
UCTpMoctItfPgVw7nlcbAqteHN9DSs/N+Pw6qQxsMOrjeXy59rOkhu0PehboKJMj
Qo3wJ6f+J5cnpFFMrqLLvtqJYGt8nrBlxecXsVMk+Uquz5H/KnYUP0i/ma9LObka
XfaBoHVGsxGwBf0xkKKQHmCl90KlVks2QoHBYxbjc4RzMjbCRAOU/cjAGmNYEREi
cMaEZESniMIELHvjjmhLL9HgI1I+QP4TEkZB8kgj36xE39IZJeQ2MDvjLnnH9Uje
U1jieEzUiFzWBhVlmRWGq7gkHqLcIbLDVmQJVJZfg4PFJilBH0tXiRDgq3JbzHgF
rrodekWxox/eVjSyE2OPiaTgxgDkgeUoTTucUHbiJEb6je1vk3AjFSTNrzZD3G2F
3eRdDeYdTwYO5218e9XYxz2gccYpc+jsxmXGPZjXYgwFa8YDFSZds7aCV2Hr2jrK
HbVxlW8jK662LzsX4k0UAroRLRDgqH62r1wEJAO74EIkC+ULlJYjSGOzKwF+kk3z
kvYbJcppOyKQZcZxd8j5s1bO66bAIH/h2LUrMy4hxQRbb3hp8G2wki8BonURIrEt
iqT61jyCH1oCeaYib1yufbWPH0Okb0L7Drw9+63wkMsoqVXN0KV0fO7+9dsfv/7+
FVOlxgMTassbd6GpygukAwdsJXadBC2OLZ2/Tvu2+v9foh+8mKbyhjo7jEt4KvN1
J08gwSSHJtW69prTVBOdfCPTjLfl3uxd5SUXzPUwe1dc9pnrbip+Pa24mKrqzE6x
ybtPXn766MWT6fDxs+mXX0zLx8/a9OefP0X6i+cvP1PTD0CpuGQyl3ANZnzBeJkx
dVc8mljcxRowpEu4Wu5mnZfSL/LS03uvlnBD3AREYAJKKgA9X1evkirT1w2OSZpH
Dlpj0swhTE1MaNAtEgmCaPfUazHsVBhX47iEdDuoF5VpvWAiL8u8XKB2r2dzqUO7
つづく
158名無しさん@お腹いっぱい。
2023/06/15(木) 23:40:21.24 つづき
s+18zitfbGHqq5BRu6HhzufMvWDjCCoH+MFP5hL8rTiOamUa39uGKZC4C/8Q+dH8
bm/USiwf2PHa4YG7Aj6znPZqmaO//hUUzFJIUis/XeVd1F9TFD7t9YHXRN/lWOb0
et3lHHrMcQys+sfFwjldJmK5S+bM6xDuayW1RaxmU8GnebZD+kGHecYHxuwt5o9u
MQ/3M3/cYdaVYzfzwzYzFgUroPYJKr5ZJSmvo5iXtQrHLtS6KjL4xbcI/SJhKbLz
pXHvQe3jSTK7RJ1OI2GrqQ94SMmsGuEfKdH8d1JBr0QODthqdq9rc17Q/KEanqA2
Qm2AWvTVh5f1BK/HHlQSxwODgb0LClCNQLway2Sa+N9d0ie2p/4FNifocH3C1afG
K3SHszb+vbienjT4OB7G8dl/O0KUFwt4dxFVehGr1q1bLzoyDHE3Dux+my6BgJ24
nlL6+qVP9MOx9qwL9aPAIUwIga/XoCU4FrqDA2qVkXQhIJ+h/A7Zrd7mwcXsmbRl
xHZ/F9uwzSZVXKngAPXdfEPJ3rpF3WSl7ni78eo6fYcIMB2DvUGA5zCcXAXo6OCh
cb81IZoBSKmb3Pz0w9Obn29+uWT09Qa6Q+9Z3rDcgbWmidmxiEbqr16ZryGsOqGK
eFNNDAt1NJoaInaKA025kEtouwPPjlNnc+jVuwYGe/Tk/Fj4x8JBYeLpNWGGUmme
dgQGcmXAmv7k2WFRp9WvCfRAs4Jn5KkRwjwwOGGdOczbpxPHLFQpmHPz482f309u
/o5Gh1cOCuEhWNfKTst2vLr8zRLUNVDobGjEavMliPJKNPS3DKfNWAoXUA+qB+fY
2haoBSHKeZygrfHSrJPXhneNX6sxMsCUGjOelTDw6zjBcKgwv3cLNtwIf7vBdPTn
ED/EBllYLYQFH7/wc1OYnYiOc8ycQl1CCg4aoswLTRxanNsyVcSzhghnIx85V/Qm
AHdRFcWQ7mUIW+03lTgA0gdOe8DWkxPNAqzWCFCNBxR4iPk8f90dq4ixzsTZGkY2
1p2nWiw7h7MzxYIn2gEJ6hF+ZamqjsMUDisZyatN7QglFzLE1/0gXeQhEOBfLcYU
RHOBjsit79/bk1Emcd0SryvmhyDfMAocBQo1qNNhdNKsgiahAkTJnWTXOVTeJMss
M51kYefwCVO/j3LKUXt5EaLX+wfxp+LSfhYAAA==
----END BASE64----
s+18zitfbGHqq5BRu6HhzufMvWDjCCoH+MFP5hL8rTiOamUa39uGKZC4C/8Q+dH8
bm/USiwf2PHa4YG7Aj6znPZqmaO//hUUzFJIUis/XeVd1F9TFD7t9YHXRN/lWOb0
et3lHHrMcQys+sfFwjldJmK5S+bM6xDuayW1RaxmU8GnebZD+kGHecYHxuwt5o9u
MQ/3M3/cYdaVYzfzwzYzFgUroPYJKr5ZJSmvo5iXtQrHLtS6KjL4xbcI/SJhKbLz
pXHvQe3jSTK7RJ1OI2GrqQ94SMmsGuEfKdH8d1JBr0QODthqdq9rc17Q/KEanqA2
Qm2AWvTVh5f1BK/HHlQSxwODgb0LClCNQLway2Sa+N9d0ie2p/4FNifocH3C1afG
K3SHszb+vbienjT4OB7G8dl/O0KUFwt4dxFVehGr1q1bLzoyDHE3Dux+my6BgJ24
nlL6+qVP9MOx9qwL9aPAIUwIga/XoCU4FrqDA2qVkXQhIJ+h/A7Zrd7mwcXsmbRl
xHZ/F9uwzSZVXKngAPXdfEPJ3rpF3WSl7ni78eo6fYcIMB2DvUGA5zCcXAXo6OCh
cb81IZoBSKmb3Pz0w9Obn29+uWT09Qa6Q+9Z3rDcgbWmidmxiEbqr16ZryGsOqGK
eFNNDAt1NJoaInaKA025kEtouwPPjlNnc+jVuwYGe/Tk/Fj4x8JBYeLpNWGGUmme
dgQGcmXAmv7k2WFRp9WvCfRAs4Jn5KkRwjwwOGGdOczbpxPHLFQpmHPz482f309u
/o5Gh1cOCuEhWNfKTst2vLr8zRLUNVDobGjEavMliPJKNPS3DKfNWAoXUA+qB+fY
2haoBSHKeZygrfHSrJPXhneNX6sxMsCUGjOelTDw6zjBcKgwv3cLNtwIf7vBdPTn
ED/EBllYLYQFH7/wc1OYnYiOc8ycQl1CCg4aoswLTRxanNsyVcSzhghnIx85V/Qm
AHdRFcWQ7mUIW+03lTgA0gdOe8DWkxPNAqzWCFCNBxR4iPk8f90dq4ixzsTZGkY2
1p2nWiw7h7MzxYIn2gEJ6hF+ZamqjsMUDisZyatN7QglFzLE1/0gXeQhEOBfLcYU
RHOBjsit79/bk1Emcd0SryvmhyDfMAocBQo1qNNhdNKsgiahAkTJnWTXOVTeJMss
M51kYefwCVO/j3LKUXt5EaLX+wfxp+LSfhYAAA==
----END BASE64----
2023/07/03(月) 23:55:32.94
>>157
いただいたファイルを ~/.emacs.d/elpa/navi2ch-20200130.36/navi2ch-5ch.el に置いて、
emacs-28.2 -q で起動した後
(when (require 'package nil t)
(add-to-list 'package-archives
'("melpa" . "https://melpa.org/packages/") t)
(package-initialize))
(eval-after-load "navi2ch"
(load "navi2ch-5ch"))
を評価して M-x navi2ch しても板一覧が取得できないのですが、何か他に設定が必要でしょうか?
いただいたファイルを ~/.emacs.d/elpa/navi2ch-20200130.36/navi2ch-5ch.el に置いて、
emacs-28.2 -q で起動した後
(when (require 'package nil t)
(add-to-list 'package-archives
'("melpa" . "https://melpa.org/packages/") t)
(package-initialize))
(eval-after-load "navi2ch"
(load "navi2ch-5ch"))
を評価して M-x navi2ch しても板一覧が取得できないのですが、何か他に設定が必要でしょうか?
2023/07/04(火) 23:30:06.41
161名無しさん@お腹いっぱい。
2023/07/11(火) 09:25:00.40 proxy2chなしで読み書きできるようになった
162名無しさん@お腹いっぱい。
2023/07/11(火) 16:14:50.46 Navi2ch完全ふっかああああぁつ!!wwwwwww
2023/07/11(火) 22:46:02.06
快適快適
2023/07/12(水) 19:36:42.68
分裂騒動で漁夫の利を得たNavi2ch
2023/07/12(水) 22:15:50.45
書き込みの規制めっちゃ緩くなってるね
いったいどうなってるんだ、いや別に悪いことじゃないんだけど
またすぐ荒らしが来て規制されるのかなあ
スレチスマソ
いったいどうなってるんだ、いや別に悪いことじゃないんだけど
またすぐ荒らしが来て規制されるのかなあ
スレチスマソ
166名無しさん@お腹いっぱい。
2023/07/13(木) 08:26:36.87 10年ぶりくらいにnavi2ch使ってみた。書き込めるかな
(setq navi2ch-list-bbstable-url "http://menu.5ch.net/bbsmenu.html") でカテゴリーはとってくるけど板一覧が持ってこれない。
とりあえずスレのURLをChromeで探して直接開いて読んでいるw
(setq navi2ch-list-bbstable-url "http://menu.5ch.net/bbsmenu.html") でカテゴリーはとってくるけど板一覧が持ってこれない。
とりあえずスレのURLをChromeで探して直接開いて読んでいるw
2023/07/13(木) 10:25:16.94
2023/07/15(土) 09:45:10.65
山下スパイルが消えて清々しい気分だ
169名無しさん@お腹いっぱい。
2023/07/15(土) 12:10:45.95 かける?
2023/07/15(土) 12:26:56.61
書ける
171sage
2023/07/15(土) 12:34:17.12 その1
diff --git a/navi2ch-list.el b/navi2ch-list.el
index 4188735..a2e8cad 100644
--- a/navi2ch-list.el
+++ b/navi2ch-list.el
@@ -567,7 +567,7 @@ changed-list は '((board-id old-board new-board) ...) な alist。
(let ((board-id (cdr (assoc url navi2ch-list-board-id-alist))))
(or board-id
(save-match-data
- (if (string-match "\\`http://.+/\\([^/]+\\)/\\'" url)
+ (if (string-match "\\`https?://.+/\\([^/]+\\)/\\'" url)
(match-string 1 url))))))
(defun navi2ch-list-make-board-txt ()
@@ -590,7 +590,7 @@ changed-list は '((board-id old-board new-board) ...) な alist。
(if (string-match "a" tag)
(let (url board-id id u)
(when (and (not ignore)
- (string-match "href=\\(.+/\\([^/]+\\)/\\)" attr))
+ (string-match "href=\"?\\(.+/\\([^/]+\\)/\\)" attr))
(setq url (match-string 1 attr))
(setq url (or (cdr (assoc
url
@@ -624,7 +624,7 @@ changed-list は '((board-id old-board new-board) ...) な alist。
(defun navi2ch-list-valid-board (uri)
(save-match-data
- (when (string-match "http://\\([^/]+\\)/\\([^/]+\\)/" uri)
+ (when (string-match "https?://\\([^/]+\\)/\\([^/]+\\)/" uri)
(let ((host (match-string 1 uri)))
(and (not (string-match navi2ch-list-invalid-host-regexp host))
(string-match navi2ch-list-valid-host-regexp host))))))
diff --git a/navi2ch-list.el b/navi2ch-list.el
index 4188735..a2e8cad 100644
--- a/navi2ch-list.el
+++ b/navi2ch-list.el
@@ -567,7 +567,7 @@ changed-list は '((board-id old-board new-board) ...) な alist。
(let ((board-id (cdr (assoc url navi2ch-list-board-id-alist))))
(or board-id
(save-match-data
- (if (string-match "\\`http://.+/\\([^/]+\\)/\\'" url)
+ (if (string-match "\\`https?://.+/\\([^/]+\\)/\\'" url)
(match-string 1 url))))))
(defun navi2ch-list-make-board-txt ()
@@ -590,7 +590,7 @@ changed-list は '((board-id old-board new-board) ...) な alist。
(if (string-match "a" tag)
(let (url board-id id u)
(when (and (not ignore)
- (string-match "href=\\(.+/\\([^/]+\\)/\\)" attr))
+ (string-match "href=\"?\\(.+/\\([^/]+\\)/\\)" attr))
(setq url (match-string 1 attr))
(setq url (or (cdr (assoc
url
@@ -624,7 +624,7 @@ changed-list は '((board-id old-board new-board) ...) な alist。
(defun navi2ch-list-valid-board (uri)
(save-match-data
- (when (string-match "http://\\([^/]+\\)/\\([^/]+\\)/" uri)
+ (when (string-match "https?://\\([^/]+\\)/\\([^/]+\\)/" uri)
(let ((host (match-string 1 uri)))
(and (not (string-match navi2ch-list-invalid-host-regexp host))
(string-match navi2ch-list-valid-host-regexp host))))))
172sage
2023/07/15(土) 12:35:07.32 その2
diff --git a/navi2ch-multibbs.el b/navi2ch-multibbs.el
index 8e49f28..d1ef831 100644
--- a/navi2ch-multibbs.el
+++ b/navi2ch-multibbs.el
@@ -345,7 +345,7 @@ START, END, NOFIRST で範囲を指定する"
;;;-----------------------------------------------
-(defsubst navi2ch-2ch-subject-callback ()
+(defsubst navi2ch-2ch-subject-callback (&optional args)
(when navi2ch-board-use-subback-html
(navi2ch-board-make-subject-txt)))
@@ -525,7 +525,7 @@ START, END, NOFIRST で範囲を指定する"
'equal)))
(navi2ch-cache-get
(cons uri file-name)
- (cond ((string-match "http://\\(?:[^@/]+@\\)?\\(.+\\)" uri)
+ (cond ((string-match "https?://\\(?:[^@/]+@\\)?\\(.+\\)" uri)
(navi2ch-expand-file-name
(concat (match-string 1 uri)
file-name)))
diff --git a/navi2ch-multibbs.el b/navi2ch-multibbs.el
index 8e49f28..d1ef831 100644
--- a/navi2ch-multibbs.el
+++ b/navi2ch-multibbs.el
@@ -345,7 +345,7 @@ START, END, NOFIRST で範囲を指定する"
;;;-----------------------------------------------
-(defsubst navi2ch-2ch-subject-callback ()
+(defsubst navi2ch-2ch-subject-callback (&optional args)
(when navi2ch-board-use-subback-html
(navi2ch-board-make-subject-txt)))
@@ -525,7 +525,7 @@ START, END, NOFIRST で範囲を指定する"
'equal)))
(navi2ch-cache-get
(cons uri file-name)
- (cond ((string-match "http://\\(?:[^@/]+@\\)?\\(.+\\)" uri)
+ (cond ((string-match "https?://\\(?:[^@/]+@\\)?\\(.+\\)" uri)
(navi2ch-expand-file-name
(concat (match-string 1 uri)
file-name)))
173sage
2023/07/15(土) 12:40:59.47 その3の1
diff --git a/navi2ch-net.el b/navi2ch-net.el
index dc11ec5..972c97f 100644
--- a/navi2ch-net.el
+++ b/navi2ch-net.el
@@ -228,7 +228,8 @@ nil なら常に再接続する。")
host (cdr (assq 'host list))
file (cdr (assq 'file list))
port (cdr (assq 'port list))
- host2ch (cdr (assq 'host2ch list))))
+ host2ch (cdr (assq 'host2ch list))
+ rest (cdr (assq 'rest list))))
(when navi2ch-net-http-proxy
(setq credentials (navi2ch-net-http-basic-credentials
navi2ch-net-http-proxy-userid
@@ -257,11 +258,8 @@ nil なら常に再接続する。")
(setq proc nil)
(unless (navi2ch-net-down-p host)
(condition-case nil
- (if (string-match "^https://" url)
- (setq proc (funcall 'open-tls-stream
- navi2ch-net-connection-name buf host "443"))
- (setq proc (funcall navi2ch-open-network-stream-function
- navi2ch-net-connection-name buf host port)))
+ (setq proc (apply navi2ch-open-network-stream-function
+ navi2ch-net-connection-name buf host port rest))
(error (navi2ch-net-add-down-host host)))))
(when proc
(with-current-buffer buf
diff --git a/navi2ch-net.el b/navi2ch-net.el
index dc11ec5..972c97f 100644
--- a/navi2ch-net.el
+++ b/navi2ch-net.el
@@ -228,7 +228,8 @@ nil なら常に再接続する。")
host (cdr (assq 'host list))
file (cdr (assq 'file list))
port (cdr (assq 'port list))
- host2ch (cdr (assq 'host2ch list))))
+ host2ch (cdr (assq 'host2ch list))
+ rest (cdr (assq 'rest list))))
(when navi2ch-net-http-proxy
(setq credentials (navi2ch-net-http-basic-credentials
navi2ch-net-http-proxy-userid
@@ -257,11 +258,8 @@ nil なら常に再接続する。")
(setq proc nil)
(unless (navi2ch-net-down-p host)
(condition-case nil
- (if (string-match "^https://" url)
- (setq proc (funcall 'open-tls-stream
- navi2ch-net-connection-name buf host "443"))
- (setq proc (funcall navi2ch-open-network-stream-function
- navi2ch-net-connection-name buf host port)))
+ (setq proc (apply navi2ch-open-network-stream-function
+ navi2ch-net-connection-name buf host port rest))
(error (navi2ch-net-add-down-host host)))))
(when proc
(with-current-buffer buf
174sage
2023/07/15(土) 12:44:09.11 その3の2
@@ -304,6 +302,10 @@ nil なら常に再接続する。")
(navi2ch-net-cleanup-vars)
(setq navi2ch-net-process proc))))
+(defun navi2ch-net-split-url-scheme-to-rest (scheme)
+ (if (string-prefix-p "https:" scheme)
+ '(:type tls)))
+
(defun navi2ch-net-split-url (url &optional proxy)
(let (host2ch authinfo user pass)
(string-match "https?://\\([^@/]+@\\)?\\([^/]+\\)" url)
@@ -324,16 +326,21 @@ nil なら常に再接続する。")
(cons 'host (match-string 2 proxy))
(cons 'file url)
(cons 'port (string-to-number (match-string 3 proxy)))
- (cons 'host2ch host2ch)))
- (string-match "https?://\\(?:[^@/]+@\\)?\\([^/:]+\\)\\(?::\\([0-9]+\\)\\)?\\(.*\\)" url)
+ (cons 'host2ch host2ch)
+ (cons 'rest (navi2ch-net-split-url-scheme-to-rest (match-string 1 proxy)))))
+ (string-match "\\(https?://\\)\\(?:[^@/]+@\\)?\\([^/:]+\\)\\(?::\\([0-9]+\\)\\)?\\(.*\\)" url)
(list
(cons 'user user)
(cons 'pass pass)
@@ -304,6 +302,10 @@ nil なら常に再接続する。")
(navi2ch-net-cleanup-vars)
(setq navi2ch-net-process proc))))
+(defun navi2ch-net-split-url-scheme-to-rest (scheme)
+ (if (string-prefix-p "https:" scheme)
+ '(:type tls)))
+
(defun navi2ch-net-split-url (url &optional proxy)
(let (host2ch authinfo user pass)
(string-match "https?://\\([^@/]+@\\)?\\([^/]+\\)" url)
@@ -324,16 +326,21 @@ nil なら常に再接続する。")
(cons 'host (match-string 2 proxy))
(cons 'file url)
(cons 'port (string-to-number (match-string 3 proxy)))
- (cons 'host2ch host2ch)))
- (string-match "https?://\\(?:[^@/]+@\\)?\\([^/:]+\\)\\(?::\\([0-9]+\\)\\)?\\(.*\\)" url)
+ (cons 'host2ch host2ch)
+ (cons 'rest (navi2ch-net-split-url-scheme-to-rest (match-string 1 proxy)))))
+ (string-match "\\(https?://\\)\\(?:[^@/]+@\\)?\\([^/:]+\\)\\(?::\\([0-9]+\\)\\)?\\(.*\\)" url)
(list
(cons 'user user)
(cons 'pass pass)
175sage
2023/07/15(土) 12:44:44.17 - (cons 'host (match-string 1 url))
- (cons 'port (string-to-number (or (match-string 2 url)
- "80")))
- (cons 'file (match-string 3 url))
- (cons 'host2ch host2ch)))))
+ (cons 'host (match-string 2 url))
+ (cons 'port
+ (if (match-string 3 url)
+ (string-to-number (match-string 3 url))
+ (if (string-prefix-p "https:" (match-string 1 url))
+ 443 80)))
+ (cons 'file (match-string 4 url))
+ (cons 'host2ch host2ch)
+ (cons 'rest (navi2ch-net-split-url-scheme-to-rest (match-string 1 url)))))))
(defun navi2ch-net-http-basic-credentials (user pass)
"USER と PASS から Basic 認証の証明書 (?) 部分を返す。"
@@ -999,7 +1006,7 @@ This is taken from RFC 2396.")
"BBS_\\(TITLE_PICTURE\\|FIGUREHEAD\\)=\\(.+\\)" content))
(setq src (match-string 2 content))
(let (url file)
- (setq url (if (string-match "http://" src)
+ (setq url (if (string-match "https?://" src)
src
(navi2ch-board-get-url board src)))
(string-match "/\\([^/]+\\)$" url)
- (cons 'port (string-to-number (or (match-string 2 url)
- "80")))
- (cons 'file (match-string 3 url))
- (cons 'host2ch host2ch)))))
+ (cons 'host (match-string 2 url))
+ (cons 'port
+ (if (match-string 3 url)
+ (string-to-number (match-string 3 url))
+ (if (string-prefix-p "https:" (match-string 1 url))
+ 443 80)))
+ (cons 'file (match-string 4 url))
+ (cons 'host2ch host2ch)
+ (cons 'rest (navi2ch-net-split-url-scheme-to-rest (match-string 1 url)))))))
(defun navi2ch-net-http-basic-credentials (user pass)
"USER と PASS から Basic 認証の証明書 (?) 部分を返す。"
@@ -999,7 +1006,7 @@ This is taken from RFC 2396.")
"BBS_\\(TITLE_PICTURE\\|FIGUREHEAD\\)=\\(.+\\)" content))
(setq src (match-string 2 content))
(let (url file)
- (setq url (if (string-match "http://" src)
+ (setq url (if (string-match "https?://" src)
src
(navi2ch-board-get-url board src)))
(string-match "/\\([^/]+\\)$" url)
176sage
2023/07/15(土) 12:50:19.62 なんかタブが潰れたり文字参照になってたりなので、gzip + base64
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
177sage
2023/07/15(土) 12:52:59.75 久々にROCK54で後半投稿できず
178sage
2023/07/15(土) 12:57:38.03 しょうがないのでpastebin
https://pastebin.com/0LMurnzK
https://pastebin.com/0LMurnzK
2023/07/15(土) 14:00:04.55
dクス
2023/07/16(日) 01:28:25.92
naota さんのやつにパッチ当てようとしたら結構リジェクトされた…。
181名無しさん@お腹いっぱい。
2023/07/16(日) 01:34:22.89 curl -s https://pastebin.com/raw/0LMurnzK | tr -d '\r' | patch -p1
でいけたサンクス
でいけたサンクス
182sage
2023/07/16(日) 12:10:11.67 navi2ch-5ch.elも修正してた
(defun navi2ch-5ch-html-to-dat ()
↓
(defun navi2ch-5ch-html-to-dat (&optional dummy)
(defun navi2ch-5ch-html-to-dat ()
↓
(defun navi2ch-5ch-html-to-dat (&optional dummy)
2023/07/16(日) 13:18:08.12
誰かパッチまとめて新しいレポジトリたてて(他力本願)
2023/07/16(日) 14:13:03.51
rest がローカル宣言されてないような気がする
185sage
2023/07/16(日) 19:16:05.21 板一覧をjsonで取得する事にした
navi2ch-5ch.elはdatの代わりにhtml取得してdatに変換するもののように思える。
datを直接取得が復活してのでいらなくなったはず(navi2ch-5chを使わないでも読めてる)
https://pastebin.com/d8fh3ghq
>>183
それはめんどい
>>184
サンクス、なおした
パッチに日本語部分も含まれてるのでコード変換が必要
↓でどーぞ
curl https://pastebin.com/raw/d8fh3ghq | iconv -f utf-8 -t iso-2022-jp |tr -d '\r' |patch -p1
navi2ch-5ch.elはdatの代わりにhtml取得してdatに変換するもののように思える。
datを直接取得が復活してのでいらなくなったはず(navi2ch-5chを使わないでも読めてる)
https://pastebin.com/d8fh3ghq
>>183
それはめんどい
>>184
サンクス、なおした
パッチに日本語部分も含まれてるのでコード変換が必要
↓でどーぞ
curl https://pastebin.com/raw/d8fh3ghq | iconv -f utf-8 -t iso-2022-jp |tr -d '\r' |patch -p1
2023/07/16(日) 19:16:32.38
Location: を解釈できないので、navi2ch-list-bbstable-url も設定しないといけないっぽい。
187sage
2023/07/16(日) 19:48:17.82 defconst navi2ch-list-bbstable-default-url
"https://menu.5ch.net/bbsmenu.json")
になってるから、そっちから読むはずだけど、navi2ch-list-bbstable-urlをカスタマイズしてhttps://menu.5ch.net/bbsmenu.htmlにしてない?
htmlからの読み込みは試してない、これから試してみる
"https://menu.5ch.net/bbsmenu.json")
になってるから、そっちから読むはずだけど、navi2ch-list-bbstable-urlをカスタマイズしてhttps://menu.5ch.net/bbsmenu.htmlにしてない?
htmlからの読み込みは試してない、これから試してみる
2023/07/16(日) 20:17:27.06
どれにどのパッチを当てたらいいのかわからなくなってきた\(^o^)/オワタ
189名無しさん@お腹いっぱい。
2023/07/16(日) 23:15:56.62 >>187
入れ違いで >>185 のパッチに対してのコメントになっちゃったけど、>>181 のパッチだけだと、
https://github.com/naota/navi2ch/blob/master/navi2ch-list.el#L96-L97
なので redirect を解釈できずにエラーになっちゃった。
入れ違いで >>185 のパッチに対してのコメントになっちゃったけど、>>181 のパッチだけだと、
https://github.com/naota/navi2ch/blob/master/navi2ch-list.el#L96-L97
なので redirect を解釈できずにエラーになっちゃった。
2023/07/17(月) 03:26:18.05
2023/07/17(月) 11:31:26.14
192名無しさん@お腹いっぱい。
2023/07/17(月) 19:16:56.86 久しぶりにnavi2chで2ch(5ch)が読めるようになりました。ありがとうございました。
193名無しさん@お腹いっぱい。
2023/07/21(金) 22:08:43.11 (setq navi2ch-open-network-stream-function 'navi2ch-open-network-stream-via-command)
(setq navi2ch-open-network-stream-command "nc %s %s")
するとうまく動かないのは何でだろうね。本当は ssh -D1080 で socks したいが、socks 外してもうまく動かない…。
(setq navi2ch-open-network-stream-command "nc %s %s")
するとうまく動かないのは何でだろうね。本当は ssh -D1080 で socks したいが、socks 外してもうまく動かない…。
2023/07/22(土) 15:17:30.60
Symbol' s function definition is void: json-parse-string
195名無しさん@お腹いっぱい。
2023/07/23(日) 10:21:33.59 json-parse-stringの存在確認も必要なのか…
ちょっとすぐにはパッチ作れ無いのでjson-parse-stringが使えない場合はbbsmenu.htmlを指定してオクレ
ちょっとすぐにはパッチ作れ無いのでjson-parse-stringが使えない場合はbbsmenu.htmlを指定してオクレ
196名無しさん@お腹いっぱい。
2023/07/23(日) 11:30:16.06197名無しさん@お腹いっぱい。
2023/07/23(日) 13:31:48.99 >>196
ダイナミックポートフォワーディングだと、いろんな接続先あっても毎回接続し直さなくて済むのよ。
ssh -fN -D1080 どっか
nc -x127.0.0.1:1080 -X5 5ch.net 80
GET / HTTP/1.0
でうまくコネクション切ってくれないのが原因ぽい気がするけど、cloudflare 側の問題かな…。
ダイナミックポートフォワーディングだと、いろんな接続先あっても毎回接続し直さなくて済むのよ。
ssh -fN -D1080 どっか
nc -x127.0.0.1:1080 -X5 5ch.net 80
GET / HTTP/1.0
でうまくコネクション切ってくれないのが原因ぽい気がするけど、cloudflare 側の問題かな…。
2023/07/23(日) 14:02:30.32
コネクション切れないのは nc の問題だった…。
https://github.com/larryhou/connect-proxy 入れて、
(setq navi2ch-open-network-stream-function 'navi2ch-open-network-stream-via-command)
(setq navi2ch-open-network-stream-command "connect -R remote -S 127.0.0.1:1080 %s %s")
でもだめで、
(defun navi2ch-net-send-request (url method &optional other-header content)
(message "Now connecting...")
(setq proc nil)
(unless (navi2ch-net-down-p host)
(condition-case nil
(setq proc (apply navi2ch-open-network-stream-function
navi2ch-net-connection-name buf host port rest)) ←このへんでエラーになっているっぽい。
(error (navi2ch-net-add-down-host host)))))
Error: Wrong number of arguments: (lambda (name buffer host service) (let ((command (cond ((stringp navi2ch-open-network-stream-command) (format navi2ch-open-network-stream-command host service)) ((functionp navi2ch-open-network-stream-command) (funcall navi2ch-open-network-stream-command host service))))) (apply #'start-process name buffer (if (stringp command) (list shell-file-name shell-command-switch command) command)))), 6
https://github.com/larryhou/connect-proxy 入れて、
(setq navi2ch-open-network-stream-function 'navi2ch-open-network-stream-via-command)
(setq navi2ch-open-network-stream-command "connect -R remote -S 127.0.0.1:1080 %s %s")
でもだめで、
(defun navi2ch-net-send-request (url method &optional other-header content)
(message "Now connecting...")
(setq proc nil)
(unless (navi2ch-net-down-p host)
(condition-case nil
(setq proc (apply navi2ch-open-network-stream-function
navi2ch-net-connection-name buf host port rest)) ←このへんでエラーになっているっぽい。
(error (navi2ch-net-add-down-host host)))))
Error: Wrong number of arguments: (lambda (name buffer host service) (let ((command (cond ((stringp navi2ch-open-network-stream-command) (format navi2ch-open-network-stream-command host service)) ((functionp navi2ch-open-network-stream-command) (funcall navi2ch-open-network-stream-command host service))))) (apply #'start-process name buffer (if (stringp command) (list shell-file-name shell-command-switch command) command)))), 6
2023/07/23(日) 14:10:57.27
最近の open-network-stream は TLS 対応なのね。やっとおっしゃっている意味がわかりました…。
2023/07/31(月) 02:31:03.96
ネイティブコンパイラがこけていることに気付いてハマってました。
https://pastebin.com/gWiBJv1i
>>185からの変更点
1 >>193 socks使う場合に対応
2 >>194 json-parse-stringがない場合のデフォルトをbbsmenu.htmlにした
3 バイトコンパイル、ネイティブコンパイルのコンパイルエラーの修正
* このパッチで修正されること
open-network-streamがTLS接続をサポートするようになり、tls-open-streamが利用できなくなっていたので、
httpsを積極的に利用する事にしました。(https:はhttps:のまま取得するように変更しました。
変数navi2ch-net-http-proxyや環境変数HTTP_PROXYでプロキシサーバーを使う方法は利用できません。
外部コマンドを使用してご利用ください。
ネイティブコンパイラのコンパイルエラーを回避するために、相当量の修正が必要でした。
(ネイティブコンパイラがエラー終了すると、ロードのたびにコンパイルしなおしているようだ)
SSL接続して、HTTP/1.0ではプロトコルエラーになるっぽいので、全部HTTP/1.1で接続します。
navi2ch-net-enable-http11はkeep-aliveを使用するフラグに変更になりました。(これを指定するとうまく動作しませんでした)
* 外部コマンドでの利用
navi2ch-open-network-stream-via-commandがコマンドを生成する際に、http:からダウンロードする場合は3番目の引数としてnilが渡されます。
socks4+ncatでの利用例(かなり強引) ncatはnmapの付属品です。
(setq navi2ch-open-network-stream-command
"unset ssl sslsw; host=\"%s\";port=\"%s\";ssl=\"%s\"; if [ ${ssl:-nil} != nil ]; then sslsw=\"--ssl\";fi; ncat --proxy localhost:1080 --proxy-type socks4 $sslsw $host $port")
(setq navi2ch-open-network-stream-function
#'navi2ch-open-network-stream-via-command)
この設定でスレの表示、書き込み、イメージの表情は軽くテストしました。
↓でどーぞ。patchの-lをつけないとリジェクトされます。
curl https://pastebin.com/raw/gWiBJv1i | iconv -f utf-8 -t iso-2022-jp |tr -d '\r' |patch -p1 -l
https://pastebin.com/gWiBJv1i
>>185からの変更点
1 >>193 socks使う場合に対応
2 >>194 json-parse-stringがない場合のデフォルトをbbsmenu.htmlにした
3 バイトコンパイル、ネイティブコンパイルのコンパイルエラーの修正
* このパッチで修正されること
open-network-streamがTLS接続をサポートするようになり、tls-open-streamが利用できなくなっていたので、
httpsを積極的に利用する事にしました。(https:はhttps:のまま取得するように変更しました。
変数navi2ch-net-http-proxyや環境変数HTTP_PROXYでプロキシサーバーを使う方法は利用できません。
外部コマンドを使用してご利用ください。
ネイティブコンパイラのコンパイルエラーを回避するために、相当量の修正が必要でした。
(ネイティブコンパイラがエラー終了すると、ロードのたびにコンパイルしなおしているようだ)
SSL接続して、HTTP/1.0ではプロトコルエラーになるっぽいので、全部HTTP/1.1で接続します。
navi2ch-net-enable-http11はkeep-aliveを使用するフラグに変更になりました。(これを指定するとうまく動作しませんでした)
* 外部コマンドでの利用
navi2ch-open-network-stream-via-commandがコマンドを生成する際に、http:からダウンロードする場合は3番目の引数としてnilが渡されます。
socks4+ncatでの利用例(かなり強引) ncatはnmapの付属品です。
(setq navi2ch-open-network-stream-command
"unset ssl sslsw; host=\"%s\";port=\"%s\";ssl=\"%s\"; if [ ${ssl:-nil} != nil ]; then sslsw=\"--ssl\";fi; ncat --proxy localhost:1080 --proxy-type socks4 $sslsw $host $port")
(setq navi2ch-open-network-stream-function
#'navi2ch-open-network-stream-via-command)
この設定でスレの表示、書き込み、イメージの表情は軽くテストしました。
↓でどーぞ。patchの-lをつけないとリジェクトされます。
curl https://pastebin.com/raw/gWiBJv1i | iconv -f utf-8 -t iso-2022-jp |tr -d '\r' |patch -p1 -l
2023/07/31(月) 02:33:43.99
イメージの表情は
↓
イメージの表示は
↓
イメージの表示は
2023/08/01(火) 01:49:02.11
2023/08/01(火) 02:07:28.87
204名無しさん@お腹いっぱい。
2023/08/01(火) 14:19:43.352023/08/01(火) 16:02:39.46
2023/08/04(金) 23:04:56.58
2023/08/05(土) 10:10:49.63
2023/08/05(土) 14:21:43.48
2023/09/29(金) 23:34:55.75
誰かいるかな?
いまスクリプト攻撃を回避するのに絵文字を使おうという方向になってるんだけど
Navi2chはSJISしか投稿できないでしょう
投稿のエンコードを行ってるファイルがどれか判る人いる?
山下の旧運営がエンコードでブラウザを弾いてきたときもここで詰まってしまった
2ちゃんねる専用ブラウザが重大?なHTTP/HTMLの規約違反をしているかもしれない
https://blog.3qe.us/entry/2013/12/09/031713
いまスクリプト攻撃を回避するのに絵文字を使おうという方向になってるんだけど
Navi2chはSJISしか投稿できないでしょう
投稿のエンコードを行ってるファイルがどれか判る人いる?
山下の旧運営がエンコードでブラウザを弾いてきたときもここで詰まってしまった
2ちゃんねる専用ブラウザが重大?なHTTP/HTMLの規約違反をしているかもしれない
https://blog.3qe.us/entry/2013/12/09/031713
2023/09/30(土) 00:01:09.85
>>209
投稿は navi2ch-multibbs.el 内の navi2ch-2ch-send-message
その中に
(coding-system (navi2ch-board-get-coding-system board))
とかあるから辿ればいいんじゃない?
投稿は navi2ch-multibbs.el 内の navi2ch-2ch-send-message
その中に
(coding-system (navi2ch-board-get-coding-system board))
とかあるから辿ればいいんじゃない?
2023/09/30(土) 09:19:15.21
2023/10/01(日) 00:44:11.53
なんか板一覧が盛大に文字化けして大量の「�」(実際は半角)が
これ多分 Unicode の U+FFFD だと思うんだけど、コーディング誤認識してる?
>>209 の件と関係あるんだろうか
あと俺環だったらスマソ
これ多分 Unicode の U+FFFD だと思うんだけど、コーディング誤認識してる?
>>209 の件と関係あるんだろうか
あと俺環だったらスマソ
213212
2023/10/01(日) 01:06:56.43 bbsmenu 読み直したら直ったわ
スレ汚しスマソ
スレ汚しスマソ
2023/10/01(日) 04:07:24.58
アンタ、どこ行ってんの?
2023/10/09(月) 18:14:00.27
>>209-210
の件、まだ途中だけど備忘録に
~/.navi2ch/init.el
;; navi2ch-board-get-coding-system @navi2ch-board.el
;; navi2ch-board-coding-system-alist @navi2ch-vars.el
(navi2ch-auto-modify
(setq navi2ch-board-coding-system-alist
'(("livegalileo" . "utf-8"))))
とするとコーディングが指定できるらしい
BOARD-IDはダブルクオート必須、CODING-SYSTEMは utf-8 だけでなくshift_jisも不可
EmacsはUnicode対応版で設定済みだけれどエラーになる
単に書式の問題かコーディングファイルを書き換える必要があるのかは調査中
の件、まだ途中だけど備忘録に
~/.navi2ch/init.el
;; navi2ch-board-get-coding-system @navi2ch-board.el
;; navi2ch-board-coding-system-alist @navi2ch-vars.el
(navi2ch-auto-modify
(setq navi2ch-board-coding-system-alist
'(("livegalileo" . "utf-8"))))
とするとコーディングが指定できるらしい
BOARD-IDはダブルクオート必須、CODING-SYSTEMは utf-8 だけでなくshift_jisも不可
EmacsはUnicode対応版で設定済みだけれどエラーになる
単に書式の問題かコーディングファイルを書き換える必要があるのかは調査中
2023/10/10(火) 21:11:20.40
CODING-SYSTEM のほうは文字列じゃなくてシンボルを設定するんだよ。
だからダブルクオートで括っちゃダメで、シングルクオートを前置しないといけない。
'shift_jis みたいに。
だからダブルクオートで括っちゃダメで、シングルクオートを前置しないといけない。
'shift_jis みたいに。
217216
2023/10/12(木) 05:01:25.69 ごめん、コードちゃんと見てなかった。
そのコードだともう外側でクオートしてるから、シンボルをクオートすると二重になっちゃう。
何も付けずに、単に shift_jis とか書かなきゃいけなかった。
そのコードだともう外側でクオートしてるから、シンボルをクオートすると二重になっちゃう。
何も付けずに、単に shift_jis とか書かなきゃいけなかった。
2023/10/15(日) 19:12:25.45
>>216
ありがとう
Unicodeを選択するとサマリーが全て文字化けする…
そもそも読むだけならUnicodee(絵文字)混交で読み込んでるしなぁ
送信だけ変更するには別の関数を探さないといけないのか
ありがとう
Unicodeを選択するとサマリーが全て文字化けする…
そもそも読むだけならUnicodee(絵文字)混交で読み込んでるしなぁ
送信だけ変更するには別の関数を探さないといけないのか
2023/10/17(火) 18:22:46.70
過去ログがなんか取得できなくなってない?
Prxy2chでウェブスクレイピングしようとしたら現行スレも取得できない
少し前まで現行スレはダイレクト接続、過去ログはPrxy2chと使い分けてたんだけど
ウェブブラウザでは見られるんだよね
スタンドアロン版html2dat(.exe)があればどうにかなるのに
Prxy2chでウェブスクレイピングしようとしたら現行スレも取得できない
少し前まで現行スレはダイレクト接続、過去ログはPrxy2chと使い分けてたんだけど
ウェブブラウザでは見られるんだよね
スタンドアロン版html2dat(.exe)があればどうにかなるのに
2023/10/18(水) 04:12:12.08
「DAT関連の設定」→「個別設定」→
「差分取得を許可する」
「スレッド途中でDAT落ちなら最終行に追加する」
を許可したら過去ログも読み込めた
こりゃまだまだproxy現役だな
「差分取得を許可する」
「スレッド途中でDAT落ちなら最終行に追加する」
を許可したら過去ログも読み込めた
こりゃまだまだproxy現役だな
2023/10/20(金) 20:08:41.97
特定の板やスレだけ過去ログを取得できない、あるいは取得しづらくなってる
http://greta.5ch.net/test/read.cgi/poverty/1697461053
ダメなスレは何度やってもdatが取得できない
HTTPヘッダーの環境変数を見て弾いていると思われ
https://en.wikipedia.org/wiki/List_of_HTTP_header_fields
回避策としてNavi2chに、本来無用な環境変数を与えてみた
これで失敗( not found )したことはない
~/.navi2ch/init.el
(defadvice navi2ch-net-send-request (around navi2ch-net-send-request-ad activate)
(or (assoc "User-Agent" other-header)
;; cf. https://en.wikipedia.org/wiki/List_of_HTTP_header_fields
(add-to-list 'other-header (cons "Accept-Encoding" "gzip, deflate"))
(add-to-list 'other-header (cons "Accept-Language" "Accept-Language: en-US"))
))
http://greta.5ch.net/test/read.cgi/poverty/1697461053
ダメなスレは何度やってもdatが取得できない
HTTPヘッダーの環境変数を見て弾いていると思われ
https://en.wikipedia.org/wiki/List_of_HTTP_header_fields
回避策としてNavi2chに、本来無用な環境変数を与えてみた
これで失敗( not found )したことはない
~/.navi2ch/init.el
(defadvice navi2ch-net-send-request (around navi2ch-net-send-request-ad activate)
(or (assoc "User-Agent" other-header)
;; cf. https://en.wikipedia.org/wiki/List_of_HTTP_header_fields
(add-to-list 'other-header (cons "Accept-Encoding" "gzip, deflate"))
(add-to-list 'other-header (cons "Accept-Language" "Accept-Language: en-US"))
))
2023/10/31(火) 00:37:08.18
2023/10/31(火) 07:02:32.55
絵文字は dat だと文字参照になってるのよね
だから普通に文字参照で投稿すればいいだけじゃないのかと
だから普通に文字参照で投稿すればいいだけじゃないのかと
224名無しさん@お腹いっぱい。
2023/11/01(水) 00:11:43.11 socks.elなるものがemacsに同梱されてたので、これを使うように改造中。
>>221
http://greta.5ch.net/test/read.cgi/poverty/1697461053
のdatを取得しようとすると、not foundだ
過去ログって、無課金で取得できるん?
VERBOSE GET /poverty/dat/1697461053.dat HTTP/1.1
VERBOSE MIME-Version: 1.0
VERBOSE Host: greta.5ch.net
VERBOSE Connection: close
VERBOSE User-Agent: Monazilla/1.00 Navi2ch
VERBOSE Accept-Language: en-US, ja
VERBOSE Accept-Encoding: gzip, deflate
INFO HTTP/1.1 404 Not Found
VERBOSE GET /poverty/kako/1697/16974/1697461053.dat.gz HTTP/1.1
VERBOSE MIME-Version: 1.0
VERBOSE Host: greta.5ch.net
VERBOSE Connection: close
VERBOSE User-Agent: Monazilla/1.00 Navi2ch
VERBOSE Accept-Language: en-US, ja
VERBOSE Accept-Encoding: gzip, deflate
INFO HTTP/1.1 404 Not Found
>>221
http://greta.5ch.net/test/read.cgi/poverty/1697461053
のdatを取得しようとすると、not foundだ
過去ログって、無課金で取得できるん?
VERBOSE GET /poverty/dat/1697461053.dat HTTP/1.1
VERBOSE MIME-Version: 1.0
VERBOSE Host: greta.5ch.net
VERBOSE Connection: close
VERBOSE User-Agent: Monazilla/1.00 Navi2ch
VERBOSE Accept-Language: en-US, ja
VERBOSE Accept-Encoding: gzip, deflate
INFO HTTP/1.1 404 Not Found
VERBOSE GET /poverty/kako/1697/16974/1697461053.dat.gz HTTP/1.1
VERBOSE MIME-Version: 1.0
VERBOSE Host: greta.5ch.net
VERBOSE Connection: close
VERBOSE User-Agent: Monazilla/1.00 Navi2ch
VERBOSE Accept-Language: en-US, ja
VERBOSE Accept-Encoding: gzip, deflate
INFO HTTP/1.1 404 Not Found
2023/11/01(水) 01:17:48.00
2023/11/08(水) 00:48:41.60
何か急に軽くなったような。一時的なもの?
2023/11/08(水) 12:50:01.06
ホント、軽いわ〜快適
2023/11/12(日) 00:17:16.30
パッチキットをpastebinに貼ろうとしたら、オメーのは攻撃的だからパブリックにはできねーとか言われた。んだもんで、paste.fo
* >>185からの変更点
** >>193 socks使う場合に対応
** >>194 json-parse-stringがない場合のデフォルトをbbsmenu.htmlにした
* >>200からの変更点
** socks直接サポート
** ビルドシステムをmesonに変更 meson,ninja,python, texinfoにパスを通しておいてください。
** 投稿時に、SJISにはない文字を数値文字参照に置換
** oysterから過去ログ取得
** 絵文字対応 SJISに無い文字は数値文字参照に置換します
** thumbnail改良(https:やimepicの増強などに対応)
** h抜きは使えません。
* ソースの取得 gitかzipのいずれかで取得
1 gitでclone
https://github.com/naota/navi2ch.git
2 zipを取得
https://github.com/naota/navi2ch/archive/refs/heads/master.zip
* パッチの適用
展開したソースのトップディレクトリにcdして以下のコマンドでパッチを適用します。
パッチに日本語部分も含まれてるのでコード変換が必要です。
curl -s -L https://paste.fo/raw/6d276a82fc52 | iconv -f utf-8 -t iso-2022-jp |tr -d '\r' |patch -p1 -l
* ビルド, インストール
meson setup builddir
meson compile -C builddir
meson install -C builddir
トップディレクトリのrel-note.txtにもう少し詳しい変更点があります。
* >>185からの変更点
** >>193 socks使う場合に対応
** >>194 json-parse-stringがない場合のデフォルトをbbsmenu.htmlにした
* >>200からの変更点
** socks直接サポート
** ビルドシステムをmesonに変更 meson,ninja,python, texinfoにパスを通しておいてください。
** 投稿時に、SJISにはない文字を数値文字参照に置換
** oysterから過去ログ取得
** 絵文字対応 SJISに無い文字は数値文字参照に置換します
** thumbnail改良(https:やimepicの増強などに対応)
** h抜きは使えません。
* ソースの取得 gitかzipのいずれかで取得
1 gitでclone
https://github.com/naota/navi2ch.git
2 zipを取得
https://github.com/naota/navi2ch/archive/refs/heads/master.zip
* パッチの適用
展開したソースのトップディレクトリにcdして以下のコマンドでパッチを適用します。
パッチに日本語部分も含まれてるのでコード変換が必要です。
curl -s -L https://paste.fo/raw/6d276a82fc52 | iconv -f utf-8 -t iso-2022-jp |tr -d '\r' |patch -p1 -l
* ビルド, インストール
meson setup builddir
meson compile -C builddir
meson install -C builddir
トップディレクトリのrel-note.txtにもう少し詳しい変更点があります。
2023/11/12(日) 00:23:42.51
autotools死ね死ね団に入団、h抜き死ね死ね団にも入団と書いたのが不味かったのだろうか
何回か試行錯誤したらアドレスでBANNされた
別のところ(past)はXXXを削除しろとか言われるし
.strip() かな? 削除したら動かねーんだよ
と言うわけで寛容なpaste.foに貼れた。rawじゃない方は
https://paste.fo/6d276a82fc52
何回か試行錯誤したらアドレスでBANNされた
別のところ(past)はXXXを削除しろとか言われるし
.strip() かな? 削除したら動かねーんだよ
と言うわけで寛容なpaste.foに貼れた。rawじゃない方は
https://paste.fo/6d276a82fc52
230名無しさん@お腹いっぱい。
2023/11/13(月) 03:52:06.87 meson初めて知った
何が変わったか実感することはないがとりあえず動いてる
何が変わったか実感することはないがとりあえず動いてる
2023/11/25(土) 16:01:52.44
>>223
参照文字のコードで🏺(メタ表記、&と#は本来半角)と投稿すると
🏺
に置換されてしまう
どれかのウェブブラウザで投稿できた気もするけど、試してみた範囲で同じ結果だった
これは投稿のコーディング選択だけで片付く問題じゃないね
参照文字のコードで🏺(メタ表記、&と#は本来半角)と投稿すると
🏺
に置換されてしまう
どれかのウェブブラウザで投稿できた気もするけど、試してみた範囲で同じ結果だった
これは投稿のコーディング選択だけで片付く問題じゃないね
2023/12/02(土) 20:26:20.25
🏺←かけるようにしたのを準備中
233名無しさん@お腹いっぱい。
2023/12/04(月) 22:30:41.63 パッチが大きくなったので、公開リポジトリを作った
* インストール
https://repo.or.cz/navi2ch.git
cloneして
meson setup builddir
meson compile -C builddir
meson install -C builddir
* autoload, infoの設定
.emacs.d/init.elに以下を追加
(load "~/.emacs.d/lisp/navi2ch/navi2ch-autoloads")
使い方(新規機能)
* socks
変数navi2ch-socks-serverにsocks5://[user[:password]@]hostname[:1080]の形式で指定
* 画像
画像URLっぽい文字列に上で、「,」でプレビュー
プレビューしたサムネイルの上でRETで閲覧(初回は外部/内部ビューアの選択)
内部ビューアを選択するとemacsの中でimage-modeで閲覧。Qで終了。
* 絵文字
CP932で表現できない文字は数値文字参照に置換する。つまり🏺と直に書けば良い。
* インストール
https://repo.or.cz/navi2ch.git
cloneして
meson setup builddir
meson compile -C builddir
meson install -C builddir
* autoload, infoの設定
.emacs.d/init.elに以下を追加
(load "~/.emacs.d/lisp/navi2ch/navi2ch-autoloads")
使い方(新規機能)
* socks
変数navi2ch-socks-serverにsocks5://[user[:password]@]hostname[:1080]の形式で指定
* 画像
画像URLっぽい文字列に上で、「,」でプレビュー
プレビューしたサムネイルの上でRETで閲覧(初回は外部/内部ビューアの選択)
内部ビューアを選択するとemacsの中でimage-modeで閲覧。Qで終了。
* 絵文字
CP932で表現できない文字は数値文字参照に置換する。つまり🏺と直に書けば良い。
234名無しさん@お腹いっぱい。
2023/12/07(木) 08:30:07.44 書き忘れていました
navi2ch-net-5chdat-downgrade-to-http
*non-nilかつnavi2ch-net-http-proxyがnon-nilの場合5chのdat取得の際は強制的にhttpでデータを取得する。
proxy2chのようなHTML -> dat変換を行うプロキシを使うときに指定します。
あと、昨晩サムネイルのバグを修正してpushしました。
内部ビューアの終了がQだと間違えてqを推した時にバッファが残ってしまうので、qで終了に変更。
navi2ch-net-5chdat-downgrade-to-http
*non-nilかつnavi2ch-net-http-proxyがnon-nilの場合5chのdat取得の際は強制的にhttpでデータを取得する。
proxy2chのようなHTML -> dat変換を行うプロキシを使うときに指定します。
あと、昨晩サムネイルのバグを修正してpushしました。
内部ビューアの終了がQだと間違えてqを推した時にバッファが残ってしまうので、qで終了に変更。
2023/12/13(水) 22:52:11.54
mesonというコンパイラは初めて知った
導入する余裕がない人向けに弥縫策
1) Detour2ch/Prxy2chを起動
2) 「通信」→「書き込み関連の設定をする」→「パラメータ」
「パラメータの置換を許可する」をチェック
Accept: text/html
Accept-Language: ja
Referer: http://www.5ch.net/
を追加
http://egg.5ch.net/test/read.cgi/software/1605104188/159
3) 「メイン」→
「読み込み」「書き込み」にチェック
522エラーが発生しないスレは、古いNavi2chでもログの取得が可能になる
プロキシを通した書き込みも「リファラが変です」エラーは出なくなる…はず
導入する余裕がない人向けに弥縫策
1) Detour2ch/Prxy2chを起動
2) 「通信」→「書き込み関連の設定をする」→「パラメータ」
「パラメータの置換を許可する」をチェック
Accept: text/html
Accept-Language: ja
Referer: http://www.5ch.net/
を追加
http://egg.5ch.net/test/read.cgi/software/1605104188/159
3) 「メイン」→
「読み込み」「書き込み」にチェック
522エラーが発生しないスレは、古いNavi2chでもログの取得が可能になる
プロキシを通した書き込みも「リファラが変です」エラーは出なくなる…はず
2023/12/14(木) 17:34:33.03
コンパイラっつーかビルドシステムな
重箱の隅だが
自分はむしろ弥縫策って言葉を初めて聞いたわ
英語で言うところの workaround ってことでいいのかな
重箱の隅だが
自分はむしろ弥縫策って言葉を初めて聞いたわ
英語で言うところの workaround ってことでいいのかな
237名無しさん@お腹いっぱい。
2023/12/17(日) 18:48:27.11 * 画像の扱いを改良しました。内部ビューアでレス内の画像を連続閲覧できます
プレビューしたサムネイルの上でRETで内部ビューアで閲覧
閲覧中のキーバインドは
"n" " " 次の画像
"p" "S-SPC"(shift space) 前の画像
"q" ビューアを閉じる
* BE iconを自動表示するようにしました。
具体的には変数navi2ch-thumbanil-show-automaticaly-prefixに設定した
プリフィックスを持つ画像のサムネイルを自動表示します。自動表示した
くない場合はこの変数をnilに設定してください。
* インストール
https://repo.or.cz/navi2ch.git
cloneして
meson setup builddir
meson compile -C builddir
meson install -C builddir
* autoload, infoの設定
.emacs.d/init.elに以下を追加
(load "~/.emacs.d/lisp/navi2ch/navi2ch-autoloads")
プレビューしたサムネイルの上でRETで内部ビューアで閲覧
閲覧中のキーバインドは
"n" " " 次の画像
"p" "S-SPC"(shift space) 前の画像
"q" ビューアを閉じる
* BE iconを自動表示するようにしました。
具体的には変数navi2ch-thumbanil-show-automaticaly-prefixに設定した
プリフィックスを持つ画像のサムネイルを自動表示します。自動表示した
くない場合はこの変数をnilに設定してください。
* インストール
https://repo.or.cz/navi2ch.git
cloneして
meson setup builddir
meson compile -C builddir
meson install -C builddir
* autoload, infoの設定
.emacs.d/init.elに以下を追加
(load "~/.emacs.d/lisp/navi2ch/navi2ch-autoloads")
2023/12/18(月) 13:10:06.30
久々navi2ch使ってる、ありがとう
できればmelpaにnavi5chとでも名前かえて上げるか
navi2chの元repoマージにしてほしい
できればmelpaにnavi5chとでも名前かえて上げるか
navi2chの元repoマージにしてほしい
2023/12/28(木) 23:07:24.21
昨日くらいからnavi2chから書けなくなりました
「投稿エラー: ERROR: あなたはこのスレッドにはもう書けません。🐙」
って出ます ブラウザやchmateからだと書けます
User Agentかな?と考えていろいろ変えていますが書けません
一昨日くらいまでは"Monazilla/1.00 (Ciisaa/1.43(A))"で書けていました
皆さんは書けますか?
「投稿エラー: ERROR: あなたはこのスレッドにはもう書けません。🐙」
って出ます ブラウザやchmateからだと書けます
User Agentかな?と考えていろいろ変えていますが書けません
一昨日くらいまでは"Monazilla/1.00 (Ciisaa/1.43(A))"で書けていました
皆さんは書けますか?
2023/12/28(木) 23:41:16.87
書けるな。
2023/12/28(木) 23:49:35.46
User-Agentは何にしていますか?
242240
2023/12/29(金) 09:26:13.12 User-Agentは違うけど今は書けなくなった。
2023/12/29(金) 11:50:37.67
それ!
244240
2023/12/29(金) 12:01:44.80 やっぱり書けるな。proxy2ch通してるけど。
"Monazilla/1.00 2chMate/0.8.10.153 Dalvik/2.1.0 (Linux; U; Android 12; SC-52B Build/SP1A.210812.016)"
"Monazilla/1.00 2chMate/0.8.10.153 Dalvik/2.1.0 (Linux; U; Android 12; SC-52B Build/SP1A.210812.016)"
245名無しさん@お腹いっぱい。
2023/12/29(金) 20:28:17.94 Traceback (most recent call last):
File "/usr/home/ore/navi2ch/scripts/default_options.py", line 12, in <module>
def find_emacs_in_path() -> pathlib.Path | None:
TypeError: unsupported operand type(s) for |: 'type' and 'NoneType'
Python力が低すぎて😥
File "/usr/home/ore/navi2ch/scripts/default_options.py", line 12, in <module>
def find_emacs_in_path() -> pathlib.Path | None:
TypeError: unsupported operand type(s) for |: 'type' and 'NoneType'
Python力が低すぎて😥
レスを投稿する
ニュース
- 中国国連大使「日本が中国に武力行使すると脅しをかけたのは初めて」 国連事務総長に書簡★5 [♪♪♪★]
- 高市首相告白「『なめられない服』を選ぶことに数時間を費やしました」「外交交渉でマウント取れる服、買わなくてはいかんかもなぁ」★4 [ぐれ★]
- 【🐼】パンダ、日本で会えなくなる? 中国との関係悪化で不安の声 ★2 [ぐれ★]
- 【芸能】44歳・池脇千鶴、激変ぶりにネット衝撃 「まるで別人…」「変化が凄い!!」の声 [冬月記者★]
- 竹中平蔵氏、万博は大成功だったと持論 批判していた人々にチクリ「反省の弁の一つも聞きたい」 [バイト歴50年★]
- 中国「国連安保理の許可なしに日本攻撃可能」 Xで旧敵国条項に言及… ★15 [BFU★]
- 男の子におちんちん入れながら撫でたりキスしたい
- 【速報】高市、今度はロシアに喧嘩を売る [329271814]
- 【📛専】とうふさんすこすこ😊👎スレッド【とうふゲームズ🏡】
- 【悲報】豆腐屋の息子ワイ、勝ち組すぎる模様www
- 【📛専】とうふさんすこすこ😊👎スレッド【とうふゲームズ🏡】
- (´・ω・`)🚪(*´ω`*)💤🚽
