したらばTOP ■掲示板に戻る■ 全部 1-100 最新50 | メール | |

テストその2

1名無しさん:2002/11/28(木) 00:05
テストその2

300 ◆/vmukiyuzw:2015/12/11(金) 22:12:09
>>299
> >>296さんご指摘ありがとうございます は
>>297さんの間違いでした。


>>298さん
> 原因は、GETレスポンスのヘッダ情報に最終更新日時の"Last-Modified"ヘッダが無いから。
> よって、GETリクエストのヘッダ情報に差分取得用の"Range"ヘッダが付加されないため、
> BeforeResponse()内の差分取得処理がスルーされる。

うーん、なんか違うような・・・
GETリクエストのRangeヘッダはわざわざ削除してるんですけど。
(htmlベースでは差分取得するのが難しいので全部取得して内部で差分を取る前提)
専ブラから送られたRangeヘッダは削除前にOnBeforeReqest()でoSessionオブジェクトに保存して
OnBeforeResponse()に引き継いでるので差分取得処理でスルーされることはないはずです。

あと、専ブラによっては差分取得時に取得済みのdatサイズの続きではなく
あえて-1をRangeリクエストするものがあります。
(返ってきたデータの先頭が改行でなければ破損ログとみなす判定のため)
私の知る限りではかちゅ〜しゃ、V2C、ギコナビ等がこの方式を取っていたと思います。
これらのブラウザでは新着レスがなくても304ではなく206が返るのが正常なレスポンスです。

お使いの専ブラではなにか不都合が出てるのでしょうか?
できたら専ブラの種類を教えていただきたく。

301298:2015/12/11(金) 23:13:04
>>300
使ってる専ブラは「禁断の壷」というWebベースのものです。

「GETリクエストに"Range"ヘッダを付加しない」のは専ブラ側の方です。
よって、OnBeforeReqest()での"Range"ヘッダ削除処理自体が行われません。
なので、必ずステータス=200で全件取得となってしまいます。

あと、304の件ですが、他の専ブラの仕様でそうなっているのは了解しました。

302 ◆/vmukiyuzw:2015/12/12(土) 00:16:26
>>301さん
「禁断の壺」ですか。
かつては2ch公式ブラウザと言われたものですね。
動作を確認しようと検索したのですが元々の配布サイトが消滅していて
(検索不足かもですか)今どこにあるのか確認できず。
Rangeヘッダを出力せずどうやって差分取得を行っていたのか・・・
現時点では確認しようがなくお手上げです。

303298:2015/12/12(土) 02:06:57
>>302
何かずっと誤解されてますが、
"Last-Modified"ヘッダがあれば、専ブラ側でその更新日時を元に"Range"ヘッダを付加して
差分取得を行います。
が、htmltodatByFiddlerでは"Last-Modified"ヘッダを付加して返してこないために、
専ブラが"Range"ヘッダを付加せず、結果差分取得が行われないのですよ。

304 ◆/vmukiyuzw:2015/12/12(土) 02:41:02
>>303
> "Last-Modified"ヘッダがあれば、専ブラ側でその更新日時を元に"Range"ヘッダを付加して
> 差分取得を行います。

それは「禁断の壺」独自の仕様では?
私の知ってる限りLast-ModifiedヘッダがなければRangeヘッダを返さないなんて専ブラは
聞いたことがありません。
それに、FiddlerのInspectorsタブ等で見ていただけるといいのですが
read.cgiからのレスポンスにLast-Modifiedヘッダはそもそも存在しません。
なので

> が、htmltodatByFiddlerでは"Last-Modified"ヘッダを付加して返してこないために、

そもそも付加しようがないと思います。

ですので、もし解決できるとするならご自分でLast-Modifiedを捏造して付加する
コードを書いていただくしかないのではないかと思います。
現時点で私には仕様が確認できないので何もできません。

305名無しさん:2015/12/12(土) 04:47:04
もしかして「壺」は更新の有無(Last-Modified)だけをまず確認して、それをもとに本丸の取得判定を行ってるのか?
昔のネット環境を考えればそういう挙動も理解できる
で、現在の2ch.netは更新の有無にかかわらず都度html生成するからLast-Modifiedは当てにならないんだなぁこれが

とりあえず、自分用に仕込んでたものだがOnBeforeResponse処理の適当なタイミングに以下を追記すればいいよ

// Last-Modifiedが空っぽの場合Dateを代入
if (!oSession.oResponse["Last-Modified"])
oSession.oResponse["Last-Modified"] = oSession.oResponse["Date"];

306298:2015/12/12(土) 11:21:31
>>304
過去にも、"Last-Modified"ヘッダについて遣り取りがあったみたいですね。
そこでは、、"Last-Modified"ヘッダは付けない方向との見解でしたので、
今回も同じ見解という事で、これで終わりにしたいと思います。

>>305
わざわざ、ご教示ありがとう御座います。
「禁断の壷」は、ローカル保存のDATに、"Last-Modified"ヘッダの更新日時を
保持しており、スレの新規取得時に、"Last-Modified"ヘッダの値も保存します。
で、DATに"Last-Modified"ヘッダの値が無いと本来の差分取得を行わずに、
新規取得と同様に全件取得を行う仕様のようです。

なお、"Last-Modified"ヘッダの値ですが、2chAPIの方の動作を確認しますと、
最終レスの日付情報と同じ値の様です。
でも、「禁断の壷」では"Date"ヘッダの値でも問題無く、"Last-Modified"ヘッダ
が付加されていれば、差分取得が行われるようになりました。

307 ◆/vmukiyuzw:2015/12/12(土) 21:23:28
>>306さん
>>251-254 あたりでのやりとりですね。つい最近なのにすっかり失念してました。

>>305さんはもしかしてその時ご意見下さった方かな?
フォローありがとうございます。
>>305のコードを取り入れて他の専ブラに影響が出ないかもう少し検証したいですが
問題なさそうであれば取り入れたいと考えています。

308名無しさん:2015/12/17(木) 23:50:03
read.cgi 05
まだ変わりそうだけどとりあえず消す
oBody.replace(/<div id="js--banners--thread" class="banner" style="width:100%;"><\/div>/,"")

