AA
ｷﾀ━━━(ﾟ∀ﾟ)━━━!!!!
ｷﾀ━━━(゜∀゜)━( ゜∀)━( ゜)━( )━( )━(゜ )━(∀゜ )━(゜∀゜)━━━!!
Σ(ﾟдﾟlll)ｶﾞｰﾝ
( ﾟдﾟ)ﾎﾟｶｰﾝ
＿|￣|○
○|￣|＿
(#ﾟДﾟ) ｺﾞﾙｧ
｡･ﾟ･(ﾉД`)･ﾟ･｡ｳｴｴｪｪﾝ
(´･ω･`)ｼｮﾎﾞｰﾝ
(ﾟдﾟ)ｳﾏｰ
(・∀・)ｲｲ!!
(´-`).｡ｏＯ( )
(;´Д｀)
('A`)
(つД｀)
( ´,_ゝ｀)ﾌﾟｯ
( ﾟ,_ゝﾟ)ﾊﾞｶｼﾞｬﾈｰﾉ
(´?｀)
ん？(ﾟдﾟ≡ﾟдﾟ)ん？
(σﾟ∀ﾟ)σ gets!!
(　・ω・)？
( ﾟдﾟ）ノ　ﾊｰｲ
(つд⊂)ｺﾞｼｺﾞｼ
(・∀・)つ旦
(  ´∀｀)ﾖｶﾀｰﾈ
“ヘ(￣∇￣ )カモォーン♪
(-∀-)
ｳﾜｧｧｧｧｧｧヽ(`Д´)ﾉｧｧｧｧｧｧﾝ!
(｀･ω･´) ｼｬｷｰﾝ
( ´∀｀)σ)Д｀)
(ＴДＴ)
   _, ._
(；ﾟ Дﾟ) …？!
(・∀・)人(・∀・)
(´･∀･`)
(ﾉA`)

これは2chの仕様についてのメモです。

・板一覧の取得
http://www.ff.iij4u.or.jp/~ch2/bbsmenu.html
を取って来て解析している。
このページはhttp://www.2ch.net/2ch.htmlの左にあるフレーム。

・書き込みエラーの解釈
<!-- 2ch_X:error --> → エラー
<!-- 2ch_X:cookie --> → 書き込み確認(まだ未対応)
2ch_Xがない → 正常?
その他 → どうやったら出るの?

「二重カキコですか?」は確認済。

・URLの間の関係
板URL(例: http://pc.2ch.net/linux/)に./subject.txtを付けることで
スレ一覧が取れる。
その中を解析してXXXXXX.datを取って来て、板URLに
./dat/XXXXXX.datを付けることでスレのdatが取れる。

スレのURLは板URLのID(linux)を取ってきてから、板URLに
/test/read.cgi/板ID/datから'.dat'をとった部分/
を付ければ得られる。

逆に、スレのURLが与えられた場合、
/test/read.cgiを除いて、最後に.datをつければ良い。
(l50とか最後についている場合はそれを除く必要がある)

すなわち、板URLとsubject.txtのURL、
スレのURLとdatファイルのURLはそれぞれ一対一に対応する。

例:
板URL: http://pc.2ch.net/linux/
dat: 1022744633.dat
の場合、

datURL: http//pc.2ch.net/linux/dat/1022744633.dat
threadURL: http://pc.2ch.net/test/read.cgi/linux/1022744633/

・KDEのキャッシュの仕組み(HTTP)
キャッシュディレクトリ: ~/.kde/share/cache/http
サブディレクトリ: ホスト名を検索して、'w'以外のアルファベットが来たら
そのディレクトリになる。見付からないときは'0'になる。

例:
www.wakaba.jp  -> 'a'
www.2ch.net    -> 'c'

ファイル名: <ホスト名> + <パス('/'を'_'に置換)> + '_' + <URLのhash>

ファイルフォーマット:
(HTTPProtocol:::createCacheEntry)
1行目: キャッシュフォーマットのバージョン "7"
2行目: URL
3行目: Creation Date
4行目: Expiration Date
5行目: ETag
6行目: Last-Modified
7行目: MimeType
8行目: Charset
9行目以降: 内容

----
2channel.brdの書式

エンコーディングはたぶんShift_JIS(CP932)
1行目: '2'

それ以降:
・カテゴリ
板名<Tab>n
nは0 or 1で、0が閉じている、1が開いている

・板
<Tab>ホスト名<Tab>板ID<Tab>板の説明

----
Samba24
↓のようなエラーが出る。
--
<html><head><title>ＥＲＲＯＲ！</title><meta http-equiv="Content-Type" content="text/html; charset=Shift_JIS"></head>
<body><!-- 2ch_X:error -->
ＥＲＲＯＲ - 593 120 sec たたないと書けません。(3回目、52 sec しかたってない) 3
<br><hr>(Samba24-2.13)</body>
</html>
--
