トップページ⇒tech
20コメント10KB

かちゅーしゃクローンをHSPで作ってみよう!

■ このスレッドは過去ログ倉庫に格納されています
0001(゚Д゚ )AA張り隊NGNG
とりあえずの目標はmegabbsを読めるようにすること
0002デフォルトの名無しさんNGNG
こちらと統合しましょう
http://piza.2ch.net/test/read.cgi?bbs=tech&key=981726544
0003デフォルトの名無しさんNGNG
駄目?
0004デフォルトの名無しさんNGNG
進捗報告せよ。
0005デフォルトの名無しさんNGNG
0006(−_−)さんNGNG
終わってるスレだけど暇だし面白そうだったんで
板一覧ページ落とすとこだけ作ってみたよ。
と言ってもサンプルいじっただけ。:-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
0007(-_-)さんNGNG
一覧ページ解析してかちゅ〜しゃの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"
0008(-_-)さんNGNG
上の続き

    ;板データ取得
    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
0009(-_-)さんNGNG
ちなみにmonazillaスレの93番のレスを参考にした。
http://piza.2ch.net/test/read.cgi?bbs=tech&key=981726544&st=93&to=93&nofirst=true
0010デフォルトの名無しさんNGNG
うお!すごい!!
その調子でがんがん行っちゃってください。
応援しかできませんが。
0011(-_-)さんNGNG
>>10
応援ありがとう。
でも実用レベルになることは無いと思うので期待はしないどいてね(w
0012デフォルトの名無しさんNGNG
なんかいい感じのモジュール発見
簡易HTTPクライアント作成支援モジュールehttp_mod.as
http://www.mynet.ne.jp/~simodate/
0013(-_-)さんNGNG
なんかスレ一覧取得とかがよくわかんなくなったんで
とりあえずGUI部分だけ作ってみた。
http://beacoupfish.hypermart.net/desktop/img-box/img20010524164617.png
WinAPIバリバリ使ってます。
ソフト名はタイトルバーに書いてあるのでどう?
0014デフォルトの名無しさんNGNG
いい感じですね!
わからんことあったらモナヂラスレへどぞどぞ。
0015デフォルトの名無しさんNGNG
>>13
是非ソースも公開して頂きたいage
0016(-_-)さん応援団 NGNG
うぎょぉ!頑張って!
0017(-_-)さんNGNG
あ、あがってるぅ〜
まぁいいけど。
13の画像、しぃめろん ってなってるけど間違い。
ホントは「しぃめれおん」です。恥ずかしい・・・
ソースはもうちょっと待ってて下さいです。
0018デフォルトの名無しさんNGNG
ageんぞゴルァ!
0019デフォルトの名無しさんNGNG
いちプログラマとして応援age
0020デフォルトの名無しさんNGNG
なんかおもしろいので

あげ
■ このスレッドは過去ログ倉庫に格納されています