read.cgi 06
httpsがhttpになってたのがhttpsになったので要再読み込み
関係ないけどブラウザでお絵描き表示されるのがssspだけに

309 ◆/vmukiyuzw:2015/12/18(金) 00:30:50
>>308さん ご指摘ありがとうございます。
修正しました。(ver 2.10)

read.cgi 05系の広告の入り方に変更があったので対応しました。
あと、ちょっと上で話が上がっていたLast-Modifiedヘッダについても
付加するようにしました。

> read.cgi 06
> httpsがhttpになってたのがhttpsになったので要再読み込み

なんか破損するスレがあるけど破損しないスレもあるのはなぜだろう
と思ってたらそういうことだったんですね。
これに関しては対応は難しそう・・・再読み込みしていただくしかないような。

310名無しさん:2015/12/21(月) 23:24:30
お疲れ様です
bbspinkでここ壊れてますになって気付いたんですが
FiddlerのTextviewを見るとレス数が1だけだとマッチせずに広告が残ってます
今は
bbspink read.cgi 05は>>290
2ch read.cgi 06は>>296
2ch read.cgi 05は>>308
を追加して消してます

311 ◆/vmukiyuzw:2015/12/22(火) 00:39:10
>>310さん ご指摘ありがとうございます。
修正しました(ver 2.11)

レス数が1だけだと広告除去の条件がうまく効いていませんでした。
レス数1だけのスレというのは板によっては結構出会うことが難しいんで
テスト不足でした。

312名無しさん:2015/12/22(火) 02:04:35
>>311
対応ありがとうございます

313名無しさん:2015/12/25(金) 21:12:13
> //oBody = oBody.replace(/<a href="http:\/\/jump\.2ch\.net.*?>(.*?)<\/a>/ig,"$1"); //これは必要か?後で検討

これを有効にしないとこのスレ(read.cgi 06)の>>1の一部(2ch外へのリンク等)が消えてしまうようです
http://potato.2ch.net/test/read.cgi/software/1422462757/

314 ◆/vmukiyuzw:2015/12/25(金) 23:52:25
>>313さん ご指摘ありがとうございます。
修正しました(ver 2.12)

ご指摘いただいた行(jump.2ch.netを外す)ではなく、その直下の
// レスアンカーに対するフルパスを相対パスに変換〜
のとこがよくなかったようです。
現状のread.cgi 06ではレスアンカーに対するパスはいつのまにか05同様相対パスになっているようなので
この変換処理は不要であると考えコメントアウトするようにしました。

315名無しさん:2015/12/26(土) 00:56:05
>>314
ありがとうございます

316名無しさん:2016/01/11(月) 17:24:30
以下のスレで指摘された新read.cgiのバグへの対応お願いします

専用ブラウザを助けるプロクシ作らね?15串目
http://potato.2ch.net/test/read.cgi/software/1448272459/809


以下のように修正したら上手く動きました
(?:<a href="mailto:(.*?)">)?

(?:<a href="mailto:(?:<a[^>]+>)?(.+?)(?:<\/a>)?">)?

317名無しさん:2016/01/11(月) 20:36:04
>>316の件ですがこの修正の仕方は決め打ち過ぎるので訂正します

以下のスレでいくつかのテストを重ねてみました
http://potato.2ch.net/test/read.cgi/software/1449192043/404-410

結果としてはdat形式への変換は元のまま、その前に名前・メール欄内だけ以下の変換を行なうことで問題がなくなりました

//名前・メール欄内の余計なAタグ除去(前処理)
oBody = oBody.replace(/(<b><a href="mailto:)(.+?)(<\/a><\/b>)/g, function(aStr, aTag1, aMailName, aTag2) {
var mailname = aMailName.replace(/<\/?a[^>]*?>/g, '');
return aTag1 + mailname + aTag2;
});

以上を踏まえ修正お願いします

318 ◆/vmukiyuzw:2016/01/11(月) 22:36:17
>>316-317さん ご指摘ありがとうございます。
htmltodatByFiddlerを修正しました(ver 2.13)

正直、>>316を読んだ直後には
「メール欄にURLとともににsageとか入力されたらどうなるんだろう」
「メール欄だけじゃなく名前欄にも影響ありそうな」
と懸念を抱きどうしたもんかと思ったのですが
>>317で検証いただいたようでありがたいです。

# 実はreplaceメソッドの引数にこういう形で関数を指定できるのを
# 知らなかったので勉強になりました

read.cgi 05系ではこの現象は発生しないことは確認したのですが
念のため05系、06系両方に適用するようにしてます。

319名無しさん:2016/01/11(月) 23:44:26
修正乙でした

320<削除>:<削除>
<削除>

321<削除>:<削除>
<削除>

322名無しさん:2016/03/10(木) 10:49:40
溶接工とか言う寿命削る仕事
http://bit.ly/1XshYYl

323名無しさん:2016/03/10(木) 17:57:41
>>320-322

324名無しさん:2016/03/15(火) 05:31:40
【絶望】ふらつくから病院行ってみたらwwwwwwwwwwww
http://bit.ly/1R5AiRC

325名無しさん:2016/03/26(土) 13:23:07
bbspink.com(2ch.netでも見た気がするが覚えてない)で最終レス末尾に広告枠が追加されたようなので

oBody = oBody.replace(/<\/div><\/div><\/div><div><div class="js--ad--bottom"[\s\S]*$/,"</div></div>\n");

バナー広告削除処理の辺りに入れてください
テストらしいテストはしてませんが……

326 ◆/vmukiyuzw:2016/03/26(土) 22:07:09
>>325さん ご指摘ありがとうございます。
htmltodatByFiddlerを修正しました(ver 2.14)

意味的にはほぼ同じなのですが以下のようにしました。

oBody = oBody.replace(/<\/div><div><div class="js--ad--bottom"[\s\S]*$/,"");

327名無しさん:2016/04/09(土) 09:52:53
【悲報】サメ映画、もはやなんでもあり【画像あり】
http://bit.ly/1R5A4tS

328名無しさん:2016/04/10(日) 19:38:57
彼女がディズニーランド行きたいって言うことで大喧嘩になった
http://bit.ly/1R5A6lu

