◆2ちゃんねるかきこみセット

「◆2ちゃんねるかきこみセット」の編集履歴(バックアップ)一覧に戻る
◆2ちゃんねるかきこみセット」を以下のとおり復元します。
*情報
作者名:五十六
引用元:[[なでしこプログラム掲示板「2ちゃんねる書き込みセット」>http://www.himanavi.net/cgi/nade-bbs/cbbs.cgi?mode=al2&namber=861&rev=&no=0]]

*概要
2ちゃんねる書き込みセットです。そのまんまです。
●とかBEとか使えます。スレ荒らしたりしないでね。

*本体
 #-----------------------------------------------------------------------
 //2ちゃんかきこみセット (一番上において下さい)
 #-----------------------------------------------------------------------
 //変数定義 (必要)
 サーバーとは文字列。フォルダとは文字列。スレ番号とは文字列。応答とは文字列。
 BE0とは文字列。BE1とは文字列。BE2とは文字列。まる0とは文字列。まる1とは文字列。まる2とは文字列。
 ネームとは文字列。メールとは文字列。本文とは文字列。クッキーとは文字列。まるクッキーとは文字列。クラ受信とは文字列。
 二局タイム=空。二局PREN=空。
 
 !「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&「 」&「MDMD={BE2};」。S=S&「 」&「DMDM={BE1};」。
         S=S&「 」&『READJS="off"; 』&「NAME=」&『"』&「{二局の名前欄をURLエンコード}」&『";』&「 MAIL=」&『"』&「{二局のメール欄をURLエンコード}」&『";』。
   それを反復
     もし、それ=「」ならば、抜ける。
     もし、(それを「^Set-Cookie: (.+?=.+?;)」で正規表現マッチ)<>「」ならば、S=S&「 」&抽出文字列。
   もし、(BE0=はい)かつ(BE1≠空)かつ(BE2≠空)ならば、S=S&「 hana=mogera」。
   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=SをURLエンコード。Sで戻る。
 ●二局書き込み
   HEAD=空。BODY=空。応答=空。
   #クッキーを言う。
   もし、二局PREN≠空ならば
     クッキー=クッキの「Cookie: 」を「Cookie: PREN={二局PREN}; 」に単置換。
     #クッキー=クッキー&改行&「Cookie: PREN={二局PREN};」。
   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」で戻る。
   //承諾!----------------
   もし、応答の「<title>」から「</title>」まで範囲切り取る=「■ 書き込み確認 ■」ならば
     #二局HAP=応答の「Set-Cookie: HAP=」から「;」まで範囲切り取る。
     二局タイム=応答の「name=time value=」から「>」まで範囲切り取る。
     二局承諾書き込み。
     もし、それ=「1」/*成功*/ならば
       二局PREN=応答の「Set-Cookie: PREN=」から「;」まで範囲切り取る。
   //承諾!----------------
   もし、(「<title>」から「</title>」まで範囲切り取る)=「書きこみました。」ならば「2」で戻る。//成功
   応答の「<!--」から「-->」まで範囲切り取る。空白除去。
   もし、それ=「2ch_X:true」ならば、「1」で戻る。//成功
   もし、それ=「2ch_X:cookie」ならば、「-2」で戻る。//クッキー古い
   違えば、「-3」で戻る。//失敗
 ●スレURL分解(URLから|URLの|URLを)
   A=空。B=空。C=空。URL=URLの「/」を「//」に置換。URL=URLの「/test//read.cgi/」を空に置換。
   A=URLの「////」から「/」まで範囲切り取る。C=URLを『\d{10}』で正規表現マッチ。URL=URLのそれを空に置換。
   B=URLの「/」から「/」まで範囲切り取る。「{A}{\n}{B}{\n}{C}」で戻る。
 ●スレ一括設定(Sで|Sを|Sの)
   SをスレURL分解。
   二局について
     ホスト名=それ[0]。板キー=それ[1]。スレキー=それ[2]。
 ●二局書き込み準備
   クッキー=二局クッキー取得。
   まるクッキー=まるクッキー取得。
 ●二局承諾書き込み
   HEAD=空。BODY=空。応答=空。
   HEAD=「Referer: http://{サーバー}/{フォルダ}/{\n}User-Agent: Monazilla/1.00 (kage/1.00){\n}{クッキー}」。
   BODY=「name={空}&FROM={ネーム}&mail={メール}&MESSAGE={本文}&bbs={フォルダ}&time={二局タイム}&key={スレ番号}」。
   
   もし、まる0=はいならば
     もし、まるクッキーのバイト数>20ならば
       BODY=BODY&「&sid={まるクッキー}」。
   BODY=BODY&「&suka=pontan&submit=上記全てを承諾して書き込む」。
   
   エラー監視、応答=HEADとBODYを「http://{サーバー}/test/bbs.cgi」へHTTPポスト。
   エラーならば、「-1」で戻る。//鯖反応なし
   もし、応答=空ならば、「-2」で戻る。
   もし、(「<title>」から「</title>」まで範囲切り取る)=「書きこみました。」ならば「2」で戻る。//成功
   応答の「<!--」から「-->」まで範囲切り取る。空白除去。
   もし、それ=「2ch_X:true」ならば、「1」で戻る。//成功
   もし、それ=「2ch_X:cookie」ならば、「-2」で戻る。//クッキー古い
   違えば、「-3」で戻る。//失敗
   
 #-----------------------------------------------------------------------
 //↑ここまで
 #-----------------------------------------------------------------------

*//サンプルプログラム
 //書き込みスレ定義-------------------------------
 二局について
   名前欄=「」。
   メール欄=「sage」。
   本文欄=「( ^ω^)おっおっお」。
   //スレの例↓
   カキコスレ=「http://changi.2ch.net/test/read.cgi/voice/1213349430/」。
 //こちらでも可
 //  ホスト名=「nadesiko.2ch.net」。
 //  板キー=「nadesiko」。
 //  スレキー=「1234567890」。
   BEログイン=いいえ。
   BEメールアドレス=「」。
   BE認証コード=「」。
 
 //使うときはwstunnelを起動しておくこと  HTTP 25745 2chv.tora3.net 443
 //http://www1.orangesoft.co.jp/wstunnel/
   まるログイン=いいえ。
   まるID欄=「」。
   まるパス欄=「」。
 //書き込みスレ定義ここまで-----------------------
 
 
 //準備
 二局書き込み準備。
 //書き込み
 二局書き込み。
 //確認
 応答を表示。
 
 
 ###おまけ 【延々と30秒毎に書きこみ続ける保守ツール】
 ##二局書き込み準備
 ##1の間
 ##  二局書き込み。
 ##  もし、それ=「-2」/*クッキー古いよ*/ならば
 ##    二局書きこみ準備。二局書き込み。
 ##  30秒待つ。

----
- 2chTVをこうりゃくしてくれ~  -- 2chコーチ  (2009-08-17 18:43:01)
- 民主党は国会主義に対する反対主義です!皆さんのご返答待ちします  -- 糞すぎわろたです  (2009-08-17 18:44:51)
#comment()

----

復元してよろしいですか?

ツールボックス

下から選んでください:

新しいページを作成する
ヘルプ / FAQ もご覧ください。