したらばTOP ■掲示板に戻る■ 全部 1-100 最新50 | |

Botの改造方法を紹介するスレ

27 名無しさん :2010/11/11(木) 03:13:47
整理age

28 りょう :2010/12/21(火) 02:08:13
if(!empty($this->_replyPatternData[$replyPatternFile])){
foreach($this->_replyPatternData[$replyPatternFile] as $pattern => $res){
if(preg_match("@"."おはよう"."@u",$reply->text, $matches) === 1){
$honbun = @file_get_contents('sample.html');
echo $honbun."読み取った際の値";
$honbun = mb_convert_encoding($honbun, "EUC-JP","AUTO");
if(get_magic_quotes_gpc()) { $honbun = stripslashes($honbun); }
$filename = "kusaisample.html";
$honbun = $honbun + 1000;
echo $honbun."読み取り後の値";
$handle = fopen( $filename, 'w');
fwrite( $handle, $honbun);
fclose( $handle );


break;
}
}
}


3週間近くこのコードとにらめっこをして悩んでいます。。。

ある特定の単語に反応して、テキストファイルに値を追加していく仕組みを作りたいのですが、どうもうまくいきません。
値を増加させることはできたのですが、
どうにも、特定の単語に反応させることができません。

どなたか、ご教授いただければ幸いです・・・。(泣きそうです

29 名無しさん :2011/01/16(日) 00:21:30
ニックネーム呼称機能。探しても見当たらなかったので作成&公開
もっとシンプルでやりやすく広まっている方法とかあったら教えてください。

Easybotter.php修正箇所
if(strpos($text,"{name}") !== FALSE){
if(!empty($reply)){
require_once 'name.php';
$userName = (string)$reply->user->screen_name;
echo $userName;
if($nameset[$userName]) {
$text = str_replace("{name}",$nameset[$userName],$text);
} else {
$text = str_replace("{name}",$reply->user->name,$text);
}
}else{
$randomTweet = $this->getRandomTweet();
$text = str_replace("{name}",$randomTweet->user->name,$text);
}
}

name.php(新規作成。勿論文字エンコはUTF-8で。)
<?php
$nameset["id1"] = "ほげおくん";
$nameset["id2"] = "ほげこさん";
?>


以上です。なんか●●って呼んで!!っていうと
その名前で呼んでくれるBOTもあるらしいので
その機能も追って追加したいです。

30 名無しさん :2011/02/01(火) 02:08:32
>>29

こちらのサイトを参考にされてはいかがでしょうか?
http://twbot.blogspot.com/2010_08_01_archive.html

「〇〇」って呼んでって言うと、それ以降は「〇〇さん」と呼んでくれるそうですが、
試してみたところ、さん付けにはなったんですが、名前は以前のままでした・・・
どっかが間違っていると思うので、それを今から調べてみるところです。

31 29 :2011/02/05(土) 05:23:27
>>30
ありがとうございます!!
あの後、○○って呼んで機能に対応すべく大改造を行い
PHPの参考書やサイト等を閲覧してなんとか実装しましたが
それでもこっちのバグを消してはあっちでバグが…みたいな状態で
半ば諦めかけていました。

そちらのサイトを参考に作成させて頂きます。

32 名無しさん :2011/05/06(金) 19:24:17
>>3
でEasyBotterにYahoo APIの形態素解析の導入の仕方が紹介されていますが、EasyBotterの旧バージョンでの導入の仕方なので、最新バージョンでの導入の仕方が紹介されているサイトなど、どなたかご存知ではありませんか?

33 名無しさん :2011/05/16(月) 22:40:49
>>32
http://www26.atwiki.jp/easybotter_wiki/pages/26.html

34 名無しさん :2011/08/05(金) 19:05:27
こちら、AGEておきます

35 初心者スレ712 :2011/08/09(火) 11:58:28
こちらのスレで合っているのか不安ですが…
初心者スレで質問したところ、頂いた回答を見る限りもう少し発展した内容であるようなので、こちらで質問させて頂くことにしました。

過去スレなどで検索をかけてみたのですが、なかなか見つからなかったので質問させていただきます。
もし私の見落としで似たような質問があったら、すみません。

【バージョン】Ver.2.05
【設置鯖名】 @Pages
【PHPのバージョン】不明
【手動】 動きます
【実行】 GAE-Cron Crubで提供されているもの
【実行間隔】 3分間隔
【不明点】少し長くなってしまいますが、下記のことについて質問させてください。

cronを3分に一回の周期で使っているのですが、TL返信の際に同じ相手に2回返事してしまいます。
一度対応語句に反応して、3分後に作動したときもう一度返信してしまう、ということです。

説明が下手ですいません。

たとえば、
A「おはようございます」(7:00)
bot「@A おはよう!」(7:00)
bot「@A おはよう!」(7:03)
となってしまうということです。

この二回目の返信をしないようにしたいのですが、いくつか条件があります。
まず、Aが次にツイートしたもののうちに、違う対応語句が入っていた場合にはTL返信できるようにしたい。
例)
A「おはようございます」(7:00)
bot「@A おはよう!」(7:00)
A「いってきます」(7:03)
bot「@A いってらっしゃい」(7:03)