329名無しさん:2016/04/20(水) 15:32:11
本当に出会える出会い系ランキング
ttp://bit.ly/1OgYRt7

330名無しさん:2016/05/08(日) 11:21:49
本当に出会える出会い系ランキング!
ttp://deai.erosoku.top/ranking/type2

331名無しさん:2017/03/07(火) 23:35:13
bbspinkのreadcgiが更新されたので対応願います
自分用に修正した点からヒントは

readcgi06の派生である
div構造からdl、dt、dd、span構造へ変更
レス1とレス2間に広告があるのは変わらないがsectionタグで解りやすくしてある
最終レスの広告はない
一部のclass名が変更されてる

というところでしょうか

332 ◆/vmukiyuzw:2017/03/08(水) 01:58:26
>>331さん ご指摘ありがとうございます。
htmltodatByFiddlerを修正しました(ver 2.15)

ちょっとやっつけ作業ぽいのですがとりあえずbbspinkでは動くと思います。
このread.cgiが2ch.netにも導入されるようだとまた考えないといけないかもしれません。

333名無しさん:2017/03/08(水) 14:55:47
>>332
更新どうもです
申し訳ないですが再修正を願います

beID周り処理が抜け落ちてます
ageレス時(だけかな?)の名前欄にfontタグが追加されていた
バナー削除の処理で若干ゴミが残る可能性があるので以下のようにするといいと思います
<\/section>.*?<\/div><\/div> → <\/section>.*?(?=<dl class="post")

334333:2017/03/08(水) 16:10:33
fontタグに関して

通常のageレスもしくは一部の★持ち(運営)のレス場合タグ付加
通常のageレスはcolor="green"、★持ちは個々人で違う色を指定してる

除去するのであれば前者のケースのみで

335 ◆/vmukiyuzw:2017/03/08(水) 18:16:48
>>333-334さん、ご指摘ありがとうございます。

まずbeID周りですが、beIDの入ったスレを私のほうで探すことができず
(bbspinkには疎いもので)、2ch.netのbeID周りと形式が同じかどうか
わからなかったので、入れてませんでした。
beIDが入ったスレ、および★持ちさんのレスが入ったスレのURLを
いくつか教えていただけると助かります。


あと多分もっと重大な問題として、(板によるかもしれませんが)
透明あぼーんが頻発するスレが散見され、(http://mercury.bbspink.com/hnews/等)
これがブラウザによってはスレが壊れる原因となっていると思われます。
(壊れないブラウザでもどのみちレス番がずれることになるので問題なのですが)

この問題は実は前から認識はしていたのですが結構大きな修正になってしまいそうなので
先送りにしてました。が、あまりレアケースでもなくなっているようなので
今回合わせて対応しようと思います。ちょっと時間かかるかもしれません。

336333:2017/03/08(水) 22:28:19
>>335
板だとここ
http://phoebe.bbspink.com/meow/
その中でも両方同時に確認できるのはこのスレですね
http://phoebe.bbspink.com/test/read.cgi/meow/1461076454/l25

このにゃあ板はpinkで一番エロくないおとなしい板で実験板も兼ねています

pinkでスレが壊れるのは仕方ないことですよ
自動あぼーんが機能してるんで宣伝レス等があればほどなく発動、「うふ〜ん」に置き換えられます
また2chより板が少ない分に削除人が動いてくれてます
なのであまり気にする必要ないかと思います

これまでのreadcgiならスレサイズが下部に記載されてたのでそれである程度あぼーん判定の補完ができたんですが

337 ◆/vmukiyuzw:2017/03/09(木) 00:01:25
htmltodatByFiddlerを修正しました(ver 2.16)

>>333さんにご指摘いただいた部分を修正しました。
また、透明あぼーんがあった場合にスレが壊れたりレス番がずれる
問題に対処しました。
(透明あぼーんがあった場合それを補う「透明あぼーん」レスが
追加されます。なので汎用ブラウザで見た時には存在しないレスが
表示されることになります)


>>333=336さん
いろいろご指摘・情報提供いただきありがとうございます。
bbspinkでスレが壊れる事情は多分仕方ないのでしょうが
>>335で挙げていただいたスレをAPIを使う専ブラで見るとレス番10や16が
「うふ〜ん」で表示されるのですが
新しいread.cgiが吐くHTMLだと透明あぼーんになってしまうようなのです。
(以前のread.cgiではどうだったのか知らないので新read.cgiでそうなったのか
どうかはわからないんですが)

ともあれ透明あぼーんがあるとdatデータの構造上専ブラではレス番がずれちゃう
状況はやはりまずいと思い、対応することにしました。

338名無しさん:2017/03/09(木) 00:55:12
>>337
更新お疲れ様です

透明あぼーんの件、こっちの理解不足でした
と同時に以前のreadcgiで自分でも対処しようとしたけど、結局放置してたのを思い出しましたf^_^;)

以前のものは透明あぼーんがある場合レス0番が存在してました
レス0がどういった内容だったかは覚えてませんが

339 ◆/vmukiyuzw:2017/03/12(日) 00:19:23
htmltodatByFiddlerを修正しました(ver 2.17)

>>338さんにご指摘を受けた「レス番0」の件ですが
一応認識はしていて、対策もしたつもりでいたんですが
http://potato.2ch.net/test/read.cgi/software/1488358985/51
で挙げられたスレを見てバグに気付きました。

レス番0は読み飛ばすようにしたのでこれで問題ないと思ったのですが
その前にレス1(これはレス番を見ていない単に最初のレス)に
スレタイを付加する処理を入れていたので
レス番0が存在した場合スレタイも消えてしまうというアホな事態になってしまってました。

スレタイを付加するタイミングを後にずらしたので多分問題解消したと思います。

340 ◆/vmukiyuzw:2017/03/25(土) 03:05:47
なんか差分取得で壊れるスレがあるなあと思ったら、
read.cgiが若干仕様変更された模様。
一応問題点はわかったのですが
今から修正するのは時間的にしんどいんで明日の夜やります。

341 ◆/vmukiyuzw:2017/03/25(土) 22:20:26
htmltodatByFiddlerを修正しました(ver 2.18)

