04/11/30 18:33:19
>>171
URLリンク(info.2ch.net)
> monazilla.orgが、昨年末から更新されてないのですが、ここでまとめられたらいかがでしょうか? -- 2004-06-05 (土) 06:52:41
> 申し訳ございませんが、外部サイトのことをここでお話しするのは避けさせて頂きたいと思います。 -- まほら? 2004-06-17 (木) 23:50:16
こんなこと書かれてたんで少し怖いが、新規ページで(今から)少し書いてみる。
だめだったら誰かwiki立てて。
176:157
04/11/30 19:29:37
書いた。今日はここまで。
URLリンク(info.2ch.net)
でもコレ、サブページはどうやって書けばいいんだろ。
全部1ページにまとめてしまうしかないのかなぁ。
177:ま
04/11/30 22:54:36
>>175さん
それはあくまでも「全掲示板&案内」改定内のみのお話ですので、他のペー
ジに該当することではございません。ご安心くださいませ。
178:デフォルトの名無しさん
04/11/30 23:56:49
>>176
> でもコレ、サブページはどうやって書けばいいんだろ。
サブページも新規に作成してリンクを張るだけ
179:デフォルトの名無しさん
04/12/05 13:11:57
wiki更新してる?
180:デフォルトの名無しさん
04/12/07 06:29:57
もちろん立てたっきり放置です
181:デフォルトの名無しさん
04/12/07 12:15:44
せかしちゃいやん。。
休憩時間に書いてるだけなんで、だいたい週1ペースで。
今日の夕方か明日には、bbsmenuのページが書き終わる予定。
182:名無しさん@お腹いぱーい。
04/12/15 19:04:53
2004-12-02 (木) 18:20:43
URLリンク(info.2ch.net)
業者とみられる書き込みがあったので消しました。
//#comment にしておきました。
亀ですがURLリンク(info.2ch.net)にURLリンク(info.2ch.net)を加えさせていただきました。
183:名無しさん@お腹いぱーい。
04/12/27 01:28:52
URLリンク(info.2ch.net)
URLリンク(info.2ch.net)
お疲れ様です。
WikiNameですが、それぞれ↓のようにしてみてはいかがでしょうか。
monazilla_subject.txt%A4%CE%BB%C5%CD%CD
monazilla_bbsmenu.html%A4%CE%BB%C5%CD%CD
URLリンク(info.2ch.net)との関連性が強調できると思います。
またURLリンク(info.2ch.net)でもmonazillaの次にくることになるため探しやすくなるのではないでしょうか。
一例として
URLリンク(info.2ch.net)
URLリンク(info.2ch.net)
URLリンク(info.2ch.net)
URLリンク(info.2ch.net)
URLリンク(info.2ch.net)
URLリンク(info.2ch.net)
184:デフォルトの名無しさん
04/12/27 04:02:28
monazilla/なんとか~
のほうがいいよ。
改名は管理パスワードが必要だから頼まないといけないけど。
185:名無しさん@お腹いぱーい。
04/12/27 20:27:47
>>184
やってみたのですが
monazilla/subject.txtの仕様
monazilla%2Fsubject.txt%A4%CE%BB%C5%CD%CD
/→%2Fになって、ぱっと見”Fsubject.txt”ってなんじゃらほいみたいな感じになるので
>>183では”_”をいれてみました。あとは” . ”と” - ”と” ~ ”が使えるようです。
186:デフォルトの名無しさん
05/01/13 11:53:51
うーん、どうしようか。好みでは"-"を押しておくけど、
"."は拡張子と被るからやめたほうがいいかと。
monazilla.subject.txtとか。
ついでに、まちBBSほか、2ch以外も扱いはじめた時のために、
monazilla-2ch-subject.txtまで含めたほうがいいんじゃない?
monazilla/2ch/subject.txt
monazilla_2ch_subject.txt
monazilla:2ch:subject.txt
ここひと月で変更があったのって、IDの隣にBEが付いたのと、
subbbs.cgiが廃止になったのだけであってる?
187:デフォルトの名無しさん
05/01/13 13:06:02
過去ログのgz圧縮をやめたらしい
188: ◆ap/yuix/tw
05/01/16 18:22:47
dat取得の仕様
hoge.2ch.net鯖のhogehoge板のキーが1234567890のスレッド( URLリンク(hoge.2ch.net) )を取得する場合
(1)URLリンク(hoge.2ch.net)を取得
(2)URLリンク(hoge.2ch.net)を取得
(3)URLリンク(hoge.2ch.net)を取得
(4)●がある場合 offlaw.cgiを使用
(1)から(4)まで、302 Foundになるたびに次に進む
189:デフォルトの名無しさん
05/01/16 20:29:00
何の仕様?
独自?
公式?
190:デフォルトの名無しさん
05/01/16 21:02:07
この手の話で「公式」ってのは無いだろう。
「誰かが調べました」って感じ。
あってると思うが。
191:デフォルトの名無しさん
05/01/28 18:17:47
>188
たまに404の時もある、
192:デフォルトの名無しさん
05/02/18 07:08:53
保守
193:デフォルトの名無しさん
05/02/22 20:31:08
hoshu
194:デフォルトの名無しさん
05/02/28 21:29:02
URLリンク(find.2ch.net)スレリンク(tech板)
∧∧
/⌒ヽ) せっかく2,000円振り込んでモリタポをゲットしたのに
i三 ∪ 「そんなスレッド存在しないっす」かよ。
~三 |
(/~∪
三三
三三
三三
195:デフォルトの名無しさん
05/03/01 21:24:07
上司が来たとき用にIDE風なスキンきぼんぬ
196:デフォルトの名無しさん
05/03/01 21:57:26
>>194
monazilla Part 4
URLリンク(makimo.to)
197:デフォルトの名無しさん
05/03/14 02:22:24
ミ・д・ミほっしゅ
198:某47 ◆ap/yuix/tw
05/03/15 14:13:46
bbsmenuが移転しそうです。
199:某47 ◆ap/yuix/tw
05/03/15 14:14:18 t7W6uWKt BE:20524984-#
★★★ ひさびさにPV(ページビュー)当てクイズでも・・・ Part1
スレリンク(operate板:270番),279
270 その他 ★ [sage] 05/03/11(金) 16:50:40 ID:???0
うーむ、、、
URLリンク(www.ff.iij4u.or.jp)
URLリンク(www.ff.iij4u.or.jp)
これはどうしますかねぇ
www2等に移すしか常時観測はできないような気がするが
273 その他 ★ [sage] 05/03/11(金) 19:21:32 ID:???0
おっ 続々と、、、
bbsmenu.html と bbstable.html の件ですが、
www とかに移す方法が良いかと思うのですが?
いかがかな?
276 root▲ ★ [sage] 05/03/11(金) 21:07:05 ID:???0
>>273
変えると、影響範囲大きそうですね、、、。
2ちゃんねるビューワとか。
279 名前:その他 ★[sage] 投稿日:05/03/12 12:34:48 ID:???0
>変えると、影響範囲大きそうですね、、、。
>2ちゃんねるビューワとか。
変える機会かと、
wwwのサーバに menu.2ch.net とか作って
移転してもらおう !!
200:デフォルトの名無しさん
05/03/26 14:49:53
とまってるね
201:デフォルトの名無しさん
05/03/31 16:41:58
曜日欄についてのお話
スレリンク(operate板)l50
202:デフォルトの名無しさん
皇紀2665/04/01(金) 19:46:23
改悪が続いてるな。
203:デフォルトの名無しさん
int 2ch =05/04/01(金) 20:46:19
この日付は最低だな。
204:デフォルトの名無しさん
int 2ch =05/04/01(金) 23:02:41
真のプログラマならこのぐらいの仕様変更には耐えられるはず!!
205:デフォルトの名無しさん
int 2ch =05/04/01(金) 23:12:56
syntax errorってところが2chぽいな
206:デフォルトの名無しさん
05/04/03 16:03:23
こういう質問はここでいいのでしょうか。
dat落ちした直後だと subject.txt にはスレが載っていても、
datにアクセスするともうずっと人大杉になっているということがあるようなのですが、
その判定は、どうするのがいいのでしょうか。
送られてきた dat の中身の「もうずっと人大杉」の文字で判定するのでは
もし本当のスレにそう書いてあったらまずいので。
207:デフォルトの名無しさん
05/04/03 16:16:01
HTTPのステータスコードで判定
208:デフォルトの名無しさん
05/04/03 16:39:32
あ!そうか!
HTTP/1.1 200 OK
なら本当に取得ですね。
ありがとうございました。
209:デフォルトの名無しさん
05/06/05 17:20:03
保守
・・・する必要あるのだろうか
210:デフォルトの名無しさん
05/06/11 00:36:21
受け取ったクッキーをちゃんと返さないと書き込めなくなる模様
今まで2ちゃんねるが返すクッキーを独自処理してた人は注意
211:デフォルトの名無しさん
05/06/11 13:22:01
test
212:デフォルトの名無しさん
05/06/11 13:32:25
新しい仕様のテストするならこちら
URLリンク(dso.2ch.net)
213:デフォルトの名無しさん
05/06/12 06:41:07
p2ほか2chブラウザで表示される「スレの勢い」ってどうやって調べるのでしょうか。
subject.txt見ても分かりません。
214:デフォルトの名無しさん
05/06/12 06:55:51
スレID(1057329161とか)がUNIXTIMEだからスレの1の発言日時がわかる。
そこから現在までの差を出してやればいいんじゃね?
215:デフォルトの名無しさん
05/06/12 09:55:33
大体のブラウザの勢いは前回とのレス数差分だよ
216:c⌒っミ `Д)っφ囲 ◆CaKkuEV3EI
05/07/07 22:59:55 BE:5502375-##
スレリンク(operate板:917番)
monazilla
URLリンク(info.2ch.net)
凍結されることになりました。
編集される方はお手数ですが編集用ページを使って、
更新を上のスレで依頼してください。
参考
ページ編集の説明書
URLリンク(info.2ch.net)
217:デフォルトの名無しさん
05/07/13 10:54:53
一応保守
218:デフォルトの名無しさん
05/07/22 11:20:30
monazillaのページ落ちてない?
219:デフォルトの名無しさん
05/08/05 02:39:30
monazilla更新されてないけど
あれでいいのかなぁ?
220:デフォルトの名無しさん
05/08/06 18:37:07
monazillaの新管理人になりたいと名乗りを上げたらなれると思う。
とmumumu氏が言ってた気がする。
221:デフォルトの名無しさん
05/08/06 20:45:07
ソースきぼん
調味料ネタ禁止
222:デフォルトの名無しさん
05/08/06 23:18:53
>>221
URLリンク(www21.ocn.ne.jp)
223:デフォルトの名無しさん
05/08/07 01:59:52
はいはいようするに>>220の妄想なわけね
224:デフォルトの名無しさん
05/08/30 01:20:05
be板ってEUC-JPですけど、各板のエンコーディングって、どっかに情報ありましたっけ?
レスポンスヘッダのContentEncodingは空でした・・・orz
225:デフォルトの名無しさん
05/09/03 01:18:56
2ちゃんねる開発総合スレ落ちたな…
>>224
ないけどそれ以前の問題として
Content-Encodingは文字コードを指定するヘッダじゃない
226:224
05/09/03 21:36:15
すまん、圧縮時のエンコーディングだった。勉強不足。
227:デフォルトの名無しさん
05/10/12 18:22:59
TWebBrowserでwriteした後にスクロールさせようとしてます。
OleVariant(WebBrowser1.Document as IHTMLDocument2).Write(strs);
OleVariant(WebBrowser1.Document as IHTMLDocument2).body.scrollTop :=
OleVariant(WebBrowser1.Document as IHTMLDocument2).body.scrollHeight;
→反応しせずorz
OleVariant(WebBrowser1.Document as IHTMLDocument2).Write(MakeViewHtml);
OleVariant(WebBrowser1.Document as IHTMLDocument2).Close;
OleVariant(WebBrowser1.Document as IHTMLDocument2).body.scrollTop :=
OleVariant(WebBrowser1.Document as IHTMLDocument2).body.scrollHeight;
→途中までorz
後からスクロールさせることはできるんですが一括でやると上手くいかない。
専ブラは表示→スクロールをやってるけど
書き込みの終了を知らせるイベントか何かあるんでしょうか。
228: ◆8F.toutXYE
05/10/12 21:07:19
TWebBrowser.ReadyStateがREADYSTATE_COMPLETEになるまで待つといいようです。
こんな感じ↓
while ReadyState <> READYSTATE_COMPLETE do
Forms.Application.ProcessMessages;
TEmbeddedWbというフリーのコンポのソースが参考になります。
229:デフォルトの名無しさん
05/10/12 22:11:04
>>228
ありがとうございます。うまく動きました。
あと>>227で途中で止まるのは自分がHeightの解釈を間違えてるのか
html文の最後にアンカーつけてジャンプさせたら下までスクロールできました。
誤解するようなものつけてすいませんゞ
ついでにTEmbeddedWb使ってみるかな・・・
230:デフォルトの名無しさん
05/10/13 00:09:38
完成させるかどうかは別として、2chブラウザつくるのはいいトレーニング材料だと思いませんか。
231:デフォルトの名無しさん
05/10/13 04:23:31
思うよだから?
232:デフォルトの名無しさん
05/10/13 09:32:48
一息で
233:デフォルトの名無しさん
05/11/02 19:57:09
なんとなくカキコ
234:デフォルトの名無しさん
05/11/04 10:33:45
久しぶりにまともなメールが流れてきたな。
235:デフォルトの名無しさん
05/11/09 10:59:04
ちょっと教えてください。
perlでdatを読もうとしてるのですが、range指定をしても全部読んじゃいます。
どこが間違っているのでしょうか??
my $dat = "1131251940";
my $url = "URLリンク(ex10.2ch.net)" . $dat . ".dat";
my $date = "Tue, 08 Nov 2005 13:24:04 GMT";
my $browser = LWP::UserAgent->new();
my $response = $browser->get( $url,
'User-Agent' => 'Monazilla/1.00',
'Accept-Encoding' => 'gzip',
'If-Modified-Since' => $date,
'Range' => 'bytes=94749-',
'If-Range' => $date
);
die "\n$url を読み込めませんでした: ", $response->status_line unless $response->is_success();
236:デフォルトの名無しさん
05/11/09 14:18:58
セッションのログ取っとけよ
237:デフォルトの名無しさん
05/11/09 14:43:56
Accept-Encoding: gzip をはずす
238:デフォルトの名無しさん
05/11/09 15:23:06
>>236 セッションのログってどうやって取るんでしょうか?
>>237 それでもだめでした。。
普通に 200 OK が返ってきます。。
239:stream ◆ap/yuix/tw
05/11/09 16:01:56
>>235
If-Rangeの使い方が間違ってる
If-Rangeってのは、「もしこの時刻より後に更新されている場合は全体を、更新されてなければ部分をくれ」
って意味。
240:▲ ◆SANUKI/VII
05/11/09 16:42:12 BE:4077533-###
こんなところにもストリーム
241:235
05/11/09 19:25:22
>>239 そうだったのか!!
じゃぁ、過去に取得した後、更新された部分のみを取ろうとしたら、
方法はあるのでしょうか??
239さんの「」内の意味だと、If-Rangeには適当な過去を指定して、
Rangeに過去に取得済みのデータ長指定しておけば
取れそうな気がしないでもないが..
242:デフォルトの名無しさん
05/11/09 19:46:24
>>241 …んー、If-Range使わなきゃいいんじゃね?
243:stream ◆ap/yuix/tw
05/11/09 20:43:54
>>241
適当な過去を入れたら、必ず全体が返ってきますよ。適当な未来を入れればいいんだけど。
もっといいのは、If-Rangeを使わない。
If-Modified-Sinceだけでいい。
244:235
05/11/09 22:24:08
If-Range使わないと、
416 Requested Range Not Satisfiable at ... エラーに..
Range指定してる値がおかしいんでしょうか??
my $data = Compress::Zlib::memGunzip( $response->content );
この$dataのlengthとってるんですが。
それとも、更新部分のみ取得、さえする必要ないのでしょうか??
245:stream ◆ap/yuix/tw
05/11/09 22:58:48
Rangeが間違ってるか、If-Modified-Sinceが間違ってるか、どっちかだと思います。
このスレを読んだJane系ブラウザのヘッダです 参考にしてください
GET /tech/dat/1057329161.dat HTTP/1.1
If-Modified-Since: Wed, 09 Nov 2005 13:24:08 GMT
Host: pc8.2ch.net
Accept: text/html, */*
User-Agent: Monazilla/1.00 (JaneLovely/0.1.6)
Range: bytes=44831-
Connection: keep-alive
HTTP/1.1 304 Not Modified
Date: Wed, 09 Nov 2005 13:41:52 GMT
Server: Apache/2.0.53 (Unix) PHP/4.3.10 mod_ssl/2.0.53 OpenSSL/0.9.7d
Connection: close
ETag: "780f3e-af1f-cd950e00"
246:デフォルトの名無しさん
05/11/09 23:07:55
>>244
perlはよくわからんがレスポンスを展開したサイズってことか?
>>237 に有る通りgzipされてないレスポンスをもらえ。
gzipをAcceptしてるとRangeの扱いがgzipされた状態のバイト位置になるはず。
247:235
05/11/09 23:57:03
できた!!
>>246 >>245 サンキュ♪(o ̄∇ ̄)/
248:デフォルトの名無しさん
05/11/10 12:56:57
今の2chは転送量よりCPU負荷を気にしてると思う
だからgzipなんて要らないかと・・
249:stream ◆ap/yuix/tw
05/11/10 19:59:16
こっちは相手のこと考えずAccept-Encoding入れればいいじゃん
向こうが圧縮するかしないか決めれるんだし
250:デフォルトの名無しさん
05/11/10 20:28:48
それに●対応しようと思ったらAccept-Encoding送らないと
過去ログを返してもらえない
251:デフォルトの名無しさん
05/11/12 21:59:52
VBでgzipの解答の仕方がわからない・・・
ご存知の方いますか?
252:デフォルトの名無しさん
05/11/12 22:01:10
ただのZIPだから普通に解凍すればいいと思うよ
253:デフォルトの名無しさん
05/11/12 23:05:53
そうだったんですか、gzip.orgで色々みてたけどさっぱりだったんで困ってました。
Info-ZIPでzip32.dllがダウンロードできたので試してみます。
254:デフォルトの名無しさん
05/11/12 23:14:55
The gzip home page
URLリンク(www.gzip.org)
255:デフォルトの名無しさん
05/11/12 23:17:15
Can gunzip extract a .zip archive?
No. Use unzip instead. For Windows,
use PowerArchiver 6.1 or WiZ or 7-zip (freeware) or or Winzip (commercial).
256:デフォルトの名無しさん
05/11/12 23:24:39
URLリンク(www.zlib.net)
zlib Home Site
257:デフォルトの名無しさん
05/11/12 23:25:29
ZIP解凍できないですね・・・orz
>>255
その4つのどれかを使って解凍すれば良いんですね。
とりあえず7-zipを調べてみます、ありがとうございました。
258:デフォルトの名無しさん
05/11/12 23:41:11
だからWindowsのzipとは別物
259:デフォルトの名無しさん
05/11/12 23:44:44
ZIPはPhil Katz氏が考案・開発したファイル圧縮形式およびファイルフォーマット。
事実上の世界標準。
日本ではLHA(LZH)とシェアが拮抗しているが、
世界ではほとんどの圧縮アーカイブがこの形式を使っている。
オリジナルのソフトウェアはシェアウェアとして開発されているが、
ZIP形式を扱える多くのアプリケーションソフトウェアが開発され
ソースも一般に公開されているので、事実用フリーの形式と言える。
また、UNIX系で標準的に使われているGZIPは同じzlib
(Deflateアルゴリズム)を使う点は共通しているが、互換性は無い。
260:デフォルトの名無しさん
05/11/12 23:57:52
>>258>>259
Content-Encoding: gzip が返って来たら
URLリンク(www.zlib.net) で解凍の仕方を調べれば良いってことですか?
261:デフォルトの名無しさん
05/11/13 02:11:57
Live2ch(VB製)はtar32.dllを使ってるらしい
262:デフォルトの名無しさん
05/11/19 00:05:38
別にzlib1.dllを使えばいいとおもうが。
263:デフォルトの名無しさん
05/11/19 03:23:43
VBから簡単に使えるの?
264:デフォルトの名無しさん
05/11/19 09:44:24
ググれ無能
265:デフォルトの名無しさん
05/11/20 03:46:29
C/C++インターフェースしかないって遠まわしに言っただけなんだけど。
266:デフォルトの名無しさん
05/11/20 03:49:12
2ちゃんねるでは日本風の言い回しは通用しない
267:デフォルトの名無しさん
05/11/20 09:39:16
>>265
( ゚д゚)ポカーン
268:デフォルトの名無しさん
05/11/20 14:58:37
>>265
( ゚д゚)pokan
269:デフォルトの名無しさん
05/11/20 15:14:17
263 名前:デフォルトの名無しさん[sage] 投稿日:2005/11/19(土) 03:23:43
VBから簡単に使えるの?
265 名前:デフォルトの名無しさん[sage] 投稿日:2005/11/20(日) 03:46:29
C/C++インターフェースしかないって遠まわしに言っただけなんだけど。
270:デフォルトの名無しさん
05/11/20 15:26:57
ここは難しいインターネットですね
271:デフォルトの名無しさん
05/11/20 20:05:31
Win32APIはC用のインターフェースしかないけどVBで使えるじゃん?
と返せばいいんだろうか
272:デフォルトの名無しさん
05/11/24 21:39:38
やっとVBでgzipの解凍とレスの表示が出来るようになりました。
スタティックなzlib.libを作成して、それをdllでVBから呼びやすくしてます。
ストリームでの解凍には、対応してないけどgzip解凍のサンプルとして
見てみたい人とかいますか?
開発 VC++6.0, VB6.0
273:デフォルトの名無しさん
05/11/25 12:35:58
.NET 2.0ならデフォでgzip対応してるんだが
274:デフォルトの名無しさん
05/11/26 00:18:58
VS 2005はそうなんだ・・・
はやくダウンロードできるようにならないかな(日本語版ね)
VB.NETとか少しさわったけど、さっぱりだったんだよね・・・orz
275:デフォルトの名無しさん
05/11/26 20:51:05
触ってりゃそのうちわかるようになるさ
ガンガレ
276:デフォルトの名無しさん
05/11/30 19:45:15
Ajaxで2chブラウザ作ろうかと思ったけど、
JavaScriptだとファイルをローカルに保存できないから負荷軽減にならないよね(´・ω・`)
277:デフォルトの名無しさん
05/11/30 20:43:55
Cookieで頑張れ
278:デフォルトの名無しさん
05/12/01 00:24:34
>>272
なんかWinInetのInternetReadFileで受信したものだとzlibでうまく解凍できないから、一度保存してTAR32でやってる。
でもなんか遅いんだよねぇ…
といことで見てみたいなぁ。
279:デフォルトの名無しさん
05/12/01 00:34:48
>>276
ヒント:TiddlyWiki
280:デフォルトの名無しさん
05/12/01 00:38:02
まさか、VBってstdcallじゃないと呼べないとか、そんなこと無いでしょ?
だったら、普通にDLL版のzlibにオンメモリで渡すのが一番良いと思うけど。
281:デフォルトの名無しさん
05/12/02 01:42:19
>>278
進んでなくて読み込みしか、まだ出来ていません。
何かの役に立てば幸いです。
URLリンク(venus.aez.jp)
ブラウザ:VB6.0
zlib.lib:VC++6.0
zlib.dll:VC++6.0
282:デフォルトの名無しさん
05/12/02 01:45:47
>>279
ありがとう!
すごいねコレ
283:デフォルトの名無しさん
05/12/02 11:38:56
>281
おおおおお!!!
284:デフォルトの名無しさん
05/12/03 08:00:51
>>281
現バージョンは開発者的にも便利だw
生のdatや板一覧が見られるのは良い!
285:デフォルトの名無しさん
05/12/03 08:03:53
起動できん
286:デフォルトの名無しさん
05/12/03 08:58:18
VBランタイムがいる
287:デフォルトの名無しさん
05/12/03 10:57:29
>>281
このEXEで「1131884991.dat<>Win32API質問箱 Build37 (791)」を開くと
正常に解凍されません。
gzipの先頭に、「31 66 61 61 0D 0A : (1faa)」が付いてきます。
レス数が多いスレッドについてるような気がします。
ちなみに、上の文字を消すと解凍は出来ました。
1faaはどういった意味なんでしょうか?
288:デフォルトの名無しさん
05/12/03 11:05:34
ごめんなさい、わかりました。
gzipヘッダのCRC16ですね。
URLリンク(www.studyinghttp.net)
>FHCRC がセットされている場合、圧縮されたデータの直前に、gzip ヘッダについての
>CRC16 が存在する。 CRC16 は、それまでの gzip ヘッダの全てのバイトを含み、
>CRC16 を含まないものの CRC32 の下位 2 バイトから成る。 (中略)
289:デフォルトの名無しさん
05/12/03 12:49:54
>>288
1F 8B 08 00 00 00 00 00 00 03
FLG = 0x00なのでFHCRCビットは立って無いと思うんだが。。。
それに"1faa"は4バイトだし、0D 0Aがついてるから応答ヘッダの一部の様な気がする。
私も初心者なのでよく分からん。なんでこんなものがついてるんだろう?
290:デフォルトの名無しさん
05/12/03 14:06:45
chunkedのヘッダだろ
291:デフォルトの名無しさん
05/12/03 14:12:50
Transfer-Encoding: chunked
と関係してるっぽい?
292:デフォルトの名無しさん
05/12/03 14:14:07
>>290
被った。ごめん。
293:デフォルトの名無しさん
05/12/03 21:49:01
板一覧ってなんか解析しにくくない?
ガイドラインとか運営案内の中の板とか特に
294:デフォルトの名無しさん
05/12/03 23:30:04
>>289-291
Transfer-Encoding: chunked に対応できました。
あと、受信したデータを配列に格納するのが間違ってました。
VBで作った2chブラウザ(Readだけ)
URLリンク(venus.aez.jp)
chunkedの解析
"次のチャンクのサイズ"<CR><LF>
"チャンクデータ"<CR><LF>
"次のチャンクのサイズ"<CR><LF>
"チャンクデータ"<CR><LF>
(以下何回か繰り返し)
0x30<CR><LF>
その他のヘッダ(省略可能)<CR><LF>
295:278
05/12/07 00:55:32
なんとなく生のデータ?から板一覧のツリービュー、スレ一覧のリストビュー、スレッド内容を作るクラスを作ってみた。(VB6)
通信部分があれば簡単なブラウザが出来る。適当なコードでスマン。
URLリンク(strawberry.web-sv.com)
おぶじぇくと指向ってこうゆうことかな?
ここまでやるなら.NETの方がいいかな
296:デフォルトの名無しさん
05/12/07 10:54:30
こりゃどやって落とすんだ??
297:デフォルトの名無しさん
05/12/07 12:26:34
>>296
回線抜いて窓から
298:デフォルトの名無しさん
05/12/07 16:46:07
>>297の頭上なんだが、落としてもいいか?
299:デフォルトの名無しさん
05/12/07 17:15:59
リファラーがないと駄目みたい
300:278
05/12/07 22:15:04
落としにくいから上げなおした
URLリンク(www.geocities.jp)
301:デフォルトの名無しさん
05/12/08 13:00:31
>300 乙
せっかくだけど、なんだか落とせない。
あとで試せってことなのか。
大変かもしれないけど、時間があればでいいから、
要点まとめをWikiのほうにも書いてちょ。
URLリンク(info.2ch.net)
302:デフォルトの名無しさん
05/12/08 22:36:31
datファイルの名前って必ず数字?
int型にしようかstring型にしようか迷う・・・
303:デフォルトの名無しさん
05/12/08 22:41:26
一時期文字が含まれた板があったけど、撤廃された。
数字にする場合、特殊なスレッドが2^32を越えるキーを持っているので注意。
あと、互換板に0で始まる9桁のキーのものもある。
(桁増え時の対処の違い)
304:デフォルトの名無しさん
05/12/08 22:45:09
なるほど、スレッド924なんかは32bitだとあふれるねえ
9,240,000,000
互換板かあ…
stringにしようかなあ
305:デフォルトの名無しさん
05/12/09 00:23:18
>>304
ファイル名は素直に文字として扱ったほうが良いと思うよ。
この先どうなるかわからないんだし。
たいした手間じゃないっしょ?
306:デフォルトの名無しさん
05/12/09 00:27:27
16進数になったりしてな。
307:デフォルトの名無しさん
05/12/09 09:47:44
他の掲示板サポートを考えると String の方がいい。
308:逆噴射J ◆lW31l/VtQc
05/12/15 21:55:06
>>278
ひょっとして読み込みバッファにString型渡して無い? Unicodeに変換される時チャンクの切れ目のバイトが化ける事があるよ。
隠し関数のVarPtr関数でByte配列のポインタ渡すのが唯一の方法だと思う。
それと、VB6でZLIBを使う場合、URLリンク(www.winimage.com) からzlib.dllをダウソして使う方法もある。
C++に頼らなくてもzlib.dllをVB6から使ってストリーム展開もできるよ。
但し、inflateInit2_()はC/C++からヘッダファイルをインクルードして使えば引数2個で呼べるが、
プリプロセッサ命令で変換してるだけ。ホントは引数は4つ必要。
もし要望が有るなら、4年近く前にVB6で作ったGZIPストリーム展開クラスを俺のホムペにうぷしてもいいけど、
今からでも遅く無いから、VB.NETで作り直す事を強くお勧めしたい。
なぜならば、VB6はマルチスレッド処理ができない。
Win32APIを使えばVB6でマルチスレッド処理もできなくは無いけど、別スレッドの中ではVB6の組み込み関数は一切使えないと思って欲しい。
でも、2ちゃんブラウザともなれば、別スレッドで文字列処理をする必要がある。
つまり、別スレッドではByte配列をループで舐め回すような文字列処理になってしまう。
Cのstrcut()やsubstr()を自前で書くような話になる。
しかも、別スレッドのデバッグは困難極まる。
VB6のデバッガは一切使えないどころか、別スレッドがエラーで止まればVB6.exe自体が強制終了してしまう。
俺は4年近く前にVB6で2ちゃんブラウザを作っていたけど、マルチスレッド処理がどうしてもできなくて開発を中断してしまった。
上記のGZIPの処理とか、winsockを使って非同期ソケットでの通信とか、レス表示画面をウィンドウクラスの登録から始めたりとか…
Monazilla参加者のDelphi使いを「充実したクラスライブラリが有る言語ってうらやましいな~」って思いながら、
VB6のみで半年以上かけて作りこんだけど、結局マルチスレッドで挫折した。
VB6製2ちゃんブラウザはLive2chのみで、しかもソース非公開。
だから、一から十まで俺自身で作り上げた。でもダメだった…
だからあえて言わせて欲しい。Visual Basic 2005 Express Editionでやり直した方がいい。
309:逆噴射J ◆lW31l/VtQc
05/12/15 21:59:08
今確認したら、MSのサイトからダウソできるようになったようだ。
URLリンク(www.microsoft.com)
310:デフォルトの名無しさん
05/12/15 22:57:36
それなりに動くのができたらここでさらしてもいいですか?
311:デフォルトの名無しさん
05/12/15 23:26:05
てゆーか、是非そうすべき。
ぞぬもJaneもLive2chも、ここ見て作った人がここで発表して
感想とか聞きながら完成度あげてったでしょ。
すぐ専門スレに移ったけどさ。
312:委員長 ◆/DABoneCRY
05/12/16 01:06:00
宣伝するつもりぢゃないけど、私もA Boneを作る時
ここで質問して教えて貰いながら作りましたよ。
不遜な言い方になるけど、専用ブラウザ作りは結構難しいです。
でも、少しずつでもコツコツ続ければ、きっと誰かが使ってくれるし
期待もしてくれるし、協力もしてくれる。
>308
> だから、一から十まで俺自身で作り上げた。でもダメだった…
ずっとこのスレは見てるけど、こういう話が正直一番心が痛む。
VB製ブラウザも少ないけど、BCB製も少なかったから分かるんだけどね。
「かちゅ~しゃみたいに、前回の位置へスクロール」ってのがずっと出来なくて
2年間Web検索を続けたっけ、やっと実現出来たよ。
逆噴射氏もまたいつか、コードを引っ張り出したりして欲しいな。
313:デフォルトの名無しさん
05/12/16 05:17:01
じゃぁ今度晒してみるよ
314:デフォルトの名無しさん
05/12/16 10:13:26
.NET Framework2.0になって、GzipStreamが出来たのは、2chブラウザ開発にとってはかなり好都合
315:逆噴射J ◆lW31l/VtQc
05/12/16 21:27:41
URLリンク(kenmon.hp.infoseek.co.jp)
うぷしますた。
316:逆噴射J ◆lW31l/VtQc
05/12/16 21:29:14
あ、まちがえた。
こっち
URLリンク(kenmon.hp.infoseek.co.jp)
317:デフォルトの名無しさん
05/12/17 00:18:28
> トリップ生成クラス
期待
318:逆噴射J ◆lW31l/VtQc
05/12/17 00:28:24
>>317
うぷしますた。
319:デフォルトの名無しさん
05/12/17 00:52:30
GetChunk で止るね。
記憶違いだったら悪いけど、String変数には制御文字入らなかったような?
バイト配列で検索したほうが良いかも。
320:デフォルトの名無しさん
05/12/17 01:16:59
よーし俺もバリバリコード書くぞw
321:デフォルトの名無しさん
05/12/17 11:22:01
2chビューアでRangeGetって出来る?
322:逆噴射J ◆lW31l/VtQc
05/12/17 20:06:06
>>319
Stringには制御文字でもOK。
Byte配列じゃなくてStringにしたのは、InstrB()を使いたかったから。
落ちた原因は、gzipで帰ってきたデータを展開する前に文字列として扱おうとしてたから(w
んで、Accept-Encoding: gzipを削ってみて強引に動かしてみても、人大杉が帰って着て落ちてしまった…
何よりも、レス取得を逐次処理にしてるのに、チャンク→生dat→内部形式の変換に時間かかり過ぎてユーザーの入力を処理できてない。
DoEvents噛ませて処理させたいけど、ユーザーに画面スクロールさせられると、メインスレッドが描画命令で手一杯になる。
ソケットは非同期だけど、コールバック関数はメインスレッドで処理してるから、
ユーザー入力の対処に時間かかり過ぎると、非同期ソケットが返したチャンクを読み損ねる ( つДT)
ユーザーの入力を処理できない逐次読み込みなんか意味無いよ…
悲しいを通り越して情けない。
もう、作った本人でさえお手上げ。
VB6には2度と触る気にもなれないんで、.NETでやり直してます。
323:デフォルトの名無しさん
05/12/17 20:27:58
新たな2ちゃんねるブラウザの登場に期待age
324:デフォルトの名無しさん
05/12/17 20:33:13
一人1っこづつ作ろうぜ
325:デフォルトの名無しさん
05/12/18 00:33:16
え、俺も作るの?
326:デフォルトの名無しさん
05/12/18 18:13:02
Monazilla.orgはもう更新しないのだろうか。。。
327:逆噴射J ◆lW31l/VtQc
05/12/18 21:58:06
>>326
MonazillaのMLで、「復活させる為に案を出し合おうぜ」って話が先月に出たけど、1ヶ月間一切進展無し。
328:デフォルトの名無しさん
05/12/18 22:06:05
URLリンク(mac2ch.blog10.fc2.com)
ここみたいにすりゃいいと思うんだけど。
329:デフォルトの名無しさん
05/12/19 00:47:58
誰が更新をするかが問題ですね
330:デフォルトの名無しさん
05/12/19 01:38:54
wikiでいいんじゃね
331:デフォルトの名無しさん
05/12/19 12:53:16
比較表みるとDelphi製が多いねぇ
332:デフォルトの名無しさん
05/12/19 23:11:22
無料での開発ソフトってのが大きいんじゃない?
VS2005Expressも今なら無料でDL出来るし、
VB.NETなりC#なりで開発すれば割合が増えるかも?
でも、Janeが強いからな・・・JaneをVB.NETかC#で作ってみるかね?
VS2005の使い方にも言語の勉強にもなるだろうし、仕様考えなくて良いのが嬉しいw
333:デフォルトの名無しさん
05/12/20 00:04:59
.Netみたいな大きなランタイムの要る奴らはあんまり普及しそうにないなぁ。
334:デフォルトの名無しさん
05/12/20 01:29:21
ランタイムなしで、手軽に作れるってことを考えると
やっぱりDelphi?
C++以外でネイティブ出力できれば、ちょっとはVSにも流れるかな
335:逆噴射J ◆lW31l/VtQc
05/12/20 21:48:30
>>333
ランタイムをわざわざ配布しなければいけなかったのは、VB6の頃の話。
.NET FrameworkランタイムはWindows Updateで実質的に自動インストールされるよ。
だから、.NETプログラマはランタイムの配布を心配する必要は無いよ。
336:デフォルトの名無しさん
05/12/20 22:03:12
.NETはバージョン違うやつを共存できない
337:デフォルトの名無しさん
05/12/20 22:31:17
できますがなにか?
338:デフォルトの名無しさん
05/12/20 23:14:18
>>336は互換性が無いって言いたいんじゃね?
微妙に互換性があるか、VB6のランタイムもそうだったけど。
>>335
最近買ったUPDATEパッケージXP SP2には.NET1.1入ってなかった。
推奨の高速インスコでも入ってこない。
いまさら.NET1.1は入れたくないから.NET2.0でも入れるかな。
339:逆噴射J ◆lW31l/VtQc
05/12/20 23:32:17
板ツリーコントロールで必要だったから、iniファイルの読み書き処理書いたんだけど、
iniファイル読み書きクラス単品で欲しい人いる?需要ある?
340:逆噴射J ◆lW31l/VtQc
05/12/20 23:35:03
>>338
古い機能を切り捨てたがるのはMSの営業方針なのか…(;´Д`)
341:デフォルトの名無しさん
05/12/20 23:54:40
twintailがどれくらい人気あるのかな。
C#で作ってみるのも面白いかも。。。
342:逆噴射J ◆lW31l/VtQc
05/12/21 01:09:19
板ツリーコントロールできた。
感想キボンヌ。
343:デフォルトの名無しさん
05/12/21 01:39:31
.NETは基本的に2.0で作ったものは2.0、1.1で作ったものは1.1で動かさなきゃだめなんだが
「バージョン違うやつを共存できない」ではなく「共存させなくてはならない」
まあ、1.1で作ったソフトはたいてい2.0でも動くけど。
344:デフォルトの名無しさん
05/12/21 11:06:02
>339
今、まさに必要!
345:デフォルトの名無しさん
05/12/21 17:56:17
JaneLovelyの作者がC++でJaneを書き直すみたいなんでちょっと期待。
346:逆噴射J ◆lW31l/VtQc
05/12/21 20:47:40
>>344
(・∀・)つ URLリンク(kenmon.hp.infoseek.co.jp)
347:278
05/12/22 01:32:33
板ツリーは似たようなのが300にもあるよ(VB6だけど)
HDDアボンした… ソースを途中までだけど上げておいて良かった。
348:逆噴射J ◆lW31l/VtQc
05/12/22 19:59:13
subject.txt取ろうとしたら人大杉。
どんなリクエストヘッダなら取れるの・・・(;´Д`)
だれか教えて・・・
349:委員長 ◆/DABoneCRY
05/12/22 20:33:31
>348
subject.txt は特別なヘッダは不要だったはずですよ。
このプログラム板なら、URLリンク(pc8.2ch.net) で
取れますが、通常のブラウザでも表示されますから。
350:逆噴射J ◆lW31l/VtQc
05/12/22 20:45:20
>>349
た、ただ単にURL間違えてリクエスト出してただけでした・・・orz
吊ってきます・・・
351:デフォルトの名無しさん
05/12/23 12:46:15
ワロタw
352:デフォルトの名無しさん
05/12/27 02:05:04
URL間違えてもステータスコード200、人大杉返すのね…
353:デフォルトの名無しさん
05/12/27 08:29:39
>>352
どんなライブラリを使ってるのか知らんが
存在しないURLをリクエストすると、302が返ってきてそれでリダイレクトして200になる
そのライブラリは自動でリダイレクトする機能がついてるんじゃないか?
354:逆噴射J ◆lW31l/VtQc
05/12/27 12:28:42
>>353
どうやらWinInetAPIと.NETのWebRequestはリダイレクトされる模様。
WebClientもWebRequestのラッパーだから同じくリダイレクトされると思われ。
「Http専用Socketラッパークラス」みたいなのを作る方がいいかも。って言うか製作中。
いちいちHttpRequestHeaderクラスの各々のプロパティに値を代入するよりも、リクエストヘッダをベタ書きできる方がソースも見やすくなるだろうし。
355:stream ◆PNstream2s
05/12/27 12:39:15
.NETのHttpWebRequestなら、AllowAutoRedirectプロパティをfalseにしておけば大丈夫
356:逆噴射J ◆lW31l/VtQc
05/12/27 12:46:03
>>355
そんなプロパティがあったとは(汗
ふっ、認めたく無いものだな。自分自身の若さゆえの過ちというものを…(;´Д`)
357:352
05/12/27 13:51:33
㌧クス。
確かにWinInetAPI使ってた。
InternetOpenUrlにINTERNET_FLAG_NO_AUTO_REDIRECT指定して実行すればいいみたい。
358:デフォルトの名無しさん
05/12/30 00:43:03
ちょっと自分も晒してみます。
URLリンク(www.geocities.jp)
ソース
URLリンク(www.geocities.jp)
C# / .NET 1.1 です。
画面を見ればわかりますが、かなり OpenJane を意識しています。
ここがおかしい!とか言ってもらえるとうれしいです
359:デフォルトの名無しさん
05/12/30 11:31:54
早速つかってみました。
.NET1.1いれるの面倒なんで、2.0で動かしてます。
とりあえず動いてます。
OpenJaneライクで操作はしやすいですね。
板の絵がでるのが素敵w
あとは操作性の問題でしょう。
1.1入れてないから、この動きが正しいかどうかはわかりませんが。
こんなの作りました!とブラウザ比較のとこで晒すなりして評価をもらってください。
ここでもらえる評価は、この関数がおかしい!って評価でしょうから。
360:デフォルトの名無しさん
05/12/30 13:05:41
ありがとうございます!
自分も普段は2.0上で使ってます。
動きが変なのは、未実装な部分が大量にあるのでその部分かな
まだ常用できるレベルに達してないので、もうしばらくひっそりと作り込んでみます。
361:デフォルトの名無しさん
05/12/30 13:18:55
あと起動速度にはこだわってみたんですがどうですか?
別スレッドに初期化処理やらせてみたりしたんですがあまり意味ないのかな・・・
> ここでもらえる評価は、この関数がおかしい!って評価でしょうから。
自分的にはこっちの方が興味あったりw
362:逆噴射J ◆lW31l/VtQc
05/12/30 19:45:45
>>358
自分も2.0で動作確認。
板の看板表示がクールでいい感じですね。
トリップのプレビューには拙作のトリップ生成クラスを是非(w
363:デフォルトの名無しさん
05/12/30 21:00:30
スレ一覧が表示できねぇorz
XPSP2 + 1.1
364:デフォルトの名無しさん
05/12/30 22:22:43
2000+1.1だけど、スレ一覧取得しようとすると実行時エラーが出る。
365:逆噴射J ◆lW31l/VtQc
05/12/30 23:21:57
2.0では動くが1.1では実行時エラー?
「知らず知らず2.0の機能を使っちゃった」と仮定するなら1.1で動かないのは納得いくが、1.1のコンパイラでコンパイルが通るはずが無いし…
なんでやねん(;´Д`)
366:委員長 ◆/DABoneCRY
05/12/31 00:34:47
スレッド一覧は私も表示出来ないですね。
板一覧ツリーからクリックして、スレッド一覧にタブは出来るのだけど
中は空欄のままで、何と閉じて開いてを繰り返しても同じ。
タブに板名は出る。
そのままタブをダブルクリックすれば、表示されるのですけどね。
仕様というか、開発段階で、未完段階だからかなぁとも思ったのですけど
そう考えるにはちょっと不自然ですし、バグっぽいかなと。
Win2000 + .NETバージョンってどこで見るんだ?(Winアップデートで素直にUPしてます)
367:デフォルトの名無しさん
05/12/31 01:17:50
javascript:alert(navigator.userAgent)
とIEのアドレスバーに
368:358
05/12/31 14:59:02
なんかまともに動いてないみたいですね・・・orz
正月はちょっと忙しいですが適当に調べてみます。
自分が意図してる動きを書いておきます。
1.板一覧取得
2.板一覧から板をクリック
3.タブが出現し、中身はまだ空
4.右上の「更新」ボタンorタブをダブルクリック
5.スレ一覧が表示される
一度スレ一覧を取得しCacheフォルダにファイルができた後は
板一覧からクリックしただけでキャッシュされているスレ一覧が表示されます。
369:委員長 ◆/DABoneCRY
05/12/31 15:06:52
>368
あ、意図した動きだったのね、失礼。
この意図なら、問題なく動いてました。
370:デフォルトの名無しさん
05/12/31 15:15:15
意図的な作りだとしたら最悪なUIだな・・・w
371:358
05/12/31 15:38:39
あと、まちBBSなどはまだ対応してないです。
>>362
ぜひ使わせていただきます!!
>>369
すいませんわかりにくくて・・・
わかりにくいと言うことは仕様に問題があるってことなので、なおします
372:委員長 ◆/DABoneCRY
05/12/31 16:15:57
>371
> わかりにくいと言うことは仕様に問題があるってことなので、なおします
え?
板一覧をクリックでタブが出来て、中は空というのは、開発途中のための
確認のために用意されたワンクッションではなかったの?
タブ等と作成ロジックとDLや描画処理を個別に検証するためだと思ってました。
私の考えが正解とは限らないとか、製作者の自由ですよとか、儀礼的なことは
置いておいて、スレッド一覧に表示されるまでに2アクション必要が正式な仕様だとすると
ちょっとその意図が見えない気がします。
タブだけ作成されて中身がない状態に、ユーザーに与えるメリットが見えてこないと言うか。
私がここまで口出しするのはどうかと思って話しませんでしたが、
全体的には良く出来ていますし、おっしゃる通り、Jane系のインターフェースで
分かりやすくはなっています。
ただ、このままでは、このソフトの存在意義が見えてこない面が気になりました。
ぶっちゃけて言えば「Janeで良いんぢゃないの?」という感じです。
このソフトの求める路線みたいな物が欲しいなと感じました。
そういう面では、ツリーをポイントした時に看板画像がポップアップされるのは
良かったと思います。(パクろうかと思った(^-^; )
画像ポップアップのフェードイン処理もカッコ良かったので、こういう方向で
伸ばしていくのも一つの方法かもしれないですね。
偉そうなレスですが、何かの参考になれば。
373:委員長 ◆/DABoneCRY
05/12/31 16:17:15
>372
×タブ等と作成ロジックとDLや描画処理を個別に検証するためだと思ってました。
〇タブ等の作成ロジックとDLや描画処理を個別に検証するためだと思ってました。
374:デフォルトの名無しさん
05/12/31 16:34:28
>372
その読みづらい文を何とかしてくれ。
375:358 あけおめ
06/01/01 02:43:19
>>372
板の開き方については、自分のJaneの使い方に合わせた感じです。
(あまり深く考えてなかった)
> このソフトの求める路線
この辺は大丈夫なんじゃないかと思ってます。色々やってみたいことがあるので。
わざわざ新しく作るのに今あるものと同じもの作っても意味ないですもんね^^
ただ今のバージョンは「特色ねぇなぁ」と思ってたので、ドキっとしました
> 看板画像 画像ポップアップ
この辺は自分の持ってる方向性みたいなものですね。まだこれだけしかないですが。
こういう部分は書いてて楽しいので、楽しみながらまたーりと続けられたらなぁと。
モチベーションも保てるし。
376:デフォルトの名無しさん
06/01/01 23:42:21
>>352の看板ポップアップは面白いね。
今のJaneに組み込みたいけど、Delphiは使えねぇ・・・
C++作のOpenJaneほしい~!
377:逆噴射J
06/01/01 23:43:57
書き込みてすと送信。
378:逆噴射J ◆lW31l/VtQc
06/01/02 00:05:56
看板ポップアップが流行しそうや予感。
>>358
俺もパクッていいですか?
379:358
06/01/02 12:08:52
パクッってかまわないですよ ^^
自分もいろんなものを参考にして作ってるので・・・
380:逆噴射J
06/01/03 23:07:24
書き込みてすと送信。
381:逆噴射J
06/01/03 23:15:46
書き込みてすと送信。
382:逆噴射J ◆lW31l/VtQc
06/01/03 23:17:20
失礼。間違えて送信してしまいました(;´Д`)
>>379
感謝です。
383:デフォルトの名無しさん
06/01/04 00:29:28
書き込みテストはここがいいんじゃない?
[test] 書き込みテスト 専用スレッド 55 [テスト]
スレリンク(operate板)
こことかも
superfree
URLリンク(2chplus.2ch.net)
384:デフォルトの名無しさん
06/01/05 14:19:48
あー、、懐かしい流れだなー、、
385:デフォルトの名無しさん
06/01/08 17:19:47
スキン標準化プロジェクト
URLリンク(dtao.cside.com)
これ守ってる人いる?
386:デフォルトの名無しさん
06/01/08 21:49:41
一応守ってるよ。
VBだったらRegExオブジェクトで正規表現扱えるし
387:デフォルトの名無しさん
06/01/08 22:00:19
何だか偉そうなサイトだな
388:デフォルトの名無しさん
06/01/08 23:20:09
偉いんだよ。
389:逆噴射J ◆lW31l/VtQc
06/01/08 23:24:29
>>383
サンクスです。亀レス申し訳ないです。
390:デフォルトの名無しさん
06/01/23 21:42:13
ほっしゅほっしゅ
391:デフォルトの名無しさん
06/02/05 15:06:03
2ちゃんのあぼーん検出って前回読んだ1バイト前から読んで、
改行コードじゃなかったら、あぼーんと判定するけど、
したらばみたいにhtmlでしか取れないスレッドのあぼーん判定は
どうやればよいでしょうか?
392:デフォルトの名無しさん
06/02/05 18:29:45
仕様も読まずにカキコ
バイト単位で比較してズレてたらあぼんでいいんじゃないかね
393:デフォルトの名無しさん
06/02/05 19:18:11
>>391
レス番で範囲指定するしたらばはバイト数で範囲指定する2chのようにあぼーんで
取得範囲がずれる事はないので、気にしない。
したらばで透明処理があったかどうか、あったとしてrawmode.cgiを使った読み込みでも
番号ずれが起こるのかどうかは忘れた。
394:391
06/02/05 22:08:03
>>393
すみません、書き足りませんでした。
一度最初から読んだら、次回は当然続きから読むわけですが、
おっしゃるとおりバイトがずれることはありません。
ただ、続きから読むので前回取り込んだ分のレスのどれかが
サーバー上であぼーんしてても
キャッシュの方はあぼーんでないままになるってことです。
これはそのままでいいのかな。
解決するには常に最初から読むしかなさそうだし。
395:デフォルトの名無しさん
06/02/05 23:26:36
>>394
意図は分かってるんだけど、気にしないしかない。
想像通り最初から読み直すのが解決策だけど、
それだけのために毎回読み直すような事は推奨できない。
396:391
06/02/05 23:37:05
サーバーの負荷高めるよりは、あぼーんすべきレスが
そのままになってる方がマシって結論ですね。
しかし、ちゃんとこのスレ見てくれてる人がいて安心。
monazilla.orgはもう動いてないみたいですし・・・
397:デフォルトの名無しさん
06/02/05 23:44:58
年末に復活する兆しはあったんだけど、結局頓挫したっぽいね>monazilla
残念
398:デフォルトの名無しさん
06/02/18 02:38:16
monazillaの管理人がすみません忙しいですとだけ言い残していなくなって
くれやがったから。
いっそ完全に沈黙してくれてたら無視して話を進めることもできたのに。
399:デフォルトの名無しさん
06/02/18 11:14:10
虚栄心だけは人一倍だよね。
400:デフォルトの名無しさん
06/02/20 11:42:43
2ch_Xって全部の板に導入されてるの?
401:デフォルトの名無しさん
06/02/20 14:32:43
今どんなブラウザがあるかって、まとめてるサイトあるかな?
仮仮仮仮と2ch browser project MacOSXくらいしか知らんのだけど、
他にあれば教えてください。。。
402:デフォルトの名無しさん
06/03/09 01:51:36
URLリンク(pc.2ch.net)
のようにhtmlとして保存されている過去ログは全て
URLリンク(pc.2ch.net)
のようにgzipされたdatも対に存在していると考えて良いのかな?
403:デフォルトの名無しさん
06/03/09 02:12:10
確か、圧縮されていない場合もあったはず。(特に最近の分?)
404:デフォルトの名無しさん
06/03/09 09:05:13
>>402
URLリンク(qb5.2ch.net)
はあるけど
URLリンク(qb5.2ch.net)
はない模様。
405:402
06/03/09 09:51:08
というと非圧縮でもdatファイル自体は必ずあるのかな?
406:委員長 ◆/DABoneCRY
06/03/09 21:02:24
>405
そうとは限らなかったように思います。
datをまず取りに行き、なければ、.dat.gzで試みるという感じになるかと
思います。
407:デフォルトの名無しさん
06/03/09 21:15:29
逆じゃね?
408:委員長 ◆/DABoneCRY
06/03/09 22:00:50
ああ、逆の方が良いかもしれない。
.dat.gzを後付け対応したA Boneでは上記の形になっていたんだ。
二度手間になる率がどっちが高いのか調べてないので何とも言えないけど
スレッド丸ごと取得なら、事前に圧縮されている.dat.gzを優先するべきかな?
409:402
06/03/09 22:04:38
ああいや>>405で言いたかったのは、過去ログHTMLがある場合
datも圧縮、非圧縮最低どちらかが必ずあるのかなと。
存在の有無確認としては
dat.gz、dat、htmlの順になると思いますが。
410:デフォルトの名無しさん
06/03/10 13:03:18
過去ログ二変換されてたらdatはないよなあ
411:デフォルトの名無しさん
06/03/11 00:10:01
JBBSの post/get の仕様ってどうなってるんでしょうか?
資料等公開されていないのでしょうか?
412:デフォルトの名無しさん
06/03/11 01:41:39
URLリンク(jbbs.livedoor.jp)
URLリンク(jbbs.livedoor.jp)
あたり?
413:デフォルトの名無しさん
06/03/11 04:58:00 BE:5594876-
・HTML化された過去ログはhtmlとdatの両方がある。
・datは ".dat" か ".dat.gz" のどちらかである。
・".dat" にアクセスするときも、gzipを許可すると圧縮されて送られてくる。
414:デフォルトの名無しさん
06/03/11 05:09:12 BE:7459878-
.dat.gz と .dat 、どちらを優先するか。
最近はほとんどHTML化されてないけども、されるときは、
見た限り全て .dat なので、最近のログに限って言えば
.dat を優先するのが効率的。
HTML化がそれなりにされ、.dat.gz が主流だった時代のログ、
更にそれ以前の、圧縮なんて全くされていなかった時代のログ、
はて、どのログへのアクセスが多いのだろうか。
415:402
06/03/11 09:29:12
ふむ。じゃあ、
URLは、URLリンク(pc.2ch.net)
Accept-Encoding: gzip
とリクエストすれば圧縮か非圧縮のどちらかが返ってくるってことですね。
それで返ってこない場合はスレッドが存在しないと判断でいいかな。
htmlの有無は見ない。
416:デフォルトの名無しさん
06/03/11 15:02:31
>>412
ありがとうございます。そちらを見てみます。
417:402
06/03/12 23:11:01
むぅ、
URLリンク(pc.2ch.net)
へアクセスするときAccept-Encoding: gzipつけても人大杉になるな・・・
URLリンク(pc.2ch.net)
だとAccept-Encoding: gzipつけようがつけまいがgzipで返ってくる。
つまり>>404と逆のケースで、
URLリンク(pc.2ch.net)
はあるけど
URLリンク(pc.2ch.net)
はない模様。
ぬるぽ。
418:402
06/03/12 23:38:27
結局、何をてこずってるのかというと・・・
あるスレに、どこかのスレへのリンクがあるとする。
このスレの>>1みたいに過去ログへのリンクとか。
リンクはhttp:/..../test/read.cgi/..../の形式で書いてあるとする。
通常リンクを書くときはread.cgiを含んだ形式のはず。
可能性としてそのスレッドは、
-ライブスレッド
-●でしか見れない
-過去ログdat
-過去ログdat.gz
-過去ログhtml
のいずれか。
これをどう読むかを考え中です。
419:402
06/03/12 23:41:31
今、考えているのは
-URLを解析してライブスレッドのdatを直読みに行く
--あれば、そのまま表示して終了
たとえば、このスレのpart1は
スレリンク(tech板)
だけどライブと仮定すると
URLリンク(pc8.2ch.net)
へアクセスすることになる。
もしリンクがサーバー移転前のもので、まだライブスレッドならアクセスできる。
-datがない場合
-リンクのURL(read.cgi)でそのままアクセス
--過去ログ倉庫に保存されていますの場合(●でしか見れない)
---offlaw.cgiで読みに行って、あれば表示して終了
---なければ、「スレッドありません」、とエラー表示して終了
--隊長!過去ログ発見しましたの場合
---過去ログHTMLのリンクが書いてあるので解析
---それを元に過去ログdatを読みに行って、あれば表示して終了
---なければ過去ログdat.gzを読みに行って、あれば表示して終了
---これでもなければ過去ログhtmlを読みに行って、あれば表示して終了
---これでもなければ、「スレッドありません」、とエラー表示して終了
もっと負荷減らせそうな良い方法ありますかね?
最初はライブのdatじゃなくread.cgiにアクセスして判断するほうがいいのかな。
420:委員長 ◆/DABoneCRY
06/03/13 00:04:10
UserAgentは「Monazilla」を名乗ってます?
幾分古い情報となっているかもしれませんが、以下のサイトも
参考になると思います。
URLリンク(age.s22.xrea.com)
421:402
06/03/13 00:48:49
Monazillaは名乗ってます
2ちゃんとーくにも、dat,dat.gzのいずれかがありますと書いてますが、
裏を返せば、やはりどちらかしかないことがあるということですよね。
委員長さんは、>>418の件、どのような手順でスレッド取得してますか?
422:委員長 ◆/DABoneCRY
06/03/13 02:16:47
>421
> 裏を返せば、やはりどちらかしかないことがあるということですよね。
そうだと思います。
実際に専用ブラウザ開発をやってると、「結果として取れればOK」って
スタンスになってしまいますので、datとdat.gzのどちらもあるのか?とか
どっちの方が確立が高いのか?とか、そういうのは全然考えてません。(^-^;
> 委員長さんは、>>418の件、どのような手順でスレッド取得してますか?
-ライブスレッド
-過去ログdat
-過去ログdat.gz
-●でしか見れない (offlaw.cgi 経由/ログイン時のみ)
の順番で取りに行ってますね。
踏んだURLは基本的にご指摘の通り、read.cgi経由ですが
A Boneの場合、内部的には全てdatのURLで管理していますので
自動的にdatのURLに変換しており、read.cgiのURLは一切無視。
ライブスレであろうが、過去ログであろうが、単純に上記の手順です。
ただし、それはread.cgi経由のURLを踏んだ場合であって
(過去ログか判断出来ないから)、>417のようなdatのURLで書かれて
いる場合には、そのまま過去ログdatからスタートしてます。(当たり前ですが)
>419の件ですが、offlaw.cgiを最後にしています。
正解なのか分かりませんが、CGI経由は負荷的に気持ち悪いので
最後にしているというのと、dat、dat.gzでトライしてエラーコード302(だっけ?)
を見て判定しているだけなので、効率的(速度的)な問題は無視出来ますから。
何より、過去ログですから、If-Modified-Sinceを指定している限り
ライブスレッドと違い、一回取ってしまえば何度も取得しに行く訳でもないので
効率はあまり気にする必要はないかと思いますしね。(最後は華麗に逃げ)
423:402
06/03/13 02:52:58
>>422
なるほど、その順番いいですね。
確かに存在しないファイルのリクエストの負荷はcgiに比べて低いですし
read.cgiが出力するhtmlを解析して過去ログのありかを特定とかも面倒ですし。
さっそくそれで組んでみます。
ども、でした。
424:stream ◆PNstream2s
06/03/13 16:42:14 BE:138759326-
差分取得とかさまざまな場面でIf-Modified-Sinceを使ってる2chブラウザが多いですが。
Last-Modifiedを使う場合、秒単位になってしまいます。
秒単位になると何が起こるかと言うと、
1秒間に複数のレスが付いた場合、レスが付いてるのに
304 Not Modified になってしまう場合があります。
特に1000付近でこれが発生すると、dat全体を再取得しないと最後まで読めなくなってしまいます。
これを防ぐには、Last-ModifiedだけでなくETagを保存しておき、
更新チェックのさいはIf-None-Matchを使用するといいです。
425:デフォルトの名無しさん
06/03/13 21:12:06
急浮上?
426:デフォルトの名無しさん
06/03/13 23:26:07
>>422
●の唯一公式な機能を使うのに必要なんだからofflaw.cgiの負荷は全く気にする必要ないべ
427:402
06/03/15 01:44:56
うん、それもそうね。
けど、offlaw先に見に行くよりはdat,dat.gz,offlawの順の方が
仕組み的に楽だったんで。もう組んじゃったし(笑
428:デフォルトの名無しさん
06/03/15 15:54:20 BE:1065942-
HTML化されたスレをofflaw.cgiで見ようとすると、
-ERR 過去ログ倉庫で発見 ../tech/kako/981/981726544.dat.gz
とエラーになるので、先にofflaw.cgiを見て、
あれば良し、
HTML化なら過去ログ位置を得る、
「そんな板orスレッドないです。」ならおしまい、
という処理をしてもいいかもしれない。
でも面倒。
429:402
06/03/15 16:04:52
結局、offlaw使えるのは●ユーザーだけなんで。
●もってない人のこともかんがえて処理すると
先に述べた方法が一番かと。
430:デフォルトの名無しさん
06/03/15 19:03:04 BE:3197838-
だねー。
431:委員長 ◆/DABoneCRY
06/03/15 20:32:55
あえて付け加えるなら、●ユーザーであっても
offlaw.cgiを使わずにdatや、dat.gzで済むなら、
それに越したことはないので、offlaw.cgiは
最後の手段という考え方の方が良いと思いますよ。
432:http://www.vector.co.jp/soft/win95/util/se072729.html
06/03/18 20:54:25
TextSS のWindowsXP(Professional)64bit化おながいします
もしくは64bitにネイティブ対応したテキスト置換ソフトありますか?
そういや64bitにネイティブ対応している2chブラウザてありましたっけ?
433:デフォルトの名無しさん
06/03/24 04:32:04
"-ERR 過去ログ倉庫で発見"を処理しないブラウザで過去ログが取得できないケースとか
offlaw.cgiで送られてくるほうが新しいというケースとかあった気がする。
434:デフォルトの名無しさん
06/03/32 01:53:43
JBBSのsubject.txtは、なぜ最後の行に1行目と同じ内容の物が出力されるのだろう。
全板でそうなら最後の1行スキップすればよいのだが・・・
435:デフォルトの名無しさん
06/04/10 10:58:04
>>434
最後の行と最初の行が同じだったら
最後の行を削除したらいいじゃない
436:デフォルトの名無しさん
06/04/10 17:30:40
あ、同じかどうか判定して・・・って意味でw
437:デフォルトの名無しさん
06/04/12 03:17:45
゙lliii,,,,,,,,,,,,, llliiiii,, lllii,,,,、 lll,,
.,,ill!!!!゙゙゙゙゙ .'lllll° .lllii,, ゙!llll 'lllllii
.” : : : lllll ゙゙lllll .,illl!
lii _,,iiilllll゙゙゙!!liii,, !lll| .'llii . .,illll
lllllll!゙° .'lllll ゙llll,,,,,iiiiill!!!!!l ,,ill!゙ :
..゙゙゜ .,lllll ..,,,iiil!!!゙゙゙″ .,illllilllllllliii,, ,,ill
,lllll゜ ,,iil!l゙° ,,illll!゙° 'lllll ,,ill!
,,illlll° .lll!° ,illl!゙` .llll| .,,illll
..,,,iill!!° .゙!lii,,_ _、 iilll!゙ .lllll,,,,,,,,iiill!!゙
_,,,,iiil!!゙゙’ ゚゙゙!!!!!lllllllllll!!!!!!!! '!!l° .゙゙゙!!!!゙゙゙
438:デフォルトの名無しさん
06/04/12 15:59:42
>>435
うん、そうした。
でもなんでこんな仕様になってるのやら。
439:デフォルトの名無しさん
06/04/12 23:55:14
RSS配信開始で新しいプロジェクトがいっぱい出てくる予感
・・・monazillaとは関係ないところで・・・
440:デフォルトの名無しさん
06/05/09 21:44:21
t
441:デフォルトの名無しさん
06/05/16 18:20:34 BE:7466483-
monazillaを引き継いでみる。
442:デフォルトの名無しさん
06/05/16 18:41:41 BE:7466483-
monazillaプロジェクト+aの勢いで
443:デフォルトの名無しさん
06/05/16 18:45:14
>>66
いるYO!
444:デフォルトの名無しさん
06/05/16 21:43:14 BE:9955384-
名称は「Monazila Japan」に決定。
445:c⌒っミ `Д)っφ ◆CaKkuEV3EI
06/05/24 23:00:30 BE:2200872-#
monazilla
URLリンク(info.2ch.net)
ページが刷新しました。
スレリンク(operate板:134-番)n
スレリンク(operate板:72-番)n
従来のページはこちらに移動です。
monazilla/develop
URLリンク(info.2ch.net)
446:デフォルトの名無しさん
06/05/25 01:03:41
otu
447:デフォルトの名無しさん
06/05/26 18:26:56
http要求ヘッダ例
GET /newsplus/subject.txt HTTP/1.0
Accept-Encoding: gzip
Host: news2.2ch.net
User-Agent: Monazilla/1.00
Connection: close
URLリンク(age.s22.xrea.com)
2ちゃんのスレッドを取得するプログラムをC#で作ろうとしているんですが
ログを受信する際、こういったヘッダ情報は送信する必要はありますか?
以前試したテストプログラムではUser-AgentやAccept-Encodingは特に設定しなくても
問題なくデータが取得できてしまったんですが・・・
448:stream ◆PNstream2s
06/05/26 18:51:22 BE:555033986-#
>>447
datファイルは特に規制かけてないみたいなので
HTTPの仕様に沿った要求を行えば特に問題ないですね。
ただ、さまざまな理由で規制がかけられないとは限らないんで
User-Agent はMonazillaを名乗っておいたほうがよさげ。
さすがに Accept-Encoding: gzip 無しが規制されるとは思えないけど、
C#って.NET2.0なら自動でgzipを展開してくれる機能があるから
それを利用して2chの負担を減らそう。
ちなみに
offraw.cgi はgzip必須だったような。
read.cgi はUser-Agent必須だったような。
449:447
06/05/26 19:02:37
>>448
ご指摘ありがとうございます。
> C#って.NET2.0なら自動でgzipを展開してくれる機能があるから
> それを利用して2chの負担を減らそう。
C#でgzipの圧縮・解凍ができるとは知りませんでした(汗
早速調べてみます。
ところでgzipを使ったときもログの差分取得は可能でしょうか?
そもそもgzipを使ってログを圧縮しているなら、わざわざ差分取得しなくても
鯖には大した負担はかからないでしょうか?
450:デフォルトの名無しさん
06/05/26 19:10:24
今gzip圧縮ってしてるの?
転送量よりもCPU負荷の方を軽減したいって感じだったと思うけどうるおぼえ。
451:デフォルトの名無しさん
06/05/26 19:44:35
Content-RangeとAccept-Encoding:gzipを同時に指定すると、
httpの意味上からは、「gzip済みのdatファイル」の途中から
しか送ってくれないので役に立たない。
452:デフォルトの名無しさん
06/05/27 00:43:57
>>450
うろおぼえ が正しいんじゃなかったか?
>>451
初回だけgzipで取れって事?
453:447
06/05/27 00:54:09
>>451
その差分に関して何ですが、
URLリンク(age.s22.xrea.com)
によりますと、
DAT差分を取得
要求ヘッダに次の項目を追加する
If-Modified-Since: リモートDATの最終更新時刻(値は応答ヘッダのLast-Modifiedを調べる)
Range: bytes=ローカルDATのファイルサイズ-
※If-Modified-SinceとDateヘッダの値は、RFC1123形式で表される時刻。例えば、Fri, 30 Mar 2001 22:35:45 +0900
とのことです。そこで次のようなプログラムを記述したのですが、
System.Net.WebClient wc = new System.Net.WebClient();
wc.Headers.Add("User-Agent", "Monazilla/1.00 (mytool/1.00)");
wc.Headers.Add("If-Modified-Since", "Fri, 26 May 2006 10:44:35 +0900");
System.IO.Stream st = wc.OpenRead("URLリンク(pc8.2ch.net)");
System.Text.Encoding enc = System.Text.Encoding.GetEncoding("Shift_JIS");
System.IO.StreamReader sr = new System.IO.StreamReader(st, enc);
string html = sr.ReadToEnd();
sr.Close();
st.Close();
Console.WriteLine(html);
なぜか実行しようとするとエラーが発生してしまいます。そこで
wc.Headers.Add("If-Modified-Since", "Fri, 26 May 2006 10:44:35 +0900");
のところをコメントアウトすると問題なく実行してログを取得してくれます。
差分取得するときの要求ヘッダの与え方に何か間違い等はありますか(´・ω・`)?
454:デフォルトの名無しさん
06/05/27 01:07:51
HTTP-date = rfc1123-date | rfc850-date | asctime-date
rfc1123-date = wkday "," SP date1 SP time SP "GMT"
rfc850-date = weekday "," SP date2 SP time SP "GMT"
asctime-date = wkday SP date3 SP time SP 4DIGIT
date1 = 2DIGIT SP month SP 4DIGIT
; day month year (e.g., 02 Jun 1982)
date2 = 2DIGIT "-" month "-" 2DIGIT
; day-month-year (e.g., 02-Jun-82)
date3 = month SP ( 2DIGIT | ( SP 1DIGIT ))
; month day (e.g., Jun 2)
time = 2DIGIT ":" 2DIGIT ":" 2DIGIT
; 00:00:00 - 23:59:59
wkday = "Mon" | "Tue" | "Wed"
| "Thu" | "Fri" | "Sat" | "Sun"
weekday = "Monday" | "Tuesday" | "Wednesday"
| "Thursday" | "Friday" | "Saturday" | "Sunday"
month = "Jan" | "Feb" | "Mar" | "Apr"
| "May" | "Jun" | "Jul" | "Aug"
| "Sep" | "Oct" | "Nov" | "Dec"
455:stream ◆PNstream2s
06/05/27 02:00:12
>>450
ほとんどの鯖でgzip圧縮してるよ
>>453
おかしいですねえ。
Headers プロパティは、WebClient が要求で送信するヘッダー情報を含む WebHeaderCollection インスタンスを格納します。これは無制限のヘッダーのコレクションであるため、HttpWebRequest などの WebRequest の子孫で制限されるヘッダーを設定できます。
と書いてあるんですけど、例えばRangeヘッダーでも同じことが起こります。これは.NET Frameworkのバグな気がします。
456:447
06/05/27 02:03:05
>>455
> おかしいですねえ。
> Headers プロパティは、WebClient が要求で送信するヘッダー情報を含む WebHeaderCollection インスタンスを格納します。これは無制限のヘッダーのコレクションであるため、HttpWebRequest などの WebRequest の子孫で制限されるヘッダーを設定できます。
> と書いてあるんですけど、例えばRangeヘッダーでも同じことが起こります。これは.NET Frameworkのバグな気がします。
そんなことがあるんですか(;´Д`)・・・
457:stream ◆PNstream2s
06/05/27 11:18:07
まあ、HttpWebRequest/HttpWebResponseを使えってことなんですかねえ。
If-Modified-Since にDateTime構造体を突っ込むことが出来たりするので
ちょっと手の込んだHTTPリクエストを行う場合はWebClientより便利だと思いますよ。
458:デフォルトの名無しさん
06/05/27 11:25:52
etag保存しといてif-none-matchを仕掛けた方がいいという話もある
459:stream ◆PNstream2s
06/05/27 16:31:16
新しい書き込みの仕様
レス
FROM= ←名前
mail= ←メール欄
MESSAGE= ←本文
bbs= ←板のディレクトリ名。operateとかtechとか
time= ←現在時刻より小さい値を適当に。1を送っておけばよい
key= ←スレッドキー
hana=mogera ←追加。常にmogeraを送っとけばいいのかな。
Cookieは不要。
460:stream ◆PNstream2s
06/05/27 16:35:43
スレ立て
subject= ←スレッドのタイトル
FROM= ←名前
mail= ←メール欄
MESSAGE= ←本文
bbs= ←板のディレクトリ名。operateとかtechとか
time= ←現在時刻より小さい値を適当に。1を送っておけばよい
hana=mogera ←追加。常にmogeraを送っとけばいいのかな。
461:stream ◆PNstream2s
06/05/27 16:36:37
Cookieは不要と書きましたが、sports2はCookie無しじゃ書けないので
Cookieも今までどおり必要ですね
462:デフォルトの名無しさん
06/05/27 17:28:01
>>453
>wc.Headers.Add("If-Modified-Since", "Fri, 26 May 2006 10:44:35 +0900");
RFC 2616 Hypertext Transfer Protocol -- HTTP/1.1
3.3 Date/Time Formats
3.3.1 Full Date
All HTTP date/time stamps MUST be represented in Greenwich Mean Time
(GMT), without exception.
463:デフォルトの名無しさん
06/05/27 17:33:44
クッキー認証、クッキーの必要なサーバーなら出る
sports鯖とかURLリンク(sports2.2ch.net)
スレリンク(tech板)
459 :stream ◆PNstream2s :2006/05/27(土) 16:31:16
新しい書き込みの仕様
レス
FROM= ←名前
mail= ←メール欄
MESSAGE= ←本文
bbs= ←板のディレクトリ名。operateとかtechとか
time= ←現在時刻より小さい値を適当に。1を送っておけばよい
key= ←スレッドキー
hana=mogera ←追加。常にmogeraを送っとけばいいのかな。
Cookieは不要。
460 :stream ◆PNstream2s :2006/05/27(土) 16:35:43
スレ立て
subject= ←スレッドのタイトル
FROM= ←名前
mail= ←メール欄
MESSAGE= ←本文
bbs= ←板のディレクトリ名。operateとかtechとか
time= ←現在時刻より小さい値を適当に。1を送っておけばよい
hana=mogera ←追加。常にmogeraを送っとけばいいのかな。
461 :stream ◆PNstream2s :2006/05/27(土) 16:36:37
Cookieは不要と書きましたが、sports2はCookie無しじゃ書けないので
Cookieも今までどおり必要ですね
464:447
06/05/27 17:36:55
>>462
> >wc.Headers.Add("If-Modified-Since", "Fri, 26 May 2006 10:44:35 +0900");
> RFC 2616 Hypertext Transfer Protocol -- HTTP/1.1
> 3.3 Date/Time Formats
> 3.3.1 Full Date
> All HTTP date/time stamps MUST be represented in Greenwich Mean Time
> (GMT), without exception.
wc.Headers.Add("If-Modified-Since", "Fri, 26 May 2006 10:44:35 GMT");
のようにGMTに変えてみましたが依然エラーが返されるようです。
もしかしたら"If-Modified-Since"の部分が間違っているんでしょうか?
465:デフォルトの名無しさん
06/05/27 17:38:27
すまん、誤爆した
466:447
06/05/27 17:56:43
>>457
HttpWebResponse/HttpWebRequestを使ってみましたが↓
やはり"If-Modified-Since"のヘッダー情報を追加すると
エラーが生じますね・・・
.Netのバグではないような気もします・・・
//HttpWebRequestの作成
System.Net.HttpWebRequest webreq =
(System.Net.HttpWebRequest)
System.Net.WebRequest.Create("URLリンク(pc8.2ch.net)");
//サーバーからの応答を受信するためのHttpWebResponseを取得
System.Net.HttpWebResponse webres =
(System.Net.HttpWebResponse) webreq.GetResponse();
webres.Headers.Add("User-Agent", "Monazilla/1.00 (mytool/1.00)");
webres.Headers.Add("If-Modified-Since", "Fri, 26 May 2006 10:44:35 +0900");
System.Text.Encoding enc =
System.Text.Encoding.GetEncoding("shift-jis");
//応答データを受信するためのStreamを取得
System.IO.Stream st = webres.GetResponseStream();
System.IO.StreamReader sr = new System.IO.StreamReader(st, enc);
//受信して表示
string html = sr.ReadToEnd();
Console.WriteLine(html);
//閉じる
sr.Close();
467:stream ◆PNstream2s
06/05/27 18:33:23
>>466
いや、HttpWebRequest/HttpWebResponseの場合はHeaders.Add("If-Modified-Since",○○)
ってやっちゃ駄目なのは仕様。IfModifiedSinceプロパティを使う。
んでWebClientはHeaders.Add("If-Modified-Since",○○)ってやっていいはずなんだけど
実際は出来ないからバグかもしれない、ってことです。
468:447
06/05/27 19:03:48
>>467
あ、そういうことでしたか。早速IfModifiedSinceプロパティを使わせていただきました。
System.Net.HttpWebRequest webreq =
(System.Net.HttpWebRequest)
System.Net.WebRequest.Create("URLリンク(pc8.2ch.net)");
webreq.IfModifiedSince = new DateTime(2006, 5, 26, 0, 0, 0);
System.Net.HttpWebResponse webres =
(System.Net.HttpWebResponse) webreq.GetResponse();
System.Text.Encoding enc =
System.Text.Encoding.GetEncoding("shift-jis");
System.IO.Stream st = webres.GetResponseStream();
System.IO.StreamReader sr = new System.IO.StreamReader(st, enc);
string html = sr.ReadToEnd();
Console.WriteLine(html);
sr.Close();
コンパイルも通り、問題なく実行もできました。
が、なぜか差分データが取得できませんね・・・
2006年5月26日移行に書き込まれたデータを取得しようとしたんですが全データが
取得されてしまうようです・・・
関係ない話ですが、もし可能ならレス番号を指定してそれ移行のデータを要求できれば
便利そうなんですが2ちゃんではそういうものには対応していないんですかね。
469:デフォルトの名無しさん
06/05/27 20:45:54
すごい惨めな気持ちになったぞ!
どうしてくれる!
470:stream ◆PNstream2s
06/05/27 20:51:15
>>468
If-Modified-Since ヘッダって言うのは「この時間よりあとに未更新だったら送信しないでね」って意味だから
差分データを取得するにはさらに Range ヘッダを使わなければいけない。
HttpWebRequestの場合はAddRangeメソッドを使う。
471:デフォルトの名無しさん
06/05/27 20:52:26
>>468
> Range: bytes=ローカルDATのファイルサイズ-
はどこ行ったんだよ
472:デフォルトの名無しさん
06/05/27 20:52:46
かぶったorz
473:デフォルトの名無しさん
06/05/27 21:44:28
>>468
>関係ない話ですが、もし可能ならレス番号を指定してそれ移行のデータを要求できれば
>便利そうなんですが2ちゃんではそういうものには対応していないんですかね。
2000年8月危機の際にオープンソースとなり有志の手で改良された旧版 read.cgi には
raw モードとしてその機能が実装されたが、現在の read.cgi には実装されてない。
474:デフォルトの名無しさん
06/05/27 21:55:15
2001年ではなくて?
475:447
06/05/27 22:18:47
>>470-471
webreq.AddRange((int) fileSize);
と指定することで差分データ取得できました\(^o^)/
ちなみにIf-Modified-Sinceヘッダをつけてもつけなくても、
またでたらめな時間や未来の時間にしても取得する差分データ
に変わりはありません。AddRangeさえ指定すればIf-Modified-Sinceは
特に指定する必要は無いんでしょうか?
>>473
便利な機能は無くなってしまったんですか(´・ω・`)
あぼ~んがあった場合などでも問題なく差分データを取得できると
思われるので重宝すると思うんですが・・・
476:デフォルトの名無しさん
06/05/27 22:23:43
鯖の方でいろいろやらなきゃいけないし、
FOXがコードをDSO向けにリファインした時に無くした予感
477:デフォルトの名無しさん
06/05/28 00:27:05
ハナモゲラ絶対必要なの?
478:デフォルトの名無しさん
06/05/28 06:48:32
あぼーんがあったときに、ローカルのデータを上書きしてくれるのでありがたい
479:デフォルトの名無しさん
06/05/28 13:48:42
例えばレス479まで取得しているスレでリロードすると、
479までのサイズでRange~とするわけだけど、その時に
新規投稿が無かった場合、.datファイルにはRange~で指定した
部分は存在しないので406エラーとなる。
そこで、If-Modified-Sinceを付ければ、新規投稿が無い時には
304 Not Modified で新規投稿が無いことがわかる。
406を新規投稿無しと解釈すれば良いじゃないか、とも思えるが、
レスが削除された場合等にも、.datファイルのサイズが既得分より
減って406が出うるので、それと区別ができなくなってしまう。
ブラウザを配布するとかではなくて、個人でどうにかしたいだけなら
お好みでどうぞ、とも言えるが。
480:447
06/05/28 15:51:01
>>479
なるほど、If-Modified-Sinceを活用するとあぼーんの検知もできるようになるということですね。
ちなみに先ほど各種条件を試してみましたところ、
新規投稿がなく、If-Modified-Sinceを指定しなかった場合
416 RequestedRangeNotSatisfiable
が返され、
新規投稿が無く、If-Modified-Sinceを指定した場合は
304 Not Modified
が返されました。
あぼ~んがあったと想定するためRange~を100バイトほど多めに指定し、
If-Modified-Sinceの時刻を過去に戻したところ(あぼーん更新で更新時刻が先に変更されたとシミュレートするため)
416 RequestedRangeNotSatisfiable
が返されました。
細かい違いはありますが、
416が返された場合はあぼ~んがあったと推測し、全ログを取得し直すようにすればいいわけですね?
481:デフォルトの名無しさん
06/05/28 16:18:35
あ、416だった(ハズイ
482:デフォルトの名無しさん
06/05/28 16:26:38
そっすね、全取得になるかと。
ブラウザとしてだと、自動再取得の前に、何が削除されたか
知っておきたい、という需要もあるけどね。
483:デフォルトの名無しさん
06/05/28 16:32:30
Range指定にIf-Modified-Sinceを付加する理由として
ひとつは、HTTP/1.1の旧仕様では416が規定されておらず
Rangeが範囲外を指定しているとRangeを無視して200を返していたというのがある。
少なくとも、このスレの初代が出来た頃の2chのapache(1.x)はそうだったし
互換板等ではまだそういう鯖も存在するかもしれない。
もうひとつは、
あぼーん検出のために末尾の'\n'等数バイトを含めてRange指定で取得すると
未更新の場合でもファイルの読み書きが発生して
鯖に本来不要な負荷をかけてしまうという点がある。
If-Modified-Sinceを併用することで、これを防ぐ。
484:447
06/05/29 19:29:37
2ちゃんのスレッドを取得したときに考えられるケースとして、
a) 正常に取得
b) URLを間違えてしまった
c) すでに1000を超えていた
d) すでに過去ログとして倉庫落ちしてしまった
e) 人大杉
の5通りくらいあるかと思います。いずれも帰ってくるステータスコードは
200 HTTP_OKなんですがみなさんどうやってそれぞれのケースを判別されてますか?
485:デフォルトの名無しさん
06/05/29 20:25:21
それは、
本当は302が返っているのに、リダイレクトされているだけ
486:デフォルトの名無しさん
06/05/31 23:54:51
c)は違うだろ(まだdat落ちしてなければ)
487:stream ◆PNstream2s
06/06/01 08:21:08
>>484
b)
AllowAutoRedirect = false
datファイルが302 Found が返ってくるかどうか。
d)と比べたいならread.cgiにもアクセスする。
c)
datファイルが1000行あるか調べる
d)
AllowAutoRedirect = false
datファイルが302 Found が返ってくるかどうか。
b)と比べたいならread.cgiにもアクセスする。
e)
datファイルで人大杉?
488:デフォルトの名無しさん
06/06/03 19:46:04
URLリンク(jbbs.livedoor.jp)
したらばのdatってどう取得したらええんやろ(´・ω・`)?
489:stream ◆PNstream2s
06/06/03 20:17:03
ProxomitronとかEtherealとかつかって、既存の2chブラウザが何やっているかを把握すべし
490:デフォルトの名無しさん
06/06/03 22:35:17
>>488
> URLリンク(jbbs.livedoor.jp)
んなもん
URLリンク(jbbs.livedoor.jp)
とでもすればいいんじゃね~か、と思っていたが意外と違うもんだな・・・
491:stream ◆PNstream2s
06/06/03 22:44:03
Jane Nida で確認してみた
URLリンク(jbbs.livedoor.jp)
レス番指定も
URLリンク(jbbs.livedoor.jp)
492:デフォルトの名無しさん
06/06/04 01:29:32
>>491
> レス番指定も
> URLリンク(jbbs.livedoor.jp)
うおっ!めちゃくちゃ便利じゃん♪
2ちゃんもしたらばみたいな方式だとありがたいんだが。
493:stream ◆PNstream2s
06/06/04 01:32:26
>>492
CGIが動く負荷とdatファイルを読み出す負荷は10~100倍ぐらい違うんだよ
494:デフォルトの名無しさん
06/06/04 01:40:46
>>493
なるほど、2ちゃん規模の掲示板だと2ちゃん方式は必要悪というわけなのか。
495:デフォルトの名無しさん
06/06/04 03:05:00
因みに過去ログは
URLリンク(jbbs.shitaraba.com)
↓
URLリンク(jbbs.livedoor.jp)
htmを自前でDatに変換ね
496:デフォルトの名無しさん
06/06/04 06:31:07
したらばはdat公開してないよ
IPとかもdatに保存してあるから
497:デフォルトの名無しさん
06/06/04 15:09:36
> IPとかもdatに保存してあるから
((((((;゚Д゚))))))ガクガクブルブル
498:デフォルトの名無しさん
06/06/05 00:08:49
そんなに怖がることはないだろ
499:デフォルトの名無しさん
06/06/06 23:37:48
>>463
いまはsubmitってチェックしてないのかな?
間違えて「書き込む」をUTF-8でエンコードしてたけど書き込めてた。
>>455
GET /newsplus/subject.txt HTTP/1.0
Accept-Encoding: gzip
Host: news2.2ch.net
User-Agent: Monazilla/1.00
Connection: close
と、「と~く2ちゃんねる」通りにリクエストしても
datファイルはプレーンテキストで送られてくるのですが、
どの鯖ならgzipで返ってくるんだろう。
リクエストの仕方が間違ってる?
おかげで、gzipでdatを受信した場合の動作確認ができない。
普通の応答は解凍できてるから、たぶん大丈夫だとは思うんだけど・・・。
500:デフォルトの名無しさん
06/06/07 03:05:38
HTTP/1.1?
501:デフォルトの名無しさん
06/06/07 03:11:40
news2?
502:stream ◆PNstream2s
06/06/07 14:37:34
telnetしてみた
GET /newsplus/subject.txt HTTP/1.0
Host: news2.2ch.net
Accept-Encoding: gzip
HTTP/1.1 200 OK
Date: Wed, 07 Jun 2006 05:36:10 GMT
Server: Apache/2.0.58
Last-Modified: Wed, 22 Mar 2006 02:11:13 GMT
ETag: "16310f0-0-40f8be7f05240"
Accept-Ranges: bytes
Vary: Accept-Encoding
Content-Encoding: gzip ←
Content-Length: 20
Connection: close
Content-Type: text/plain; charset=shift_jis
ただ単に中身が無いからgzipになってないように見えるだけでは?
503:499
06/06/09 03:18:20
>>499はと~く2ちゃんねるのをコピペしただけなので、
実際には運営情報板とかでテストしてます。
>>502
おお、telnetで試してみたらgzipで返ってきました。
でも、全く同じメッセージ送ってみてもWinsock(2.0)使った
自作プログラムではプレーンテキストが返ってくる。
う~ん、何が違うんだろう。
504:デフォルトの名無しさん
06/06/21 16:52:14
> User-Agent: Monazilla/1.00
ヘッダーにこの情報を記述しなくてもDATが取得できたんだけど
これっておまじない程度のものなの?
505:デフォルトの名無しさん
06/06/22 04:40:05
過去ログにさんざん書かれてますよ。
506:デフォルトの名無しさん
06/06/22 10:13:56
おなじないって言ってるうちは理解できてないってことだな
507:デフォルトの名無しさん
06/06/22 11:53:35
おなじない・・・・
508:デフォルトの名無しさん
06/06/22 12:46:30
おなじないヽ(`Д´)ノウワァァン
509:デフォルトの名無しさん
06/06/22 13:20:14
かくごしろ
510:504
06/06/27 22:58:57
う~ん・・・
特にいらないのか( ´・ω・)・・・
511:デフォルトの名無しさん
06/06/28 01:52:17
そういえば、NISかなんかがgzipを無効にするとかいうのもあったっけなー。
512:デフォルトの名無しさん
06/07/01 20:29:40
Delphi6+Indyで簡易2chブラウザを作っています。
読み、書きはできるようになりましたが、●が書き込みに反映されません。
ちなみに認証方法はURLリンク(kage.monazilla.org)を参考にして、
セッションIDを取得するところまではできています。
・セッションIDの取り出し
IdHTTP1.AllowCookies := False;
IdHTTP1.Request.UserAgent := 'DOLIB/1.00';
IdHTTP1.Request.RawHeaders.Add('X-2ch-UA:'+Myname);
IdHTTP1.Request.Connection := 'close';
Contents.Text:='ID='+LGId+'&PW='+LGPas;
Respons:=IdHTTP1.Post(url, Contents);
Sid := Copy(Respons,pos('=',Respons)+1,length(Respons));
//showmessage(Respons);で'SESSION-ID=Monazilla/1.00:~~~'という文字列が表示されます。
//showmessage(Sid);では'Monazilla/1.00:~~~'
//一番最後の文字は非改行文字であることを確認>>95
・書き込み時postするデータ
IdHTTP1.Request.Referer := SavUrl+ItaUrl;
IdHTTP1.Request.UserAgent := copy(Sid,1,pos(':',Sid)-1) +' ('+Myname+')';
Contents.Text:='bbs='+Ita+'&key='+Key+'&sid='+Sid
+'&time=1&hana=mogera&submit=書き込む&FROM='
+Name+'&mail='+Mail+'&MESSAGE='+Honbun;
Result:=IdHTTP1.Post(url, Contents);
書き込み自体はこれで成功しています。
513:デフォルトの名無しさん
06/07/01 20:44:20
Indyのことはわからないから的外れな事いってたら悪いんだけど
URLエンコードはされてる?
514:512
06/07/01 21:15:02
すみません。>>95を見て
Sid := Copy(Respons,pos('=',Respons)+1,length(Respons));
↓
tmp1 := pos('=',Respons)+1;
Sid := Copy(Respons,tmp1,length(Respons)-tmp1);
に変えたのを忘れていました。それでも症状は変わらずです。
>>513
indyの内部で行われているようです。
名前欄の●が○になる以外で書き込んだ内容は正常に反映されていますし。
515:デフォルトの名無しさん
06/07/01 22:35:13
確かSID末尾の改行がどうのというところで引っかかっていた人が過去に居たような。
516:デフォルトの名無しさん
06/07/01 23:53:56
>>512
>>514
Proxomitronとか、あるいはetherealを使って
流れているデータを見るのが解決の近道
517:512
06/07/02 04:16:31
で、でけたー
Indyのエンコード部分がいろいろとおかしいようなので封印して自前でURLエンコードしたら反映されました
>>513>>515大変参考になりました。ありがとうございます。
518:デフォルトの名無しさん
06/08/10 20:05:03
ひどい過疎
519:デフォルトの名無しさん
06/08/12 23:49:35
見舞われましたwwwwwwwwwwwwwwwwwwwwww
520:デフォルトの名無しさん
06/08/16 17:04:57
IEコンポーネントはVistaでも正常動作するか確認情報ってある?
使ってる人は少なくないと思うがそれらしい話を全く聞かないもんで
521:デフォルトの名無しさん
06/08/27 15:14:42
monazilla.org ってどうして更新されなくなってしまったの?
522:デフォルトの名無しさん
06/08/30 01:33:58
read.cgi 2006―JavaScriptはCGIの夢を見るか
スレリンク(operate板:749-番)
まだまだ実験中のやつだけど、ステータスコードが色々ですよ。
302しか想定してないブラが多かったと思うけど、404くらいには対応した方が
この先も色々慌てなくて良いかもよ。
523:デフォルトの名無しさん
06/08/30 22:27:23
ステータスが 302 Found → 302 Moved Temporarily になっただけでまともに動かなくなったブラウザもあったぐらいだし
2chブラウザ作者は少しはHTTPを知っててほしい
524:デフォルトの名無しさん
06/08/31 13:51:50
実装が面倒
525:デフォルトの名無しさん
06/08/31 20:58:22
2ch専用なのにHTTPに準拠する必要はない
速度やサイズや生産性が悪化するだけ
526:デフォルトの名無しさん
06/08/31 21:57:59
あとリロードのたびに1バイト読み取るバカ2chブラウザは何とかならないのかね
527:デフォルトの名無しさん
06/09/01 01:14:42
>>525
そんな糞プログラムが氾濫してるのか
知らなかった
528:デフォルトの名無しさん
06/09/01 04:35:13
2chという糞に合わせなきゃならんからな。
現実はたいへんなのよ。夢だけ語ってたら2chやれませんw
529:デフォルトの名無しさん
06/09/01 13:38:47
2chといえどもhttpの上に成り立ってるんじゃないのか
530:デフォルトの名無しさん
06/09/01 13:42:22
ただ人大杉とかdat落ちしたとかのエラーは独自だからね。
フォーマットも統一されてないし。
531:デフォルトの名無しさん
06/09/01 17:05:45
>>529
それがどうかしたかね。
532:デフォルトの名無しさん
06/09/01 20:25:29
>>529
少なくとも昔は違った
今は知らん
533:デフォルトの名無しさん
06/09/01 20:30:30
>>532
デマ流すな
で、普通の「まっとうな」2chブラウザは、
2chだけでなく、外部の実況板等の互換板にちゃんと対応している。
それは当然、httpに則っているということ。
もちろん302ではなく404を返すようになっても全然問題ない。
「httpに準拠しなくて良い」なんて書いてるのは
まともな2chブラウザを作ろうとしたことも無い奴のたわごとだから。
534:デフォルトの名無しさん
06/09/01 20:39:54
wikipediaより
>準拠(じゅんきょ)とは、合致はしていないが、概ね(準)よりどころとしている事(拠)。
そういうことなら同意するよ
535:デフォルトの名無しさん
06/09/01 21:13:46
あんた、おふらうって知ってるかい?
536:デフォルトの名無しさん
06/09/01 21:18:45
2chがさくらとかのレン鯖(と一部ひろゆき自宅)で運営されていた時代を知らないで
「昔」を語られても困るわけですが、
レン鯖がhttp以外で運用されていたとでも思っているのですかね。
まさかhttpとHTMLを混同するわけないし。
537:デフォルトの名無しさん
06/09/01 21:22:39
独り言をこんなところに貼られても困る
538:デフォルトの名無しさん
06/09/01 21:28:54
まあ、まともな人はちゃんと作ってるから問題ないしね。
まともじゃない人が適当なこと(httpじゃないとか昔は違ったとか)言ってるだけだから。
539:デフォルトの名無しさん
06/09/01 22:56:53
httpじゃないというのならdatはどうやって取得しているのか知りたいものだな。。。
540:デフォルトの名無しさん
06/09/01 23:05:00
話が食い違ってるな
HTTPをちゃんと実装することと
HTTPを利用してることは全然違うぞ
541:デフォルトの名無しさん
06/09/01 23:36:42
2chがHTTPをちゃんと実装してるかって話?
そりゃ、そんなわけないだろ。
2chはapacheを使っているだけで、
httpを実装しているのはapache.orgなんだから。
「2chはhttpじゃない」「昔は違った」なんて話は
どう見ても「クライアント側がhttpをちゃんと処理しているか」とは
なんの関係も無いし。
542:デフォルトの名無しさん
06/09/02 13:07:11
おまいらどう見てもhttpとHTML誤記した>>525に食いつきすぎですw
543:デフォルトの名無しさん
06/09/02 13:15:36
>>523
Live2chか
今は知らんが、あのブラウザは当時
>「302 Moved Tem,prarily」でもdat落ちと判断するようにした
って対応して、rootが「数字だけで判断するべきかと・・・」ってあきれてた
544:デフォルトの名無しさん
06/09/02 16:18:07
>>542
なんだってー
545:デフォルトの名無しさん
06/09/02 16:24:14
>>542
水さすんじゃねーw
546:デフォルトの名無しさん
06/09/04 08:25:08
BBSPINKのフォルダ分けってどうやればいいの?
547:デフォルトの名無しさん
06/09/07 12:28:43
そういえばソフトウェア板のブラウザ比較スレで新ブラウザあがってたな
548:デフォルトの名無しさん
06/10/13 19:41:52
再開だそうです。
URLリンク(monazilla.org)
549:デフォルトの名無しさん
06/10/13 19:42:15
一応、上げときます。
550:デフォルトの名無しさん
06/10/13 20:11:59
なんで今更ww
551:デフォルトの名無しさん
06/10/13 22:08:13
これのパクりだろ
URLリンク(mac2ch.blog10.fc2.com)
552:デフォルトの名無しさん
06/10/16 21:24:31
safariのRSS機能で見ようとするとsafariが固まるんだが……
553:デフォルトの名無しさん
06/10/16 21:26:09
あ、>548のアドレスがserver.maido3.comに飛ばされるからだ
スレ汚しスマンコ
554:デフォルトの名無しさん
06/10/16 21:38:38
URLリンク(monazilla.org)
へ移動してたっぽい。
■ Monazilla(モナジラ)の逆襲
スレリンク(operate板)l50
何度もごめんね。
フロはいってうんこして寝て夢精する。
おやすみ。
555:デフォルトの名無しさん
06/10/19 18:29:16
>>554
うんこしてからフロ入れ