1 名前:nobodyさん [2009/09/27(日) 14:15:59 ID:Dz08qoo4] 見当たらなかったので立ててみた [公式] twitter.com/ [Twitter 開発ブログ 日本語版] twitterjp.blogspot.com/ *どの言語でもOKですがソースを書く際は何の言語なのかも記載してください。 *初心者のために、なるべくぶつ切りのソースではなく全体的に載せてほしいです。
871 名前:nobodyさん mailto:sage [2010/01/09(土) 00:08:52 ID:???] >>870 自分もその表示が出て、対処方法が全然判らなかったから 一度全部消して、また最初からやり直したらいけたよ。 全然参考になってないけど…体験者より。
872 名前:nobodyさん mailto:sage [2010/01/09(土) 00:09:55 ID:???] >>871 マジか・・・
873 名前:nobodyさん mailto:sage [2010/01/09(土) 00:15:30 ID:???] ついったは人工無能の分野でも研究対象になんのかな
874 名前:nobodyさん mailto:sage [2010/01/09(土) 00:19:34 ID:???] ぜんぜんならない、効率悪い。 しかし、話題性があるから薄っぺらな内容でも 凄い事のようにマスコミが持ち上げてくれる。
875 名前:nobodyさん mailto:sage [2010/01/09(土) 00:26:56 ID:???] シグネチャ作るときのURLが固定だったのが原因だった 直したらTweetできたやったあああああああ
876 名前:nobodyさん mailto:sage [2010/01/09(土) 01:43:50 ID:???] >>869 PHPにアクセスするとしょっちゅうタイムアウトエラーが出るんだけど、これもそのせいかな? そのおかげでcronがちゃんと動いていてもポストされないみたいなんだ
877 名前:nobodyさん mailto:sage [2010/01/09(土) 02:05:23 ID:???] >>876 869じゃないけどたぶんそのせいだと思う。 cron-jobはただ単に指定したURLを叩くだけだったから、特に削除されるとかないし組み合わせ的には最適だったと思うよ。
878 名前:nobodyさん mailto:sage [2010/01/09(土) 04:04:37 ID:???] >>860-868 あたりを読んで自分なりに実装したんだけどちっとも動いてくれない…。 //ポスト部分の関数 // OAuthオブジェクト生成 $to = new TwitterOAuth($consumer_key,$consumer_secret,$access_token,$access_token_secret,$message); function tweet($username,$password,$id) { $message = urlencode($message); $ch = curl_init(); ★$req = $to->OAuthRequest("https://twitter.com/statuses/update.xml",array("status"=>"$message"),"POST"); curl_close($ch); } header("Content-Type: application/xml"); echo $req; という風にしたら「Fatal error: Call to a member function OAuthRequest() on a non-object in★の行」というエラーが出てきてしまう…。 OAuthでリプライできてる方、ポスト部分はどうなってますでしょうか。 鯖はロリポでPHP5みたいです。
879 名前:nobodyさん mailto:sage [2010/01/09(土) 04:05:19 ID:???] わあなんだか余計な改行が挟まれてる 見にくくてすいません…
880 名前:nobodyさん mailto:sage [2010/01/09(土) 11:14:41 ID:???] >>878 function tweet$username,$password,$id)を、 function tweet($consumer_key,$consumer_secret,$access_token,$access_token_secret,$message,$to)にするか、 $toをfunction内に書けば多分エラーが出なくなるはず urlencodeは書いておいたほうがいいかもしれないけど、とりあえずcurlは書かなくておk でもこれだといちいち呼び出さなきゃいけないから、適当なところに$toと$reqを書いたほうが楽だし軽くなると思う
881 名前:nobodyさん mailto:sage [2010/01/09(土) 12:06:30 ID:???] ここの人たちはわかってるんだろうけど、最近は特定ワードを拾ってきて 無差別でフォローしてない相手にもリプライするbotが目に付くようになったね。 ああいうつまんないことで反感買って印象悪くするのは避けたいもんだね。
882 名前:nobodyさん mailto:sage [2010/01/09(土) 12:08:43 ID:???] プログラミングができなくても〜を参考にbot作ってます。 話しかけられた時、指定した単語が入ってないと「もう一回言って?」みたいな反応させたいんだけど、 こういう時はどうすればよいですか。
883 名前:nobodyさん mailto:sage [2010/01/09(土) 12:27:07 ID:???] >>882 話しかけられた内容に指定ワードがあるかを検索したらいいだけだと思うが
884 名前:nobodyさん mailto:sage [2010/01/09(土) 12:55:12 ID:???] >>882 phaさんが設置したbot用掲示板に書いてある すこしはログ見るとかしてみないか?
885 名前:882 mailto:sage [2010/01/09(土) 12:59:27 ID:???] 本当だ、ちゃんと見てなかった・・・失礼しました
886 名前:nobodyさん mailto:sage [2010/01/09(土) 15:19:11 ID:???] 8bitさんのスクリプトをOAuthで動かしたくていろいろ弄ってるんだけどうまくいかない 「ライブラリを読み込む」の部分をSDNさんの「twitterOAuth.phpを読み込む」に 「Twitterからタイムラインを取得」をSDNさんの「例えば、TLを取得するのなら」に それぞれ変更してるんだけど Warning: array_reverse() [function.array-reverse]: The argument should be an array in /home~.php on line 33 ($reply = array_reverse($reply);の行) Warning: Invalid argument supplied for foreach() in /home~.php on line 41 (foreach($reply as $rep){ の行) というエラーが出る。これってTLが読み込めてないってことなのかな? もしかしたら全然見当違いなことしてるかもしれない・・・
887 名前:nobodyさん mailto:sage [2010/01/09(土) 15:55:13 ID:???] 自分宛以外のリプレイで「@nantoka こんにちわ」という文にbotが「こんにちわ」に 反応しないようにするにはどうしたらいいのでしょうか… if( $screen_name == $username){ //POSTが自分のPOSTだった場合にサブルーチンから抜ける return; } if( preg_match("/\@$username/",$text)){ //POST内容に「/」で囲まれた中で書かれた文字列(この場合$username=@botのアカウント(自分へのリプライ))を探し、あった場合に次の処理に入る。無かったら対応する括弧以降へ飛ぶ if( preg_match("/RT/",$text)){ //POST内に「RT」があるかどうか調べる return; //「RT」がPOST内にあったので、処理を中断してサブルーチンから抜ける } ここらへんを変更するのかな?と思って色々触ってるのですが、どうしてもできません…
888 名前:nobodyさん mailto:sage [2010/01/09(土) 17:27:25 ID:???] >>880 ありがとうございます。 ttp://mini.bitter.jp/oauth_reply.txt アドバイスを見ながら書いてみたものが上のURLの物になります($toをfunction tweet()の下に入れてみました) が、このようにすると XML パースエラー: 要素が見つかりません。 URL: http://〜oauth_reply.php 行番号: 1, 列番号: 1: というエラーが出てきてしまいます。このエラーでググってみてもイマイチこの場合と結びつかないというか…。
889 名前:nobodyさん mailto:sage [2010/01/09(土) 20:41:00 ID:???] oAuthにむりに固執しなくていいんじゃない?
890 名前:nobodyさん mailto:sage [2010/01/09(土) 21:58:48 ID:???] 6月以降はベーシック認証が「非推奨」になるんだっけ どうしたもんかな…
891 名前:nobodyさん mailto:sage [2010/01/09(土) 22:17:16 ID:???] きちんと検証してないけど、こんな感じで動かないかな? <?php $username = "1111"; $key = "3333"; $consumer_key = "4444"; $consumer_secret = "5555"; $access_token = "6666"; $access_token_secret = "7777"; $filename = "data/data.dat"; $host = "twitter.com/statuses/mentions.xml "; $fp = @fopen($filename,'rb') or die("ファイルが開けません"); flock($fp, LOCK_EX); $line = fgets($fp, 64); fclose($fp); if(!empty($line)){ $last_id=$line; }else{ $cnt = "1"; } $XML = getObjOAuth($host,$cnt,$last_id,$consumer_key,$consumer_secret,$consumer_secret,$access_token,$access_token_secret);
892 名前:nobodyさん mailto:sage [2010/01/09(土) 22:18:02 ID:???] >>891 の続き $i = count($XML)-1; $j = 0; while($i >= $j) { $var = $XML->status[$i]->text; $com = ereg_replace("\@$username", "", $var); $id= $XML->status[$i]->id; $reply_name = $XML->status[$i]->user->screen_name; $name = $XML->status[$i]->user->name; $message = serif($reply_name,$name,$com); //かえって来た値がnullじゃない場合のみ投稿する if ($message != null){ tweetOAuth($message,$id,$key,$consumer_key,$consumer_secret,$consumer_secret,$access_token,$access_token_secret); } $i--; } $string = $XML->status[0]->id; if(!empty($string)){ $dat = (string)$string; file_put_contents($filename,$dat,LOCK_EX); } function serif($reply_name,$name,$com){ (省略) }
893 名前:nobodyさん mailto:sage [2010/01/09(土) 22:19:03 ID:???] >>892 の続き //OAuth経由でTwitterに投稿する function tweetOAuth($message,$id,$key,$consumer_key,$consumer_secret,$consumer_secret,$access_token,$access_token_secret){ require_once("twitterOAuth.php"); $message = mb_convert_encoding($message, "UTF-8","ASCII,JIS,UTF-8,EUC-JP,SJIS"); // OAuthオブジェクト生成 $to = new TwitterOAuth($consumer_key,$consumer_secret,$access_token,$access_token_secret); // TwitterへPOSTする。パラメーターは配列に格納する $req = $to->OAuthRequest("https://twitter.com/statuses/update.xml",array("status"=>$message,"in_reply_to_status_id"=>"$id"),"POST"); } //OAuth経由でTwitterから取得 function getObjOAuth($host,$cnt,$last_id,$consumer_key,$consumer_secret,$consumer_secret,$access_token,$access_token_secret){ require_once("twitterOAuth.php"); // OAuthオブジェクト生成 $to = new TwitterOAuth($host,$consumer_key,$consumer_secret,$access_token,$access_token_secret); // TwitterからGETする if(($cnt != null)&&($last_id != null)){ $req = $to->OAuthRequest($host,array("count"=>$cnt,"since_id"=>$last_id),"GET"); }else if(($cnt != null)&&($last_id == null)){ $req = $to->OAuthRequest($host,array("count"=>$cnt),"GET"); }else if(($cnt == null)&&($last_id != null)){ $req = $to->OAuthRequest($host,array("since_id"=>$last_id),"GET"); }else{ $req = $to->OAuthRequest($host,array(),"GET"); } $req_array = simplexml_load_string($req); return $req_array; } ?>
894 名前:nobodyさん mailto:sage [2010/01/09(土) 22:31:57 ID:???] >>887 8bitnoteさんとこのスクリプトだと思うけどそこは関係ないよ その下の elseif( preg_match("/眠い/",$text)){ //上記で調べた自分へのリプライがなかった場合にこの処理に移る。POST内容に眠いが含まれていたら次の処理に移る の前に@が含まれるpostを弾く処理を入れればいいはず
895 名前:888 mailto:sage [2010/01/10(日) 01:00:53 ID:???] >>891-893 ソースありがとうございます! 891さんのソースをコピペして動かしてみた結果、Arrayという文字だけはPOSTしてくれるようになりました。 もうちょっとどうにかしてこようとおもいます。 ありがとうございました!
896 名前:nobodyさん mailto:sage [2010/01/10(日) 01:20:14 ID:???] >>894 回答ありがとうございます このPHPにはbotへの@リプライとTLから特定単語を拾ってリプライする動きを書いてます @が含まれるpostを弾くと、このbotへのリプライに反応する事ができなくなってしまいます… また if( $screen_name != $username){ //POSTが自分のPOSTではなかった場合にサブルーチンから抜ける return; } を打ってみたのですがやはりエラーが出ました
897 名前:nobodyさん mailto:sage [2010/01/10(日) 01:56:39 ID:???] >>896 「botへのリプライ以外の」@を弾くだけだから大丈夫なはずだけど… ちなみにうちではこんな感じで、反応語のチェックはswitchで書いてる if( $screen_name == $username){ //POSTが自分のPOSTだった場合にサブルーチンから抜ける return; }if( preg_match("/\@$username/",$text)){ //POST内容にry (略) }elseif(! preg_match("/^[0-5]{0,1}$/",$now_g)){ //botが寝てる0〜5時台でなければTL反応させる switch(true){ case preg_match("/\@/",$text) : return; //他の人への@ならサブルーチンから抜ける←これでbot宛以外のリプライには反応しない break; (略) default : return; break; } } else{return;}
898 名前:nobodyさん mailto:sage [2010/01/10(日) 05:42:07 ID:???] >>891 の通りにやってみたら、PHPにアクセスすると真っ白の画面が出るようになってしまった エラー表示されないから何が何だか・・・
899 名前:nobodyさん mailto:sage [2010/01/10(日) 05:42:42 ID:???] >>891 の $username = "1111"; $key = "3333"; が何だかわからないんだけど、ごめん参考元?ってなにになるのかな?
900 名前:nobodyさん mailto:sage [2010/01/10(日) 10:42:09 ID:???] >>899 えっ
901 名前:nobodyさん mailto:sage [2010/01/10(日) 12:03:57 ID:???] >>899 ごめん$key要らない・・・ 自分は複数BOT作ってて複数でも使いまわせるようにしてるんで、その名残だ 要らないところ削除して直したつもりが残ってたみたい
902 名前:nobodyさん mailto:sage [2010/01/10(日) 12:17:50 ID:???] >>898 >>891 のソースにはどこにも出力命令が無いんだから ブラウザでアクセスして何も表示されないのは当たり前だろ
903 名前:nobodyさん mailto:sage [2010/01/10(日) 16:18:50 ID:???] >>902 ごめん。真っ白になるだけでポストしないからどこかにエラーが出るはずだと思ったんだけど さっき確認したら今まで普通に動いていた別のスクリプトでも同じ現象が起こった そっちは弄ってないから原因は>>891 ではないみたい
904 名前:nobodyさん mailto:sage [2010/01/10(日) 23:13:36 ID:???] 自動フォロー返し時にDM送るようにしてるんだけど たまにフォローだけしてDM送られなかったりフォロー失敗してDMだけ送られたりする この問題解消するときってどうすりゃいいのかな
905 名前:nobodyさん mailto:sage [2010/01/11(月) 17:34:10 ID:???] すみません初心者で簡単な質問ですが、分かる方は教えて頂けると助かります… (例)「おかえり、今日の夕飯は○○ですよ」 という文章で、○○の部分をランダムで変えたいのですがプログラムが分かりません $mesi = array("和食","洋食","中華"); と書いて、 $mes['night'] = array( //夜の時間に発言 "おかえり、今日の夕飯は $mesi ですよ"); とやっているのですが、「おかえり、今日の夕飯はArrayですよ」と表示されてしまいます
906 名前:DAWNTO_Windy-melt ◆Windy/f9HNwg mailto:sage [2010/01/11(月) 17:40:24 ID:???] >>905 > $mesi = array("和食","洋食","中華"); > > と書いて、 > > $mes['night'] = array( //夜の時間に発言 > "おかえり、今日の夕飯は $mesi ですよ"); $mesi = array("和食","洋食","中華"); $num = array_rand($mesi,1); $mes['night'] = array( "おかえり、今日の夕飯は $mesi[$num] ですよ"); でいいと思う。
907 名前:nobodyさん mailto:sage [2010/01/11(月) 18:02:52 ID:???] >>906 早い回答ありがとう! ついでに聞いておきたいんですが、$num = array_rand($mesi,1);の1ってなんの意味? この中から1つ選ぶ…って事?
908 名前:nobodyさん mailto:sage [2010/01/11(月) 18:07:19 ID:???] つ公式PHPマニュアル
909 名前:nobodyさん mailto:sage [2010/01/11(月) 18:12:07 ID:???] API叩いた後に応答情報あるでしょ。 それが正しく帰ってきてればOKでいいじゃん。
910 名前:nobodyさん mailto:sage [2010/01/11(月) 18:25:16 ID:???] php叩いても成功した時はなにも文章が出てきません… そしてまた行き詰ったんだが、>>906 やり方でやってみたら ときどき何もランダム単語表示されない時がある… 「おかえり、今日の夕飯は ですよ」 みたいな感じ
911 名前:nobodyさん mailto:sage [2010/01/11(月) 18:36:05 ID:???] 飯抜きだったんだよ
912 名前:nobodyさん mailto:sage [2010/01/11(月) 23:35:54 ID:???] だれうま
913 名前:nobodyさん mailto:sage [2010/01/11(月) 23:48:16 ID:???] >>910 だが、自力でどうにかなった >>906 の方法じゃないけどなぜか出来たのでこれで十分だ
914 名前:nobodyさん mailto:sage [2010/01/12(火) 01:54:55 ID:???] 自己解決したままじゃなくてどうやって解決したまで書かないと
915 名前:nobodyさん mailto:sage [2010/01/12(火) 06:32:37 ID:???] >>849 ですが8bitさんのスクリプトを使ってみたらさくらでもcron消されませんでした GAEやろうとして行き詰まってたところだったから助かった!
916 名前:nobodyさん mailto:sage [2010/01/12(火) 19:19:52 ID:???] @をもらうとおみくじを返す系のbotを製作中の初心者です。 phpを2分おきにGAEのcronで叩いてるんですが、タイムアウトにひっかかっているらしく、 たとえば30分以内の@に対しおみくじを返すように設定しても15回中5〜8回程度しか返って来ません。 これを「ひとつの@につきひとつのリプライを返す」というふうに、php側で処理することは可能でしょうか? GAEのtask queuesも試してみたんですが、This queue is empty.と出て動きません。 きっと非常に初歩的なミスをしているのだと思いますが、どちらかについてご存知の方は ご助言をお願いしますorz
917 名前:nobodyさん mailto:sage [2010/01/12(火) 19:59:34 ID:???] リプライしても無視し続けたらボットだってバレるかな?
918 名前:nobodyさん mailto:sage [2010/01/12(火) 21:19:02 ID:???] >>916 重くなってる処理はないか確認してみる GAEはだいたい4~8秒くらいでタイムアウトになるからその分処理を軽くしなければならないよ まあ晒せる範囲でソース晒してみたら
919 名前:nobodyさん mailto:sage [2010/01/12(火) 23:28:49 ID:???] >>916 同文の投稿制限にひっかかってるとかもあるんじゃないのか
920 名前:nobodyさん mailto:sage [2010/01/14(木) 15:32:58 ID:???] 投稿関係でうまくいかないときって、連投規制に引っかかってることが多いよ
921 名前:nobodyさん mailto:sage [2010/01/14(木) 19:33:13 ID:???] ttp://www.setcronjob.com/って今 @pages使ってる人だと動き不安定? 一度削除して登録し直そうとしてもタイムエラー出るんだが…
922 名前:nobodyさん mailto:sage [2010/01/14(木) 22:14:43 ID:???] >>921 さくらでもタイムエラー出る…
923 名前:nobodyさん mailto:sage [2010/01/14(木) 22:16:36 ID:???] サーバー自体がおかしいのかね demoでログインしたらサーバーのcp.phpが入ってた チェック中なのかな?明日には直ってくれるといいね
924 名前:nobodyさん mailto:sage [2010/01/14(木) 22:16:37 ID:???] 途中送信した。 今まで調子よかったのになんで急に…入金したばっかりなのに
925 名前:nobodyさん mailto:sage [2010/01/14(木) 22:51:55 ID:???] SetCronJobはもう、このURLに達することができません。 誤り: 接続は外で調節しました。 有料垢だろうがjpドメインの鯖を規制してるっぽい。
926 名前:nobodyさん mailto:sage [2010/01/14(木) 22:57:00 ID:???] えええ金取ってそれって詐欺じゃん
927 名前:nobodyさん mailto:sage [2010/01/14(木) 23:06:05 ID:???] 垢自体は凍結されてないので@PAGEからXREAに変えたら使えた。
928 名前:nobodyさん mailto:sage [2010/01/14(木) 23:11:02 ID:???] 申し訳ございません。 現在、一般向け無料サーバーの募集は行っておりません。 次期募集をお待ち下さい。 XREA…(´・ω:;.:...
929 名前:nobodyさん mailto:sage [2010/01/14(木) 23:27:59 ID:???] 完全に金かけずにやるのはもう厳しいな
930 名前:nobodyさん mailto:sage [2010/01/14(木) 23:30:28 ID:???] >>845 詳しい作り方をblogとかに公開すればアクセス稼げるよきっと
931 名前:nobodyさん mailto:sage [2010/01/15(金) 00:30:49 ID:???] URL転送サービスでURL変えて登録だと動かない?
932 名前:nobodyさん mailto:sage [2010/01/15(金) 01:11:26 ID:???] GAE使えば無料じゃないか
933 名前:DAWNTO_Windy-melt ◆Windy/f9HNwg mailto:sage [2010/01/15(金) 01:56:33 ID:???] どうも。cronのクローン作るとか言っていた香具師です。 sendmail,postfixが言う事を聞かないのでメールに頼らない認証方法を確立したいのですが、どうすれば良いでしょう…(人任せ) せっかくTwit専用なのだしtwitterのアカウント経由で認証するのもありだと思います。 そうすれば管理もtitter経由で可能になりますし。 いかがでしょう。
934 名前:nobodyさん mailto:sage [2010/01/15(金) 01:59:48 ID:???] SetCronJobの有料垢だけど、管理者からメールきてて jpドメインでも使えるようにする案と、場合によっては返金するよって内容のものだった。 自分は自力で使えるようになったけど一応、対応はしてくれるみたいでちょっと安心した
935 名前:nobodyさん mailto:sage [2010/01/15(金) 02:03:03 ID:???] 無料でもjpドメイン使えるようになって欲しいな…
936 名前:nobodyさん mailto:sage [2010/01/15(金) 13:49:35 ID:???] phaさんのリプライスクリプトにGAEを組み合わせて使ってるんだけど、 スクリプト中の「何分以内にもらったリプライを読み込む」を2分に、GAEのcronファイルも2分毎に更新にしてあるんだけど、どうも取りこぼしがあるみたいなんだよね。 そういうもん?
937 名前:nobodyさん mailto:sage [2010/01/15(金) 14:01:44 ID:???] そうでもない
938 名前:nobodyさん mailto:sage [2010/01/15(金) 14:08:56 ID:???] >>936 GAEが誤差があるからな $limittime = $now - $cron * 60; ここを変えれば良い 自分は62にしてる それでも取りこぼしはあるけどね あまり秒数を増やすと今度は2重投稿しちゃうよ
939 名前:nobodyさん mailto:sage [2010/01/15(金) 15:58:06 ID:???] ttp://www.onlinecronjobs.com/ アメリカのでこんなの見つけたけど、使えない?
940 名前:nobodyさん mailto:sage [2010/01/15(金) 16:38:38 ID:???] @pages使いでFree Web Cron Serviceでcron設定してるんだけど 一切反応しない… 5分間隔と20分間隔にしているんだけど何が原因なんだろう
941 名前:nobodyさん mailto:sage [2010/01/15(金) 17:04:16 ID:???] 今人間と会話できるbot作ってるんだけど、アルゴリズムが難しいんだ。 特に感情を持たせるにはどうすればいいかアイディアをくれないか? 一応疑問文に応答するアルゴリズムは大方できてるんだ。 問題は人間らしい感情をどうやって持たせるかなんだ。
942 名前:nobodyさん mailto:sage [2010/01/15(金) 19:36:41 ID:???] >>938 おーありがとう! ためしてみますー
943 名前:nobodyさん mailto:sage [2010/01/15(金) 19:42:55 ID:???] >>941 そいつに死ねと言ったら死ぬかな?
944 名前:DAWNTO_Windy-melt ◆Windy/f9HNwg mailto:sage [2010/01/15(金) 22:00:57 ID:???] >>941 感情のパラメータを作成して、単語ごとにエモーショナルレベルを設けて喜、哀、憂、怒などに数値を加算して表現してはいかがか
945 名前:nobodyさん mailto:sage [2010/01/15(金) 22:07:19 ID:???] date_default_timezone_set('Asia/Tokyo'); $today = getdate(); $day1 = (55-date(z)); で日付取得と残り日数を計算して 今日は${today['mon']}月${today['mday']}日です。〜〜まであと".$day1."日です っていうカウントダウンをポストしているんだが、定期だとうまく行くんだがリプレイだと日付が取得できないんだ。 リプライに対応するためにはソース書きなおさなきゃだめなのかな?
946 名前:nobodyさん mailto:sage [2010/01/15(金) 22:25:00 ID:???] なんでリプライだと日付が取得できんの?
947 名前:nobodyさん mailto:sage [2010/01/15(金) 23:08:29 ID:???] 今日は${today['mon']}月${today['mday']}日です。〜〜まであと".$day1."日です 今日は月日です。〜〜まであと日です。 ってなるんだ。 理由は私が聞きたい\(^O^)/
948 名前:nobodyさん mailto:sage [2010/01/15(金) 23:32:27 ID:???] 両脇に半角スペース入れてみたら? 私も同じような事なった事あるけど、半角スペース入れたら直ったよ
949 名前:DAWNTO_Windy-melt ◆Windy/f9HNwg mailto:sage [2010/01/15(金) 23:49:40 ID:???] >>947 ""でくくらなくてよくないか? ""の中に直接変数を書き込めなかったっけ "〜〜まであと$day日です"でおkだったと思う
950 名前:nobodyさん mailto:sage [2010/01/16(土) 00:08:39 ID:???] >>947 引数が渡ってないとかじゃないかな 取得をまるっとユーザー関数の内側に入れてみてはどうだろう 見当違いだったらごめん
951 名前:nobodyさん mailto:sage [2010/01/16(土) 10:17:49 ID:???] >>947 その中の変数を取得してから表示するまで処理ごとに表示してみればいんでないの。
952 名前:nobodyさん mailto:sage [2010/01/16(土) 10:18:47 ID:???] 変数のセットが関数外で、表示は関数内なのにglobal宣言してないとかはよくある話。
953 名前:nobodyさん mailto:sage [2010/01/16(土) 12:33:09 ID:???] フレンド発言取り込んでマルコフ連鎖にしてるbot作ってみてるけど URLとかRTとかノイズ除去するのがわりと手間だね。
954 名前:nobodyさん mailto:sage [2010/01/16(土) 21:29:27 ID:???] >>944 なるほどフムフム
955 名前:nobodyさん mailto:sage [2010/01/16(土) 23:38:57 ID:???] 1つのbotに絡み続けるbotを作ってるんだけど bot製作のblogとか見ながら作ると「1人の人への連続replyはしない」ようになってるから 誰かを間に挟まないと(もしくはdata.txtの中身を消さないと)リプライしてくれない。 どうすればいいかわからん・・・。誰か教えてください
956 名前:nobodyさん mailto:sage [2010/01/16(土) 23:59:48 ID:???] どのブログを見てどういうbotを使ってんのか説明してもらわんとエスパーじゃないんでわからんよ。
957 名前:nobodyさん mailto:sage [2010/01/17(日) 00:09:41 ID:???] >>956 ああすまん。「銀さんのbot」と「プログラミングを始める〜」を参考に 設置サーバーも銀さんと同じところにしてる。 とあるbotが特定の言葉をつぶやいたら、それに@で返信させるようにしたいと思ってる TLに反応させてリプライさせる「プログラミングを〜」にあったものをほぼコピペしてます
958 名前:DAWNTO_Windy-melt ◆Windy/f9HNwg mailto:sage [2010/01/17(日) 00:33:33 ID:???] 自分のブログにも書いたりしてますが、cron-jobのクローンの設定法はtwitter経由でいいですか? botに発言してスケジュール管理です。
959 名前:nobodyさん mailto:sage [2010/01/17(日) 00:41:40 ID:???] botにfollowers抜かれた\(^o^)/
960 名前:nobodyさん mailto:sage [2010/01/17(日) 00:42:19 ID:???] >>957 落ちついて処理を一歩一歩理解するんだ それでも分からなかったら聞け
961 名前:nobodyさん mailto:sage [2010/01/17(日) 03:12:32 ID:???] >>827 >>829 と同じようにGAEが起動できなくなってしまったんだが… 原因がわからん。わかる人いないかな…
962 名前:nobodyさん mailto:sage [2010/01/17(日) 03:18:45 ID:???] Google App Engine 2アプ目 pc11.2ch.net/test/read.cgi/php/1243654802/
963 名前:nobodyさん mailto:sage [2010/01/17(日) 03:27:36 ID:???] ボットジェネレーターの質問とかもここでしていいの?
964 名前:nobodyさん mailto:sage [2010/01/17(日) 05:30:18 ID:???] ttp://mukurobot.blog101.fc2.com/blog-entry-5.html ここの記事のカッコに囲われた文字のみをオウム返しする機能を付けたいんだけど phaさんのスクリプトじゃなくてbardothodolさんのスクリプトで対応させる方法がわかりません 最初そのままつっこんでみたけどやっぱり動かなかったので教えてください
965 名前:nobodyさん mailto:sage [2010/01/17(日) 09:00:07 ID:???] 動かない時はエラーメッセージを読もう
966 名前:964 mailto:sage [2010/01/17(日) 09:19:39 ID:???] エラーは出てなくて、特定ワードを含まない時のリプライが返ってきたんだ bardothodolさんのとこのと色々当てはめてやってみたんだけど $replies2も$iも見当たらなくて何に当てはめ直せばいいのかがわからなかったorz もうちょっと睨めっこしてみます
967 名前:nobodyさん mailto:sage [2010/01/17(日) 09:36:11 ID:???] そういう時は変数の中身を出力してみてどこで想定外の動作になっているか確認するんだ
968 名前:nobodyさん mailto:sage [2010/01/17(日) 09:41:25 ID:???] ボットジェネレーターの質問もここでいいのかわからないけど質問。 たとえば「おはよう」に対して「おはよう」と「グッドモーニン」の二種類のリプで返したい場合、 「おはよう」を受け取ると「おはよう」と返信 「おはよう」を受け取ると「グッドモーニン」と返信 こう二行やるのと 「おはよう」を受け取ると「おはよう","グッドモーニン」と返信 こうやるの、どっちがちゃんと動くんでしょうか
969 名前:nobodyさん mailto:sage [2010/01/17(日) 09:49:32 ID:???] そのBOTのコードによる
970 名前:nobodyさん mailto:sage [2010/01/17(日) 11:32:40 ID:???] >>827 >>961 自分もエラーが出てGAE Launcher動かないんだが コマンドプロンプトにコマンド直打ちでデプロイ出来たよ
971 名前:nobodyさん mailto:sage [2010/01/17(日) 12:50:08 ID:???] >968ですが自己解決しました。前者で動くみたいです。 スレ汚し失礼しました。
972 名前:nobodyさん mailto:sage [2010/01/17(日) 14:01:44 ID:???] GAEのcronでリプライに反応するプログラム動かすと、失敗ばっかりしてる。 スクリプトが重いのかな
973 名前:nobodyさん mailto:sage [2010/01/17(日) 23:27:52 ID:???] >>972 そうだね
974 名前:nobodyさん mailto:sage [2010/01/18(月) 00:50:08 ID:???] >>972 Twitterに単純にPostするだけのスクリプトと比べて重いの?
975 名前:nobodyさん mailto:sage [2010/01/18(月) 02:18:12 ID:???] ttp://d.hatena.ne.jp/bardothodol/20090930#p1 ここのソースを借りてTL上の単語に反応するようにしたいと思っています。 手動でブラウザからphp叩けばきちんと動くんですが cronで叩くと「ファイルが開けません 」というメールが返って来てしまい、動作しません ソース見た限りではおそらくdatファイルが開けないという事だと思うんですが… 手動でやる分には問題無いのでcron側の問題でしょうか メールでphpのエラーメッセージを持ってきているので cronの実行コマンドのファイルパスは合っていると思います。 プログラミング・cron等は全く手をつけたことがなくて、色々調べてみたのですが 分かりませんでした。 解決方法ご存じの方いらっしゃいませんでしょうか。
976 名前:DAWNTO_Windy-melt ◆Windy/f9HNwg mailto:sage [2010/01/18(月) 03:05:41 ID:???] >>975 ソースうpが原則です、その方がスグに解決しますよ
977 名前:nobodyさん mailto:sage [2010/01/18(月) 03:13:31 ID:???] パーミッション設定してないだけじゃねーの?
978 名前:975 mailto:sage [2010/01/18(月) 04:13:21 ID:???] >>976 失礼しました。ソースうpしました。 kissho.xii.jp/1/src/1jyou102317.txt 反応語句部分ところとusernameとpass以外いじってません。 >>977 パーミッションというとdatファイルのでしょうか?666に設定してあります。 これで手動ではきちんと動くんですが、もしかしてphpの方も設定しないといけないんでしょうか 試してみます。
979 名前:nobodyさん mailto:sage [2010/01/18(月) 13:08:22 ID:???] >>978 cronを使うと途端にファイルが開けなくなる場合は、ファイルのパス指定で間違えてるのがほとんど。
980 名前:nobodyさん mailto:sage [2010/01/18(月) 13:57:52 ID:???] スレ違いかもしれないけど、良かったら教えてほしい 今度マルコフ搭載したボット作ろうと思うんだけど、ちゃんと勉強したい プログラムを自分で組めるまではいかなくても、改変出来る程度の知識を身に付けたいと思ってる なんか良いおすすめの本とかあるかな? ちなみに自分のレベルは毛の生えた初心者
981 名前:nobodyさん mailto:sage [2010/01/18(月) 14:06:01 ID:???] プログラム全くわかんないならまずphp初心者スレでも見てあそこのテンプレのURL一通り見てくればいんじゃないの。 マルコフ連鎖とか形態素解析とかそういうのは最低限の土台できてからであって いきなりやろうとしてもろくなことにならんよ。
982 名前:nobodyさん [2010/01/18(月) 14:19:22 ID:scJ7qSxR] >>829 google_appengine_projects.ini を探して消す。
983 名前:nobodyさん mailto:sage [2010/01/18(月) 15:21:00 ID:???] bot製作者の方に質問なんですが よく解除するときはリムーブじゃなくブロックしてくれってあるのはどうしてですか? リムーブだとなにかまずいんでしょうか
984 名前:nobodyさん mailto:sage [2010/01/18(月) 15:27:16 ID:???] >>983 リムーブされてもbotからのフォローが残るからでは?
985 名前:nobodyさん mailto:sage [2010/01/18(月) 15:27:26 ID:???] >>983 管理が面倒臭いからじゃない? フォローしてる人に話しかけるタイプのbotだったりしたら リムられてるのに話しかけてしまうのは迷惑だろうから フォロワーとフォローは同じにしておきたいと思うんじゃないか
986 名前:975 mailto:sage [2010/01/18(月) 15:50:11 ID:???] >>979 cronの実行コマンドのパスでしょうか? 何度も確認してみたのですが、やはりファイルパスは合っています 正常に動くphpと同じディレクトリに入れてあるので、それをコピペしてファイル名書き換えてます 動いているもの→/usr/local/bin/php /home/*****/public_html/*****/post_random.php 動かないもの→/usr/local/bin/php /home/*****/public_html/*****/reply_tlget.php ちなみにphpのパーミッション設定も変えてみましたが、ダメだったようです。
987 名前:nobodyさん mailto:sage [2010/01/18(月) 16:19:57 ID:???] >>986 $filenameの方を絶対パスにしてみて
988 名前:975 mailto:sage [2010/01/18(月) 17:30:36 ID:???] >>987 それで動くようになりました!! 反応が不安定ですがとりあえず動くようになりました!! 不安定なのはphpの問題っぽいので自力で何とかしてみます 本当にありがとうございました!!
989 名前:nobodyさん mailto:sage [2010/01/18(月) 17:55:35 ID:???] >>988 >>979 だけど説明悪くてすまなかった
990 名前:nobodyさん mailto:sage [2010/01/18(月) 18:04:06 ID:???] >>980 相当難しくなると思う。 初心者ならまずphpでいろんなbot作って基礎を確実にして。 マルコフ連鎖もWikipediaだけではよくわからないと思う。 個人的に思うんだが、マルコフ連鎖を使って呟かせるより他の人の過去の呟きを拾ってbotに呟かせたほうがより人間っぽいと思う。まぁ楽しむ目的でbotつくるならマルコフ連鎖でもいいけど。
991 名前:nobodyさん mailto:sage [2010/01/18(月) 20:03:50 ID:???] そういや次スレはどうするんだ?
992 名前:テンプレ案1(GAEのがj.mpになってるのはURLが長かったから) mailto:sage [2010/01/18(月) 21:45:52 ID:???] プログラムとかわかりません>< twittbot.net/ Perl search.cpan.org/dist/Net-Twitter/ PHP pear.php.net/package/Services_Twitter labs.transrain.net/products/services_twitter/ Ruby twitter4r.rubyforge.org/ Java yusuke.homeip.net/twitter4j/ja/index.html プログラミングができなくても作れるTwitter botの作り方 pha22.net/twitterbot/ cron www.onlinecronjobs.com/ www.setcronjob.com/ https://mywebcron-com.loopiasecure.com/ cron-job.de/ GoogleAppEngineによるcron code.google.com/intl/ja/appengine/ j.mp/861dO8 d.hatena.ne.jp/deeeki/20091201/gae_register_account
993 名前:nobodyさん mailto:sage [2010/01/18(月) 21:49:46 ID:???] お邪魔します。phaさんの配布されている物を使って作成したbotなのですが、 複数件リプライを貰っているのに最新1件のリプライにしか反応(返事を)しない場合はどのような原因が考えられるでしょうか? ちなみに手動で叩いてみてもやはり最新1件のリプライにしか反応しませんorz
994 名前:nobodyさん mailto:sage [2010/01/18(月) 21:52:04 ID:???] >>993 そのプログラムのリプライ処理の部分を書いてくれ
995 名前:テンプレ案2 mailto:sage [2010/01/18(月) 21:52:59 ID:???] OAuth wolf.silk.to/labo/oauth.html (要curl) www.msng.info/archives/2010/01/twitter_api_oauth_with_php.php j.mp/5uaORh (curl不要その1) j.mp/7vP58W (curl不要その2) TwitterAPI日本語訳 watcher.moe-nifty.com/memo/docs/twitterAPI.txt 他に何かあったら追加ヨロ
996 名前:テンプレ案2 mailto:sage [2010/01/18(月) 21:53:43 ID:???] OAuth wolf.silk.to/labo/oauth.html (要curl) www.msng.info/archives/2010/01/twitter_api_oauth_with_php.php j.mp/5uaORh (curl不要その1) j.mp/7vP58W (curl不要その2) TwitterAPI日本語訳 watcher.moe-nifty.com/memo/docs/twitterAPI.txt 他に何かあったら追加ヨロ
997 名前:nobodyさん mailto:sage [2010/01/18(月) 21:53:44 ID:???] だれか次スレ立ててくれ
998 名前:nobodyさん mailto:sage [2010/01/18(月) 22:43:45 ID:???] >>978 * * * * * wget example.com/aaa.php ってやってる? * * * * * wget /var/www/path/to/aaa.php とかしてませんか?
999 名前:nobodyさん mailto:sage [2010/01/18(月) 23:19:20 ID:???] 立てた。 pc11.2ch.net/test/read.cgi/php/1263824322/
1000 名前:nobodyさん mailto:sage [2010/01/18(月) 23:22:38 ID:???] おまんこ
1001 名前:1001 [Over 1000 Thread] このスレッドは1000を超えました。 もう書けないので、新しいスレッドを立ててくださいです。。。