read.cgiの仕様が若干変更され(今のところ2ch.netの06系だけのようですが)
BeアイコンやEmoticonやお絵描き機能の画像など、html上では <img src="〜"> で表される
(dat上では sssp://〜 となる)要素について、http: が省略されるようになったため
対応しました。

342 ◆/vmukiyuzw:2017/03/25(土) 22:28:24
>>341
おっとこのレスはブラウザによっては化けてしまうかも

> (dat上では sssp://〜 となる)要素について、
         ↑実際は半角

です。

343 ◆/vmukiyuzw:2017/04/09(日) 00:57:27
htmltodatByFiddler、と呼ぶのは長くて面倒になってきたので
勝手ながらこのスレでは今後 hBF と略して呼ぶことにします(鉛筆の濃さみたいですが^^;)

で、hBFを修正しました(ver 2.19)

・itest.2ch.net/xxx/〜 へのリクエストがあったら xxx.2ch.net/〜 に飛ばすよう修正
 (itest.bbspink.com についても同様)
・https://〜 へのリクエストがあった場合への対応

今回は OnBeforeResponse.txt だけでなく OnBeforeRequest.txt も更新してますのでご注意ください。
補足があるのですが長くなるかもなので次レス以降で。

344 ◆/vmukiyuzw:2017/04/09(日) 01:14:52
>>343 補足1
まずitestへのリクエストの変換ですが。
最近 itest.2ch.net へのリンクが貼られることが多くなってきたと思うのですが、
専ブラにとっては(というより itest 以外の全ての閲覧環境にとっては、かもしれませんが)
面倒だと思ったので、本来の 2ch.net のURLに変換するようにしてみました。

ただ一つ考慮事項として、専ブラの側で itest.2ch.net へのリクエストを
2ch.net へのリクエストとして認識してくれないと、このリクエストの変換は行われないです。
専ブラによっては「このURLは自分の仕事じゃない」と
汎用ブラウザ等に投げてしまうものもあるようです(となると当然hBFの処理も通らないので
どうしようもない)。

この話はいろいろ膨らむ要素がありそうですがとりあえずこの辺にしておきます。

345 ◆/vmukiyuzw:2017/04/09(日) 02:05:53
>>343 補足2
https: へのリクエストについてですが。

Fiddler自体は元から https: に対応しているのですが
現存する専ブラでは https://xxx.2ch.net/ 〜 のようなリクエストがあっても
プロキシに https: のまま投げてくるものはないようなので、
当面あまり意味はないです。
「もし対応したものが出てきたらこうしとかないとまずいかも」
という点を直しただけです。
今後対応してくるものもでてくるでしょうからそのときまた考えます。

346名無しさん:2017/04/10(月) 21:25:36
https対応は2ch鯖-Fiddler間で対応しないとマズイのでは?
現にegg鯖がhttpsがデフォになったし。

347 ◆/vmukiyuzw:2017/04/10(月) 23:45:43
>>346さん
すみません、「2ch鯖-Fiddler間で対応しないとマズイ」とはどういう意味ですかね?
もしかして「これからは https: がデフォになるから普通の http: での通信も https: にしないとマズイ」という意味?

>>345にもちょっと書いてますがFiddler自体は元から https: には対応してますし
専ブラではない別のクライアントで https: のリクエストをシミュレートして
「もし専ブラが https: へのリクエストを投げてきたら」も確認してます。
だが実際のところ https://xxx.2ch.net/test/read.cgi/ 〜 のリクエストを
そのままプロキシに投げてくる専ブラは私はまだお目にかかったことないので
それから考えようと思ってます。
そういうことではなくマズイと思われる点があればご指摘いただけるとありがたいです。

348名無しさん:2017/04/13(木) 16:16:30
>>347
2ch(CF)側がhttpsのみに対応した場合、httpしか対応してない専ブラが通信出来なく
なるかも知れないので、現在APIモード対応の串がやってる

専ブラ(http)<->(http)Fiddler(https)<->(https)2ch(CF)

という通信にも対応しておく必要がある。って意味です。

349 ◆/vmukiyuzw:2017/04/13(木) 23:30:40
>>348
なるほど、専ブラの対応に関わらず
Fiddler - 2ch 間のやり取りは今から https にしておいた方が良いということですね。
それは納得しました。

ただ、現在のところhBFでは read.cgi とのやり取りにしか介入してないのですが
> 2ch(CF)側がhttpsのみに対応した場合、
という状況を考えると、他にも bbs.cgi とか subject.txt とかとのやり取りも
考慮しないといけなくなるように思います。
この辺は今まであまり気にしていなかった部分なので、ちょっといろいろ
確認してみます。

350名無しさん:2017/04/15(土) 22:23:30
FiddlerのSSL対応のデフォはOS依存のようで
7以降は証明書生成にCertEnrollAPIとやらを利用出来るから何の問題もない
XPの場合はご存知かと思うが原則SHA1まで、SP3ならSHA256に一部対応してるそうだがFiddlerでは使えない
Vistaは分からないけど現状問題ないだろう
Fiddler拡張としてOpenSSL等利用するラッパー作ればいいらしいけど覚えることがたくさんだろうね

351 ◆/vmukiyuzw:2017/04/22(土) 07:27:29
https対応はまだのんびりでいいかと思ってたんですが
なんかread.cgiの変更があったようですね。まだ一部サーバのみ?
今日ちょっと用事が立て込んでるんで対応は遅くなるかもです。

352 ◆/vmukiyuzw:2017/04/22(土) 23:12:12
hBFを修正しました(ver 2.20)

 ・2chの一部のサーバでread.cgiがバージョンアップ(07.0.0)されたので対応

今のところagree鯖だけですかね?
対象の鯖で既得済みのログを更新しようとするとログ破損状態になる可能性があります。

353 ◆/vmukiyuzw:2017/04/23(日) 07:18:22
hBFを修正しました(ver 2.21)

前バージョンにバグがあり変換結果のdatにゴミが入ってしまっていました。
( read.cgi 07系のみ)
申し訳ありませんが差し替えてください。

354名無しさん:2017/04/23(日) 13:19:30
2.10だったのですがecho鯖へのアクセスで
(・∀・)ナンカエラーダッテ HTTP/1.1 404 Fiddledだったので
2.21にした所正常になりました。ありがとうございます

355名無しさん:2017/04/24(月) 08:02:52
ありがとうございます!

356名無しさん:2017/04/25(火) 23:10:00
取得済みのスレに新着があった場合や更新チェックした場合の新着レスが
スレを閉じると消えてしまうのですが何が原因か分かりませんか?
最初に読み込んだ所までは残ります。
2.21を入れてすぐはこのような症状はなかったと思うのですが
どうしてこうなったか見当がつきません。
無関係でしたらすみません。

357名無しさん:2017/04/26(水) 00:49:14
今日から?下のログに
(;゚Д゚)サイズが合わない・・・
と表示されるようになりましたね
でもレスは更新されてるからとりあえずおkかなw

358 ◆/vmukiyuzw:2017/04/26(水) 01:36:11
>>356さん、>>357さん
・どの板、どのスレで発生したのか(具体的なURL)
・どのブラウザ(できればバージョンも)で発生したのか
少なくともこの辺の情報がないと確認できないです。
問題なのかどうかすらわからないのでできれば詳細を再報告願います。

359357:2017/04/26(水) 01:52:19
URL制限あるぽいですね

360名無しさん:2017/04/26(水) 01:53:22
ブラウザ:JaneDoe View α ( build date: 1507130036 )
出る
http://mint.2ch.net/test/read.cgi/pav/1466221276/
http://echo.2ch.net/test/read.cgi/av/1492956696/
出ない
http://egg.2ch.net/test/read.cgi/jisaku/1487581901/
http://egg.2ch.net/test/read.cgi/smartphone/1492258777/

361名無しさん:2017/04/26(水) 01:55:12
>>360>>357です。
それほど大きな問題ではない(と思っている)ので時間がある時にでも・・・

362 ◆/vmukiyuzw:2017/04/26(水) 02:37:13
確かに read.cgi 07.0.0 の出力形式が微妙に変更されているようですね。
(わかりにくいから 07.0.1 とかにしろよ!と文句言いたいですが^^;)
>>360 の「出ない」のほうの2スレは 06系なので影響ないようです。

ちょっと時間も遅いので本格的にはもう少し確認・様子見の上で明日対応しますが
お急ぎの方は OnBeforeResponse.txt の 80行目(07系の後ろの不要な部分をカットしているところ)を

oBody = oBody.replace(/(<br>)?(<\/div><div class="push">)?<\/div><div class="pagestats">(.|\s)*$/,""); //後ろの不要な部分をカット

にして反映してください。

363357:2017/04/26(水) 02:50:02
>>362
反映した所正常になりました
遅くにありがとうございます

364 ◆/vmukiyuzw:2017/04/26(水) 02:50:19
>>362
あーこれ取り消します、正規表現のほうを変えないとダメだ

oBody = oBody.replace(/<div class="post".*?><div class="meta"><span class="number">(\d+).*?<\/span><span class="name"><b>(?:<a href="mailto:(.*?)">)?(.*?)(?:<\/a>)?<\/b><\/span><span class="date">(.*?)<\/span><\/div><div class="message"><span class="escaped">(.*?)<\/span><\/div><\/div><br>/ig,"$1<>$3<>$2<>$4<>$5<>\n");

眠いんであんま自信ないです・・・明日ちゃんとやります

365名無しさん:2017/04/26(水) 02:51:26
>>364
あら?w
はいゆっくりで大丈夫ですのでお休み下さい

366356:2017/04/26(水) 03:05:40
事情を説明しようと拙い文章をまとめていたのですが遅れてしまってすみません。
代わりに要点をまとめてくれた357さんにもお礼を言っておきます。
原因を特定していただけたようで助かりました。
急ぎでなくても問題ないので時間のあるときにお願いします。
本当にありがとうございました。

367 ◆/vmukiyuzw:2017/04/27(木) 00:00:05
hBFを修正しました(ver 2.22)

 ・read.cgi 07系に仕様変更があったので対応

>>357さんからご指摘があり>>364で暫定対応を考えたものの正式反映です。
内容としてはレスの間に<br>タグが入ることになったことへの対応だけです。
なんかいろんなところの情報見てるとかなり無理やりというか場当たり的?な
変更みたいですね。
read.cgi 07.0.0 についてはかなり不満の声も上がってるみたいなんで
まだまだ変更はあるかもしれませんね。

ところで>>356さんのご報告はこれとは別件のように最初感じたのですが
同じ原因ということで本当に良かったのでしょうか。

368356:2017/04/27(木) 01:19:12
うまく説明できるか分からないのですが。
昨日の症状は例えば700番までレスがついたスレを開いた後
更新して新着レスがあった場合に、スレを開いている間は新着が表示されますが
一度閉じて再度開くと新着部分が消えてしまうという現象でした。
(表示されるのは最初に取得した700番までということです。)
自分の使っているブラウザはJaneXeno 161205です。
すべての板ではなく特定の板でのみ起きることを後から気づいたのですが
どの板でおきるのか調べたり説明が難しかったりして報告が出遅れてしまいました。

2.22にしてから上記の現象は起こらなくなりましたので
同じ原因だったのだと思います。
対応していただきありがとうございました。

369 ◆/vmukiyuzw:2017/05/04(木) 02:57:35
read.cgi 07.0.1 が出てるようですね。例によってagree鯖で実験中?
汎ブラでの見た目はあんま変わらないようですが、レス番のゼロサプレスはやめたみたいですね。
hBFとして影響あるのはIDの前に </span><span class="uid"> が入るようになったとこくらいか。
もう少し調べてから対応します。もし他にお気づきの点があればご報告いただけると有り難いです。

370名無しさん:2017/05/04(木) 14:10:20
そこを事前に半角スペースに置き換えるだけで問題なさそう

371 ◆/vmukiyuzw:2017/05/04(木) 20:29:24
hBFを修正しました(ver 2.23)

 ・read.cgiがバージョンアップ(07.0.1)されたので対応

修正箇所は>>369で書いた追加されたタグの除去のみです。
また修正したのは OnBeforeResponse.txt のみです。OnBeforeRequest.txt は修正してませんので
ご自分でUA等修正されてる方は上書きしないようご注意ください。


今のread.cgi 07.0.1 にはまだいろいろ不具合あるようなので近いうちにまた修正されると思われます。
私の把握してるものでは

・IDの代わりにリモホが出る板(シベリア)で投稿日・IDが「NG NG」と表示される
・嫌儲で特定のBEの投稿日・IDが「NG NG」と表示される

うーむ・・・read.cgi修正してる人、頑張れ^^;

372 ◆/vmukiyuzw:2017/10/02(月) 05:44:29
5chてのはなんなんだ?
背景を知りたいとこですがとりあえず急ぎ対処が必要でしょうね。
今日中には何とかしたいな・・・。

373 ◆/vmukiyuzw:2017/10/02(月) 23:53:22
hBFを修正しました(ver 2.24)

一応 5ch.net への暫定対応ということになりますが本当に暫定でしかないです。
"2ch.net"とハードコーディングしていた部分を"[25]ch.net"として
どちらが来ても一応対応できるようにしただけです。

今後、読みも書きも 5ch.net に移っていくことになると思われるのですが
まだ現状では書き込みは 2ch.net に対してはできるようですし
読み込みはAPI経由では 2ch.net に対してもできるようです。
(read.cgi での 2ch.net の読み込みはもう無理みたいですが)

であれば、専ブラとしてはまだ 2ch.net にアクセスしてるつもりで
(板一覧はまだ 5ch.net に対応してないものを使う、Replace.str等で5chを2chに読み替える)
hBFとしては読み込みだけ 5ch.net にすり替える手が当面使えるかもしれません。
そのための処理をコメントにしてますが一行仕込んでます。
現状私はこの形でXenoで読み書きできるようにしました。

もう一つ、読み込みは 5ch.net に対して行うとしても
書き込みは 2ch.net に対して行うという手も当面使えるかもしれません。
JaneXenoとかはクッキーの問題で 5ch.net には書き込めないけど
2ch.net には書き込める(書き込むスレの実体は同じ)ことがあるようで
このための処理もコメントにしてますが一行仕込んでます。

いずれにせよ明日にでもはしごを外されても不思議はない状況かなと思います。
正直言うと専ブラ側で何らかの対処がないと今後厳しいかなと思います。
("2ch.net"をハードコーディングしてる部分は山ほどあるでしょうから)

374名無しさん:2017/10/03(火) 00:42:10
JaneDoe View α ( build date: 1507130036 )
の環境で2.24を試してみましたが、下記のログが出てNGでした
Doe Viewはさすがにもうダメかなぁ… 上手く出来てる人いるかな?

(・∀・∀・)
(・∀・)サテオシゴト ε三三(; ・∀・)鯖マデオツカイ
HTTP/1.1 302 Moved Temporarily
HTTP/1.1 302 Moved Temporarily
HTTP/1.1 302 Moved Temporarily
HTTP/1.1 302 Moved Temporarily
( ・∀・)(・∀・ )オツカイオワリ 三三3
(・∀・∀・)
(・∀・)ナンカエラーダッテ HTTP/1.1 302 Moved Temporarily
(・∀・)カンリョウ!!

375名無しさん:2017/10/03(火) 00:43:52
Fiddlerのログでは下記のように感じです

http://egg.2ch.net/test/read.cgi/jisaku/1487585295
http://egg.2ch.net/test/read.cgi/jisaku/1487585295
http://egg.2ch.net/test/read.cgi/jisaku/1487585295
http://egg.2ch.net/test/offlaw2.so?shiro=kuma&amp;bbs=jisaku&amp;key=1487585295&amp;sid=sid

376374:2017/10/03(火) 00:53:31
すいません、いつものようにお気に入りから開こうとしたのがまずかったです
ボード一覧取得URLを5chに変えて、板一覧の更新をして
それから新規に板とスレを取得に行ったらOKでした

作者さんありがとう

377名無しさん:2017/10/03(火) 21:34:06
すりかえ行のコメントを外したら2chのままで取得できてます
ありがとう

378 ◆/vmukiyuzw:2017/10/12(木) 21:42:07
5chのread.cgi 7系のバージョンが上がったようで
差分取得時にログ破損が発生するケースが出ているようです。
まだ詳しくは調査中ですが、とりあえず<title>タグでのスレタイトルの表現が
若干変わっているようなので、当面以下の様なのでしのげると思います。

//スレのタイトルを取得

このコメントを検索
その下の一行を

var title = oBody.match(/<title.*?>(.*?)\n?<\/title>/mi);

var title = oBody.match(/<title.*?>(.*?)\s*?<\/title>/mi);

に書き換える。

379名無しさん:2017/10/12(木) 22:27:05
しのげるようになりました㌧クス

380 ◆/vmukiyuzw:2017/10/14(土) 22:40:34
hBFを修正しました(ver 2.25)

今回は>>378の分の反映のみです。
なので自力で書き換えて対応済みの方は取り込む必要はないと思います。

381 ◆/vmukiyuzw:2018/02/13(火) 21:55:30
bbspink.com の一部鯖(今のとこmercuryのみ?)が 5ch.net の read.cgi 07系に変わったようですが

read.cgi ver 07.2.0 2018/01 Walang Kapalit ★
Cipher Simian ★

と独自のバージョンアップがされているようで、専ブラによってはログ破損するケースが出ているようです。
もう少しテストしてから修正版をリリースします。

382 ◆/vmukiyuzw:2018/02/14(水) 01:45:18
hBFを修正しました(ver 2.26)

 ・bbspinkのread.cgiがバージョンアップ(07.2.0)されたので対応
  (バナー広告の除去)

今回の修正はOnBeforeResponse.txtのみです。
影響は今のところ多分bbspinkのmercury鯖でログの取得がおかしい
ケースだけだと思われます。

なんか泥縄的対応でイマイチだなあというのはわかっているのですが
精進します。

383名無しさん:2018/02/15(木) 03:21:05
乙です
pink見てないので放置してますがw

384 ◆/vmukiyuzw:2018/04/01(日) 23:52:40
5chの一部鯖(今のとこagreeのみ?)で read.cgi のバージョンアップが行われたようです。

read.cgi ver 07.2.1 2018/04 Walang Kapalit ★
Cipher Simian ★

今のとこ影響あるのは、>>1 みたいなレスアンカーの前に付くアンカータグの内容が
<a href="../test/read.cgi/operate/1507551280/8" rel="noopener noreferrer" target="_blank" class="reply_link">
みたいに、最後に class="reply_link" の部分が追加された点のようです。
この class=ほにゃらら の部分はAPIで取得したdatには含まれないようなので
htmltodat変換の結果をできるだけ元datに近づけようと思うと対応すべきなんでしょうが
多分多くの専ブラでは表示上特に影響はないと思われるんです。
もちろんdatサイズは変わってきてしまうので、既得ログの差分取得をしようとすると
破損する可能性が高いのですが。

のでちょっと様子見。
もし対応が必要となれば、後処理の最後くらいで

oBody = oBody.replace(/(target="_blank") class="reply_link">/g,"$1>");

こんな感じのを入れてやればいいかな。

385名無しさん:2018/06/02(土) 14:54:17
Fiddler公式にLinux版Fiddlerがあるのですが、これに対応したhtmltodatbyFiddlerを作っていただけないでしょうか?
CustomRulesを見ると微妙にWindows版と違ってて、そのままhtmltodatbyFiddlerのソースを貼ってもスレが読めません。
ちなみに当方のLinux環境(Ubuntu18.04LTS使用)では、JaneXenoをWineで動かしています。

386 ◆/vmukiyuzw:2018/06/03(日) 00:23:24
>>385さん
これは「自分のところにLinux環境を作って検証しろ」という案件かと思って一瞬頭がくらっとなったのですが・・・

Linux版Fiddlerをダウンロードして見てみるとCustomRules.csはJScriptではなくC#で書かれてるようです。
スクリプトのコメントを見ると

//注:これはC#版のスクリプトで、WindowsおよびMonoで使用できます。
// Windows上でのみ使用できるJScript.NETスクリプトとは異なります。 使用するために
// MonoのJScript.NETスクリプトをC#で書き直す必要があります。

とあります。(googleの翻訳)
(Monoってのは.NET環境をWindows以外でも動かすためのものらしい)
C#はコンパイルして動かすだけじゃなく最近ではスクリプトとして動かすことができるようになった
らしいので、それが取り入れられたんですかね。
気づいてなかったんですが、Fiddlerのオプションにも、スクリプトをJScriptかC#かを選べるのが
いつの間にか追加されてますな。

ということで、これは「htmltodatByFiddlerをC#に移植する」という案件だと理解しました。
面白そうなのでやってみますが多分時間かかると思います。
C#はやったことないですがオブジェクトの扱い方とかそんなに変わらないかなと思いましたが
キモの正規表現の部分で互換性の問題とか出ないかなと少し気になったりします。

387名無しさん:2018/06/03(日) 21:45:49
>>386
ありがとうございます。

一応、当方の環境
Windows7 home 64bitにVmware Workstation14Playerインストールして
VmwareのゲストOSでUbuntu18.04LTSを使用。

その後、UbuntuにmonoとWine、Fiddler(Linux版)を入れて
$ mono Fiddler.exeでFiddler起動
$ wine Jane2ch.exeでJaneXeno起動
です。

FiddlerとJaneXenoは確実に動いてます。
(JaneXeneは文字化けするのでwinetricksっていうのインストールしないとだめらしいです。)

JaneXenoからプロクシ設定127.0.0.1:8888で確実にFiddlerを通してくれます。
ただ、FiddlerがCustomRules.csを読み込みません。
これがCustomRules.csを読み込んでいないのか、
そのまま.jsのhtmltodatbyFiddlerをコピペしたからなのかは私にはわかりません。)

時間は気にしませんのでよろしくお願いいたします。!
ご苦労おかけしまして申し訳ありません。

388 ◆/vmukiyuzw:2018/06/20(水) 01:10:18
C#への移植はほぼできたと思うのですが、テストが十分でない部分がいくつかあります。

元々最初作ったころ2chのread.cgiのバージョンが06系で、過去ログは05系という状況
だったと思うのですが、その後07系が現れたり、bbspinkの独自形式が現れたりして
4パターンに分岐していたのです。
でも現状、ライブな板は(5ch,bbspink含め)全て07系のようです(07系の中でも違いはあるので
注意は必要なのですが)。
過去ログを探そうとしてもほぼ05系です。06系、bbspinkの独自形式にはなかなか出会えないので
今のところ動くかどうかテストできてないのです。
でもまあ「テスト出来たら教えてください」とユーザさんに投げるのもどうかと思うし
まあ見つかってから考えるしかないか。

389名無しさん:2018/06/23(土) 19:47:17
>>388
お疲れ様です。
C#版の公開はいつになるでしょうか?
公開してくれると嬉しいです。
5chでも公開して欲しい人いるみたいですし、ぜひお願いいたします!

390 ◆/vmukiyuzw:2018/06/23(土) 21:19:46
>>389さん
ubuntu+monoの環境で最低限の動作確認くらいはしておきたいと思ったので
今日環境構築やってたんですが、まだ時間かかりそうなんで先にC#版出すことにします。
導入手順が若干変わります。その他にもいろいろあってう〜ん明日中にはなんとか。

391 ◆/vmukiyuzw:2018/06/24(日) 20:21:52
hBFをバージョンアップしました(ver 3.00)

 ・スクリプトを JScript.NET から C# に移植
 ・一部サーバでread.cgiがバージョンアップ(07.2.1)されたので対応
  (タグ、要素の追加)
 ・書き込みの処理を見直し

>>386からやってたC#版です。
上にも書いてますが導入手順が若干変わります。
readme.cs.txt に書いてますのでお読みください。
大雑把に言うと
・Fiddlerの設定でスクリプトをC#に切り替える必要がある
・スクリプト中に取り込むファイルが2つ増える
ということになります。

あと、今日の18:00頃に一旦新バージョンを公開したのですが
バージョンアップの手順をミスってテスト版を公開してしまいました。
20:00頃に正式版を公開しなおしたので、申し訳ないですが
それ以前にダウンロードされた方はダウンロードしなおして
差し替えてください。

392 ◆/vmukiyuzw:2018/07/01(日) 23:35:49
まあ今更感もあるのですが、動作確認してみたかったので>>387さんの情報を参考に
ほぼ同等の環境 Windows8.1にVmware+Ubuntu+Mono+Fiddler+hBF(+Wine+JaneXeno)
を作ってみました。
一番手こずったのはWineの文字化け対応ですかね。

で、肝心のFiddler+hBFの動作ですが。
読み込みに関しては特に問題なくWindows版と同様に動作するように感じました。
書き込みも試してみると、なぜか私の環境ではXeno自体がエラーで強制終了してしまう。
Fiddlerのログを見ると、書き込み自体はうまくいっているようなのですが、
書き込み後のリロード処理でレスポンスを受け取った時点?で何故かお亡くなりになる。
うーん、これはFiddler+hBFの問題からは離れるかもなのでどこまで踏み込んだものか...
時間を見つけて調べてみますが、何か情報をお持ちの方がいれば教えてください。

393名無しさん:2018/12/01(土) 19:57:08
5chのread.cgiがver0.7.2.3にアップしました
新たな広告がレス間に入りました (id="horizontalbanners○○")
AA用classの追加 (class="AA")
返信アンカー(レスポップアップ)用classの追加 (class="reply_link")

bbspink read.cgi(ver0.7.2.0)
新たな広告がレス間に入りました (id="announcement")

以上の対応お願いします

394 ◆/vmukiyuzw:2018/12/02(日) 02:19:31
>>393
すみません、その辺の問題はver 3.00(C#版)で解決できたと思っていたのです。
「新たな広告」問題は「広告をカットするのではなくマッチするものだけ抜き出す」ように変更して対応したし、
「AA用class」は>>391時点で判明していたんで対応していたつもりです。
「対応がうまくいってない」「JScript版じゃないと嫌だ」とかいう話ならまたご相談ください。

395名無しさん:2018/12/02(日) 11:24:02
JScript版からC#版3.00に移行してみましたが、
どのスレも取得しようとすると302 Moved Temporarilyになってしまいます。
Fiddlerはエラーを出していません。

396名無しさん:2018/12/02(日) 11:35:54
2chへの読み込みリクエストを5chへの〜
がコメントアウトされていたのが原因でした。
失礼しました。

397名無しさん:2018/12/02(日) 12:34:34
余談ですが、コメントアウトされている
『5chへの書き込みリクエストを2chへの書き込みリクエストに変換』
のところに謝りがあるようです(ダブルクオーテーションの不足)

398名無しさん:2018/12/02(日) 14:48:32
別人ですが何とか上手く行きました
今までは「Jscript.NET」で運用
<環境>
win10 pro 1709
.NET Framework 4.7.1
Fiddler v5.0.20182.28034 for .NET 4.6.1
JaneDoe View α ( build date: 1507130036 )

<貼り付ける時にやったことと気づいた点>
1.readme.txtに
 ・メソッド
  public static void OnBeforeResponse(Session oSession)
  の最後(次の public static 〜 に直近の } の上)に OnBeforeResponse.cs.txt を挿入
 と記載されているが、
  の最後(次の static void 〜 に直近の } の上)に OnBeforeResponse.cs.txt を挿入
 でした。
