#----------------------------------------------------------------------- //2ちゃんかきこみセット (一番上において下さい) #----------------------------------------------------------------------- //変数定義 (必要) サーバーとは文字列。フォルダとは文字列。スレ番号とは文字列。応答とは文字列。 BE0とは文字列。BE1とは文字列。BE2とは文字列。まる0とは文字列。まる1とは文字列。まる2とは文字列。 ネームとは文字列。メールとは文字列。本文とは文字列。クッキーとは文字列。クラ受信とは文字列。 !「nakonet.nako」を取り込む。 クライアントとはTCPクライアント。 クライアントについて ポートは25745。 ホストは「localhost」。 接続した時は〜クラ受信=空。 受信した時は〜クラ受信=(クライアント→受信)。 ■二局 ・カキコスレ ←カキコスレ設定 ・ホスト名 ←ホスト名設定 ・板キー ←板キー設定 ・スレキー ←スレキー設定 ・BEログイン ←BEログイン設定 ・BEメールアドレス ←BEメールアドレス設定 ・BE認証コード ←BE認証コード設定 ・名前欄 ←名前欄設定 →名前欄取得 ・メール欄 ←メール欄設定 →メール欄取得 ・本文欄 ←本文欄設定 →本文欄取得 ・まるログイン ←まるログイン設定 ・まるID欄 ←まるID欄設定 ・まるパス欄 ←まるパス欄設定 ・{非公開}ホスト名設定(V)〜サーバー=V。 ・{非公開}板キー設定(V)〜フォルダ=V。 ・{非公開}スレキー設定(V)〜スレ番号=V。 ・{非公開}BEログイン設定(V)〜BE0=V。 ・{非公開}BEメールアドレス設定(V)〜BE1=V。 ・{非公開}BE認証コード設定(V)〜BE2=V。 ・{非公開}名前欄設定(V)〜ネーム=VをURLエンコード。 ・{非公開}メール欄設定(V)〜メール=VをURLエンコード。 ・{非公開}本文欄設定(V)〜本文=VをURLエンコード。 ・{非公開}名前欄取得〜それ=ネームをURLデコード。 ・{非公開}メール欄取得〜それ=メールをURLデコード。 ・{非公開}本文欄取得〜それ=本文をURLデコード。 ・{非公開}まるログイン設定(V)〜まる0=V。 ・{非公開}まるID欄設定(V)〜まる1=V。 ・{非公開}まるパス欄設定(V)〜まる2=V。 ・{非公開}カキコスレ設定(V)〜Vのスレ一括設定。 ●二局クッキー取得 S=「Cookie:」。 エラー監視、「Referer: http://{サーバー}/{フォルダ}/{\n}User-Agent: Monazilla/1.00 (kage/1.00)」と「」を「http://{サーバー}/test/bbs.cgi」へHTTPポスト。 エラーならば、「-1」で戻る。 もし、BE0=はいならば もし、BE1≠空ならば もし、BE2≠空ならば S=S&「 」&「DMDM="{BE1}";」。S=S&「 」&「MDMD="{BE2}";」。 それを反復 もし、それ=「」ならば、抜ける。 もし、(それを「^Set-Cookie: (.+?=.+?;)」で正規表現マッチ)<>「」ならば、S=S&「 」&抽出文字列。 Sで戻る。 ●まるクッキー取得 S=空。A=空。クラ受信=空。 もし、まる0=いいえならば、「-1」で戻る。もし、まる1=空ならば、「-1」で戻る。もし、まる2=空ならば、「-1」で戻る。 クライアントで接続。 エラー監視 A=「ID={まる1}&PW={まる2}」。 「POST https://2chv.tora3.net/futen.cgi HTTP/1.0{\n}Host: 2chv.tora3.net{\n}Content-Length: {Aのバイト数}{\n}User-Agent: DOLIB/1.00{\n}X-2ch-UA: kage/1.00{\n}{\n}{A}{\n}{\n}」をクライアントで送信。 エラーならば 「-2」で戻る。 //3秒でタイムアウト 300回 もし、クラ受信≠空ならば、抜ける。 0.01秒待つ。 クライアントで切断。 もし、クラ受信=空ならば、空で戻る。 S=クラ受信\7。S=Sの「SESSION-ID=」を空に置換。 もし、(Sの1から5文字抜き出す)=「ERROR」ならば、「-3」で戻る。 S=Sの「&」を「%26」に置換。S=Sの改行を「,」に置換。Sで戻る。 ●二局書き込み(クッキーとまるクッキーで) HEAD=空。BODY=空。応答=空。 HEAD=「Referer: http://{サーバー}/{フォルダ}/{\n}User-Agent: Monazilla/1.00 (kage/1.00){\n}{クッキー}」。 BODY=「bbs={フォルダ}&key={スレ番号}」。 もし、まる0=はいならば もし、まるクッキーのバイト数>20ならば BODY=BODY&「&sid={まるクッキー}」。 BODY=BODY&「&time=1&submit=書き込む&FROM={ネーム}&mail={メール}&MESSAGE={本文}&hana=mogera」。 エラー監視、応答=HEADとBODYを「http://{サーバー}/test/bbs.cgi」へHTTPポスト。 エラーならば、「-1」で戻る。//鯖反応なし もし、応答=空ならば、「-2」で戻る。 もし、(「