二つ目に、リプライには反応するようにしたい。ただし、TL返信と同じように同一のリプライに反応はさせたくない。
○例)このような反応なら大丈夫です。
A「おはようございます」(7:00)
bot「@A おはよう!」(7:00)
A「@bot おはようありがとう。元気?」(7:03)
bot「@A 元気です」(7:03)

×例)このようにはしたくありません。
A「おはようございます」(7:00)
bot「@A おはよう!」(7:00)
A「@bot おはようありがとう。元気?」(7:03)
bot「@A 元気です」(7:03)
《ここでAが返信をしなかったとして》
bot「@A 元気です」(7:06)

条件が面倒ですみません。
すべての条件に当てはまらなくてもよいので、同一のツイートに反応しないようにするPHPを教えていただきたいです。

一応PHPの説明などは読んでみたのですが、
一定の時間内に何回リプライをもらったら返事を止める、などの記述は見つかったのですが、同じツイートに返事しないようにする、ということに当てはまった記述がなかなか見つけられなかったので質問させていただきました。
初歩的な質問なのかもしれませんが、回答お待ちしています。

36 名無しさん :2011/08/09(火) 16:23:35
>>35
ここは「紹介」スレ
実際の改造における質問は2.0スレ
板内で紹介された改造なら引用元提示すればいい

37 35 :2011/08/09(火) 17:04:18
>>36
すいませんでした…やはりスレチでしたか…
2.0の方で質問し直したいと思います。
なんども投稿してしまってすみません。

38 名無しさん :2011/08/12(金) 10:31:36
調整あげ

39 saorin :2011/08/31(水) 14:15:30
不景気だと騒がれていますが・・・(#^^)b。 http://tinyurl.k2i.me/Afjh

40 名無しさん :2011/09/25(日) 10:52:51
Ver2.05でも使える、相手の発言を拾ったりしてbotが学習していく方法を紹介しているところはありません?
フォロワーの方々にも好きな言葉を覚えさせてもらって、色々喋れるようにしていきたいんです

41 40 :2011/09/25(日) 10:53:59
あ、あげてなかった・・・どなたかお願いします

42 john3825 :2011/09/25(日) 14:10:13
>>6 を居間版のeasybotterではどうやって使うのですか?

43 名無しさん :2011/12/27(火) 17:43:04
>>30
そのサイト見れなかったんだけど…

44 名無しさん :2011/12/27(火) 19:22:54
半年以上前の書き込みに何いってんのw
そこをさらに改造した別のサイト(複数)でも紹介されてんじゃんwwww

45 名無しさん :2011/12/27(火) 22:53:49
>>44
いや、知りません
ここですよ、なんて教えてくれれば優しい方だなと思ったのですが…
まぁ、ネットの世界なんてそんなものですよね
教えて下さりありがとうございました

46 名無しさん :2011/12/28(水) 04:17:44
紹介スレであって教えてスレじゃないことに気付けないマルチポストまがいには
やさしい人でも教えてくれないと思いますよ
完全なるスレチな上に努力が足りない

47 しゅてるん :2012/04/08(日) 14:25:54
追加求!

48 名無しさん :2012/04/17(火) 10:52:07
空気読まずに。

Easy botterで なんちゃって診断メーカー機能(やっつけ改造)
http://www36.atpages.jp/scubot/adiary/adiary.cgi/scubot/06

単語(文でもOKだけど)が羅列された複数のファイルから、一つずつの
単語を抜き出して、一つの文章を生成してツイート

今、本家診断メーカーみたいに日替わりとかできるように試行錯誤中です。

49 名無しさん :2012/09/11(火) 18:59:07
age

51 名無しさん :2012/11/01(木) 00:58:47
viaをカスタムしたい人用の情報貼っときます

Twitter公式クライアントのコンシューマキー ― Gist
https://gist.github.com/3878505

53 名無しさん :2013/06/01(土) 21:51:27
if (date("G") == 9 && date("i") % 60 == 0){
$response = $eb->postRandom("nemu.php");}
if (date("G") == 17 && date("i") % 60 == 0){
$response = $eb->postRandom("oha.php");}

if(date("i") % 20 == 0 && (date("G") <= 8 || date("G") >= 18)){
$response = $eb->postRandom("data.php");
}elseif (date("i") % 60 == 0 && date("G") % 2 == 0){
$response = $eb->postRandom("data2.php");}

if(date("G") <= 8 || date("G") >= 18){
$response = $eb->reply(4,"data.php","reply_pattern.php");
}else{
$response = $eb->reply(4,"data2.php","reply_uranai.php");}

if(date("G") <= 8 || date("G") > 18){
$response = $eb->replyTimeline(6,"reply_timeline.php");}

お世話になりっぱなしなので紹介しておく
cronの実行間隔が2分なのでリプライ範囲を4分にしている
複数条件の記述ってあんまし記載されてないよね…もっとみんな複数条件記載すればいいのに
まだお勉強中なので、リプライ反応ファイルを分割(複数参照)する方法がわかる方いたら教えて…
|で分岐させたけどうまくいかなかったんだ…


新着レスの表示


名前: E-mail(省略可)

※書き込む際の注意事項はこちら

■ したらば のおすすめアイテム ■

STEEL BALL RUN 15 ジョジョの奇妙な冒険 Part7 (集英社文庫 あ 41-71) - 荒木 飛呂彦


この欄のアイテムは掲示板管理メニューから自由に変更可能です。


掲示板管理者へ連絡 無料レンタル掲示板