2.>>397さんが指摘してますが、以下修正
   oSession.url = oSession.url.replace(@".5ch\.(net)/,".2ch.$1");
   oSession.url = oSession.url.replace(@".5ch\.(net)",".2ch.$1");
3.>>396さんと同様に
   //2chへの読み込みリクエストを5chへの読み込みリクエストに変換 5ch対応の板一覧を使っていれば多分不要
   //oSession.url = oSession.url.replace(@".2ch\.(net)",".5ch.$1");
   //5chへの書き込みリクエストを2chへの書き込みリクエストに変換
   //oSession.url = oSession.url.replace(@".5ch\.(net)",".2ch.$1");
 この2行のコメントアウト//を削除
4.janeで以下エラーが出るけど、ログを削除すれば正常に動作(削除が面倒だけどw)
 ( ・∀・)(・∀・ )オツカイオワリ 三三3
 (・∀・∀・)
 (・∀・)ソンナニナガクナイッテ HTTP/1.1 416 Fiddled
 (・∀・)カンリョウ!!

作者さんありがとう

399 ◆/vmukiyuzw:2018/12/03(月) 01:09:20
>>397さん、>>398さん
ご指摘ありがとうございます。
指摘いただいた点(readmeの記述とOnBeforeRequestの記述)を修正し
アップしました。
バージョンUPというほどのものではないのでバージョン番号は3.00のままです。

>  public static void OnBeforeResponse(Session oSession)
>  の最後(次の public static 〜 に直近の } の上)に OnBeforeResponse.cs.txt を挿入
> と記載されているが、
>  の最後(次の static void 〜 に直近の } の上)に OnBeforeResponse.cs.txt を挿入
> でした。

これは私の思い込みで間違えました。申し訳ありませんでした。
「次の関数の開始の直前の」という意図で「次の public static 〜 に直近の」と書いたのですが
現状では次の関数の開始は
static void OnReturningError(Session oSession)
という行なのですが、ここはプログラム上はコメントになってる部分なんです。
( /* と */ で囲まれている)
自分の開発環境ではコメント部分は色が変わって表示されるので
脳内で無いもの扱いしてしまい、その後プログラム上有効になる
public static void Main()
を意図して「次の public static 〜 に直近の」と書きました。
でもこういう書き方をした以上、素直に読めばご指摘の通りなのです。

なんかバージョンアップのたびにこういうあれこれでご迷惑をおかけするのも
心苦しいので、更新をある程度自動化できないかといつも考えるんですが
単純な差分ツールとかでは難しそうで。何かいいアイデアあれば教えてください。


新着レスの表示


名前: E-mail(省略可)

※書き込む際の注意事項はこちら

※画像アップローダーはこちら

(画像を表示できるのは「画像リンクのサムネイル表示」がオンの掲示板に限ります)

掲示板管理者へ連絡 無料レンタル掲示板