FC2ブログ

スポンサーサイト

上記の広告は1ヶ月以上更新のないブログに表示されています。
新しい記事を書く事で広告が消せます。

file_get_contentsでTwitter診断メーカー

前回エントリのTwitter診断メーカーをBotにやらせるサンプル
PEARのHTTP_REQUESTを使った方法なので
今回は file_get_contents を使ったTwitter診断メーカーです。
前回の記事を完コピ


EasyBotter内の makeReplyTimelineTweets
$re["status"] = "@".$reply_name." ".$status;  を 下記に上書きすれば大丈夫なはずです。

		switch(true)
		{
			//診断TL発言
			case stristr($status, "[[TL]]"):
				
				//5より上の値で診断を行わない
				$Disregard = mt_rand(1 , 10); //1~10の乱数を発生
				
				if( $Disregard > 5 )
				{
					continue 2;
				}
				
				
				$status = str_replace("[[TL]]" , "" , $status);
				
				//-----------診断メーカーをやる----------//
				$botTwitterId = $this->_screen_name;
				
				$id = preg_match("/shindanmaker.com\/(.*)\s/" , (string)$tweet->text , $post_date);
				
             //送信するデータ
				//"name属性名" => "送信データ"
				$data = array(
				    "u" => "".$botTwitterId."",
				);
				
				//送信データをURLエンコードする
				$data = http_build_query($data);
				
				//ヘッダーの作成
				$header = array(
				    "Content-Type: application/x-www-form-urlencoded",
				);
				
				
				$context = array(
				    "http" => array(
				        "method"  => "POST",
				        "header"  => implode("\r\n", $header),
				        "content" => $data
				    )
				);
				
				$url = "http://shindanmaker.com/".$id."";
				
				$data = preg_match("/status=+(.*)target/" , file_get_contents( $url, false, stream_context_create( $context ) ) , $post_data);
				
				$status = $post_data[1];
				$status = urldecode($status);	//読める文字にする
				$status = str_replace("\"" , "" , $status);		//二重引用符の削除
				
				if( stristr($status , "ツイッター診断メーカー") )	//誤爆した時に発言しない
				{
					//echo "診断メーカー失敗


"; unset($req); continue 2; } $re["status"] = $status; $rpid = (string)$tweet->id; //in_reply_status_idを出力する file_put_contents($this->_logDataFile,$rpid); unset($req); break; //その他 default: $re["status"] = "@".$reply_name." ".$status; }


また、タイムライン返信用のリプライパターンファイルには

    "http://shindanmaker.com/"=> array(
        "[[TL]]",
    ),
を追加

今回の参考
EasyBotter非公式Wiki

file_get_contentsでPOSTできる

file_get_contentsでPOSTデータ送信

スポンサーサイト
プロフィール

ルージュ

Author:ルージュ
TwiitterBotに一味足して好感度とか
色々な機能を、不適切に解説&配布

ファイルパスワードは orz

最新記事
カテゴリ
月別アーカイブ
リンク
最新コメント
FC2カウンター
上記広告は1ヶ月以上更新のないブログに表示されています。新しい記事を書くことで広告を消せます。