1 :
(゚Д゚ )AA張り隊:
とりあえずの目標はmegabbsを読めるようにすること
3 :
デフォルトの名無しさん:2001/04/16(月) 04:02
駄目?
4 :
デフォルトの名無しさん:2001/04/17(火) 21:54
進捗報告せよ。
5 :
デフォルトの名無しさん:2001/05/15(火) 10:06
終わってるスレだけど暇だし面白そうだったんで
板一覧ページ落とすとこだけ作ってみたよ。
と言ってもサンプルいじっただけ。:-P
#include "hspsock.as"
;==========================================================
; 変数初期化
;==========================================================
sdim buf,30000
t=""
size=0
;==========================================================
; ソケットオープン
;==========================================================
sockopen 0,"www.2ch.net",80
if stat{
dialog "sockopen\nerror:"+stat
goto *over
}
;==========================================================
; リクエスト送信
;==========================================================
request="GET /bbstable.html HTTP/1.0\n"
request+"Host: www.2ch.net\n"
request+"Referer:
http://www.2ch.net/index.html\n"
request+"User-Agent: TEST\n\n"
sockput request,0
if stat{
dialog "sockput\nerror:"+stat
goto *over
}
;==========================================================
; 受信
;==========================================================
repeat
await 1
sockget t,64,0
if stat{
dialog "sockget\nerror:"+stat
goto *over
}
if t="":break
buf+t
size+64
if size>30000{
dialog "error:受信サイズがオーバーしました"
goto *over
}
loop
;==========================================================
; ソケットクローズ
;==========================================================
*over
sockclose
pos 0,0
mesbox buf,winx,winy,1
strlen size,buf
bsave "geted.dat",buf,size
stop
一覧ページ解析してかちゅ〜しゃの2channerl.brdみたいな形にするのも書いてみた。
とりあえずさげでひっそり一人で・・・
sdim boardlist,20000
sdim Category,5000
sdim CategoryData,5000
CategoryDataStart=0
CategoryDataEnd=0
CategoryTitle=""
CategoryTitleStart=0
CategoryTitleEnd=0
sdim BoarditemData,300
BoarditemDataStart=0
BoarditemDataEnd=0
sdim BoarditemUrl,200
BoarditemUrlEnd=0
BoarditemUrlDir=""
BoarditemTitle=""
BoarditemTitleEnd=0
;==========================================================
; 板一覧解析
; bufを解析してboardlistに板一覧を出力
;==========================================================
strlen size,buf
repeat
;カテゴリデータ取得
await 1
t=0
instr CategoryDataStart,buf,"<B>"
if CategoryDataStart=-1:break
instr CategoryDataEnd,buf,"<B>",CategoryDataStart+1
if CategoryDataEnd=-1:CategoryDataEnd=size
strmid CategoryData,buf,CategoryDataStart,CategoryDataEnd-1
strmid buf,buf,CategoryDataStart+CategoryDataEnd-1,size
;カテゴリタイトル取得
instr CategoryTitleStart,CategoryData,"<B>"
instr CategoryTitleEnd,CategoryData,"</B>"
strmid CategoryTitle,CategoryData,CategoryTitleStart+3,CategoryTitleEnd-3
Category=CategoryTitle+"\n"
上の続き
;板データ取得
repeat
instr BoarditemDataStart,CategoryData,"<A HREF="
if BoarditemDataStart=-1:break
instr BoarditemDataEnd,CategoryData,"</A>",BoarditemDataStart
strmid BoarditemData,CategoryData,BoarditemDataStart,BoarditemDataEnd+4
strmid CategoryData,CategoryData,BoarditemDataStart+BoarditemDataEnd+4,size
;板URL取得
instr BoarditemUrlEnd,BoarditemData,">"
strmid BoarditemUrl,BoarditemData,8,BoarditemUrlEnd-8
instr t,BoarditemUrl,"index2.html"
if t=-1:break
strmid BoarditemUrl,BoarditemUrl,7,200
instr t,BoarditemUrl,"/"
strmid BoarditemUrlDir,BoarditemUrl,t+1,BoarditemUrlEnd-t-28
strmid BoarditemUrl,BoarditemUrl,0,t
;板タイトル取得
instr BoarditemTitleEnd,BoarditemData,"</A>",BoarditemUrlEnd
strmid BoarditemTitle,BoarditemData,BoarditemUrlEnd+1,BoarditemTitleEnd-1
Category+"\t"+BoarditemUrl+"\t"+BoarditemUrlDir+"\t"+BoarditemTitle+"\n"
loop
if t!-1:boardlist+Category
loop
うお!すごい!!
その調子でがんがん行っちゃってください。
応援しかできませんが。
>>10 応援ありがとう。
でも実用レベルになることは無いと思うので期待はしないどいてね(w
いい感じですね!
わからんことあったらモナヂラスレへどぞどぞ。
15 :
デフォルトの名無しさん:2001/05/24(木) 17:52
16 :
(-_-)さん応援団 :2001/05/24(木) 18:09
うぎょぉ!頑張って!
あ、あがってるぅ〜
まぁいいけど。
13の画像、しぃめろん ってなってるけど間違い。
ホントは「しぃめれおん」です。恥ずかしい・・・
ソースはもうちょっと待ってて下さいです。
18 :
デフォルトの名無しさん:2001/07/02(月) 21:34
ageんぞゴルァ!
いちプログラマとして応援age
20 :
デフォルトの名無しさん:
なんかおもしろいので
あげ