【Twitter】 BOT製作支援スレ part2
■ このスレッドは過去ログ倉庫に格納されています
0001nobodyさん
2010/01/18(月) 23:18:42ID:wnXKZf+jhttp://pc11.2ch.net/test/read.cgi/php/1254028559/
0285nobodyさん
2010/03/25(木) 14:29:21ID:???最近どうやるのーってきかれたからphpのpから教えたら困った事になった
0286nobodyさん
2010/03/25(木) 23:20:36ID:???これって最新のOAth対応版だとできないのかな?
いい方法あれば教えてほしい
0288nobodyさん
2010/03/26(金) 01:32:36ID:???やっぱり作者書いてないし。
0289nobodyさん
2010/03/26(金) 02:08:01ID:???自分の知ってるジャンルだと被ってるのばっかり作ってるやついて
他にも理由はあるが前から作ってた人が萎えて止めるのが続出してんだ
で、後から作ったやつは結局放置気味だしな
そういうの見てるとやっぱり失礼だと思うね
0290nobodyさん
2010/03/26(金) 07:02:11ID:???「ジャンル」というから、元々他人が作ったキャラクターか何かをベースにしてるんじゃないかと思うが、
なんでbotが被るのが失礼に当たるのか理解できない。
自分のbotより出来がいいならそれはいいことだし、後発のくせに雑なbotなら無視すればよくね?
と思ってしまった。
たぶん文化というか共有してるマナーが全然違うんだろうな。
0291nobodyさん
2010/03/26(金) 08:32:51ID:???先に作ったからって偉くもなんともないし
0292nobodyさん
2010/03/26(金) 12:33:16ID:???立ち上げようとしたらしい人からあーできてるーこれどうしよう…
違うキャラにするしかないなー折角作ってたのになーどうしよう
的なこと言われ、そのフォロワーさん達がその子を慰めてるのを見たことはある
別に同じの立ち上げてもいいと思うんだけど、フォローしてきて
当てつけに言われるとムッとするわ
0293nobodyさん
2010/03/26(金) 15:11:23ID:4funZZrO使っているのはphaさんのEasyBotter2.04betaです
0294nobodyさん
2010/03/26(金) 15:44:59ID:h05ofLSdもう見てるかどうかわからんし自分で解決できたかもだけど
データ形式全然違うよ
0296nobodyさん
2010/03/26(金) 23:10:04ID:???0297nobodyさん
2010/03/27(土) 11:17:56ID:???自分のが面白いの作れそうなら作るな。
まー最近はTwitterのbotもスクリプトに関する創作活動の一種みたいなとこあるから
同じラインでの競争相手いらねーって人はいるかもしれんがそれはわがままだしな。
0299nobodyさん
2010/03/27(土) 15:09:03ID:???0300nobodyさん
2010/03/27(土) 15:26:15ID:???0301nobodyさん
2010/03/27(土) 15:32:11ID:???ライブラリの場合は閉じた後にソース追加しちゃう可能性あるからつけない方が楽かもってことはあるけど
つけちゃ駄目って話はないだろ
0302nobodyさん
2010/03/27(土) 15:42:57ID:???phpの教えているところサイトで言ってる所もあるし
そういう自分もhtmlから入ったからphpのゆるさにはびっくりしたよ
慣れるまでちょっと時間かかった
0303nobodyさん
2010/03/27(土) 15:44:45ID:EebAC0Nmそのリプライ内容をランダムに行なうにはどのようにすればいいのでしょうか。
また、同じプログラムで発言内容のみ変えたものを複数作成してもランダムになるのでしょうか。
0305nobodyさん
2010/03/27(土) 16:41:39ID:???0306nobodyさん
2010/03/28(日) 13:23:53ID:???0308nobodyさん
2010/03/28(日) 15:38:48ID:???0309sage
2010/03/28(日) 21:22:31ID:KmEcnh0p0310nobodyさん
2010/03/28(日) 21:46:58ID:???http://hideyoshi.2ch.net/test/read.cgi/ms/1269712212/
0311nobodyさん
2010/03/31(水) 00:53:18ID:???フォロワーの一人がもの凄く下品というか
卑猥な発言しかなくて正直ブロックしたい……
サブ垢らしくてこの垢は卑猥な事しか言わない垢!って言ってるし
反応語を調整するためにログ見てて正直不快すぎる
こういうのでブロックしたことある人いる?
0312nobodyさん
2010/03/31(水) 01:19:51ID:???反応単語が含まないものにはリプライしない
性的用語が入っていればリプライしない
をちょっと頑張ってみたら?
自分も困ったが…まあ気にしたら負けかなと思った
0313nobodyさん
2010/03/31(水) 01:20:05ID:???そんなに頻繁にbot垢から見てるのか?
0314nobodyさん
2010/03/31(水) 01:42:04ID:???分かった。スルースキル磨くわ
>>313
まだ稼働してそんなに経ってなくて反応語を増やしてる
その際に現時点のフォロワーの発言をチェックするのは普通だと思うけど
0315nobodyさん
2010/03/31(水) 01:56:19ID:???ウチはブロックした人やフォロー返しする前にTL見てやばそうだったので
フォローしなかった人はいるよ。説明書にも連続で頻繁に話しかける人
常識を逸した話しかけをする人、目的が分からない・宣伝目的・業者は
リムーブさせていただくと書いた
反応させないキーワードを登録することも出来るけど、いたちごっこな気がするので止めた
0316nobodyさん
2010/03/31(水) 13:27:57ID:???0317nobodyさん
2010/04/01(木) 20:42:31ID:???こういう発言をする人はフォローしませんと書いて
フォローしなければいいと思うよ
実際そうしてるbotも結構あるし
0318nobodyさん
2010/04/01(木) 21:28:18ID:???危なっかしくて自分はやる気が起きない…
0321nobodyさん
2010/04/02(金) 03:42:03ID:???bot休止しますだのbot辞めますだのは本当かどうか悩んだわ
そう言っても動いてリプも返すのもいるっていうことは嘘?
管理人の分かる所を行ってみたけど、うはwフォロワーさん引っかかってるww
というのを見たときはエイプリルフールですからでもなんだかな…と思ったわ
0322nobodyさん
2010/04/02(金) 06:31:17ID:???だからやらなかった
0323nobodyさん
2010/04/02(金) 13:26:05ID:???0324nobodyさん
2010/04/02(金) 22:23:11ID:???0325nobodyさん
2010/04/04(日) 00:25:27ID:???0327nobodyさん
2010/04/07(水) 11:57:52ID:???復帰させる方法の書いてあるページにはどんな単語でぐぐると辿りつける?
アカウント自体が止められてる感じじゃないんだよな…
0328nobodyさん
2010/04/07(水) 12:55:39ID:???適当にググったらこんなん出たぞ
0329nobodyさん
2010/04/07(水) 23:46:07ID:???プログラムのプの字も知らないのにbot作り始めてしまいました。
公式サイト・非公式wikiを見てもググっても解決出来ず、
そろそろ5日ほど同じ所で足踏みしているので、
お暇な方がおられたら教えていただけませんか。
なんとか定期的にコメントを発するようには出来たのですが、
なぜかリプライをしてくれません。
別のアカから手動で@コメントを送った後、botのphpにアクセスすると、
用意していた返答をしてくれることもあります。
あと、関係があるのかわかりませんが、botのphpにアクセスすると、
Warning: preg_match() [function.preg-match]: Compilation failed: nothing to repeat at offset 0 in /usr/local/www/○○○○○○○○○/EasyBotter.php on line 237
Warning: preg_match() [function.preg-match]: Compilation failed: nothing to repeat at offset 0 in /usr/local/www/○○○○○○○○○/EasyBotter.php on line 237
Warning: preg_match() [function.preg-match]: Compilation failed: nothing to repeat at offset 0 in /usr/local/www/○○○○○○○○○/EasyBotter.php on line 237
Warning: preg_match() [function.preg-match]: Unknown modifier 'g' in /usr/local/www/○○○○○○○○○/EasyBotter.php on line 237
という文章が表示されることがあります。line279の場合もあります。
調べたらよく似た記述でした。
0330329
2010/04/07(水) 23:49:42ID:???使わせてもらってるのは「EasyBotter」です。
0332329
2010/04/08(木) 00:05:31ID:???すみません、いつもみているもので2ちゃんのほうが敷居が低くて。
reply_pattern.phpを見直して、何が悪いのか分からなければ、
あちらで質問させてもらうことにします。
レスありがとうございました。
0333nobodyさん
2010/04/08(木) 10:29:07ID:???0334nobodyさん
2010/04/08(木) 14:28:08ID:???あっちもしたらばの2ch風掲示板なんだから変わらないだろ
とりあえず正規表現のパターンおかしいんじゃないの?
つまり、見られたくないところ以外のソース晒せと
0335nobodyさん
2010/04/08(木) 23:32:56ID:???locale=jaにして、検索結果に指定した単語が含まれているか見たらうまくいったけど、
localeを指定しないで検索しても1件もヒットしないことがあったり(・ω・)
0336nobodyさん
2010/04/09(金) 00:08:51ID:???0337nobodyさん
2010/04/09(金) 01:10:00ID:???すみません、見た目の体裁ではなくて2ちゃん自体が好きなだけかもしれません。
あちらでもいくつかレスをただいたので、
こちらでさらに質問を続けていいのかわからないのですが……。
お手上げ状態ですので、アドバイスいただけると嬉しいです。
ソースを、ご指示に従って個人的な部分だけ伏せてうpしてみました。
ttp://www.dotup.org/uploda/www.dotup.org794874.zip.ht
パスはpassです。
0338nobodyさん
2010/04/11(日) 07:06:59ID:???0339nobodyさん
2010/04/11(日) 10:57:55ID:???0340nobodyさん
2010/04/11(日) 11:46:19ID:???既出の質問ばかりループしているし、答えたら答えたで
すぐまた>>○○さんうまく行かないんですけど…とすかさず質問
自分で1つ1つ不具合になる原因を潰していこうともしない
説明以外何もいじってませんと言っても、不具合起きてる以上
何か余計にいじったからなった結果だろうに
0341nobodyさん
2010/04/11(日) 16:00:07ID:dMoiZCcXエラーになるのはなんでかな?
●たごさく
http://twitter-tagosaku.blogspot.com/2010/01/twitterbot.html
●エラー
Exception:リモート サーバーがエラーを返しました: (403) 使用不可能
0342nobodyさん
2010/04/11(日) 17:39:50ID:???それはそれでこっちに流れてきそうだけどな
0343nobodyさん
2010/04/11(日) 17:47:14ID:???問題外なのはスルー方針だし
0344nobodyさん
2010/04/11(日) 20:13:49ID:???他のスレはともかく初心者スレでもそれってどうなの?と思う。
0345nobodyさん
2010/04/11(日) 20:20:29ID:???こっちの掲示板は過疎すぎてさびしい…
同じリプライに対して2、3回返信してしまうんだけど、最終idが正常に記録されてないんだろうか
0347nobodyさん
2010/04/11(日) 21:13:47ID:???あっちは過疎ってるね
自分はサーバーとcronを変えたら、ソース自体をいじってないのに多重リプライ
しなくなったよ
0348nobodyさん
2010/04/11(日) 21:22:56ID:???見に行ったが日本語でおkな質問も多いなw
ディレクトリの意味が分からないとかアップロードはどうしたら良いですかとか
初心者なのはPHPだけにしてほしいだろうな
0349nobodyさん
2010/04/11(日) 22:54:01ID:???なんでそう返事されるか考えたことある?散々既出の質問だからだよ
あとテンプレ使ってくれないと、的確な返事が出来ないとかな
日本語おkな質問でジャストな答えをよこせっていう方がどうかと思う
ああ、そういえばプログラミングできなくても〜というのは
看板に偽りだとぬかしたお方でしたか?
0351nobodyさん
2010/04/12(月) 01:38:12ID:???怒らず応答してやってるだけで尊敬するよ。
環境やなんてエラー出たかすら見ないだもん。俺にゃとても無理だ。
0352nobodyさん
2010/04/12(月) 01:38:53ID:???0353nobodyさん
2010/04/12(月) 17:55:36ID:???0355nobodyさん
2010/04/13(火) 14:28:06ID:kQkBGWqMまずYYYYYYがどんな仕組みなのか調べることから始めたら?
bot対応のレスっぽいと思ってしまった
0356nobodyさん
2010/04/13(火) 17:23:57ID:???そのうち1つのbotだけが延々とリプライを繰り返してしまう…
記録するファイルのパーミッションも書込み可能にしてあるのにな
機械的に動かしてるとアカウント自体が不安定になることってあり得る?
0357nobodyさん
2010/04/13(火) 17:34:43ID:???同じサーバーに複数bot設置してるけど、どれも普通に動いてる。
なんか、@pageでそんな症状をよく聞く。
上にも書いたけど、FWC使ってる場合は延々リプしてた人がいたので
まずはcronを変えたらどうだろう?
モノクロ2階調 cron 募集 で検索かけると多分幸せになれる
0358nobodyさん
2010/04/13(火) 19:42:17ID:???FWCって"Free Web Cron Service"?
サーバーはXREAでFree Web Cron Serviceを使ってるんだが、動作不安定だったGAE-Cronよりは良くなったような…
色々機能入れてるからソース自体がだめかもわからん
ありがとう
0359nobodyさん
2010/04/14(水) 00:35:32ID:Vc66P1Z8あれのせいで技術もないような奴が設置した
どうでもいいspamまがいのbotが多すぎる
0360nobodyさん
2010/04/14(水) 00:53:51ID:???それがtwitterだろ
0361nobodyさん
2010/04/14(水) 03:50:43ID:???ほとんど関係無いと思うが
0362nobodyさん
2010/04/15(木) 12:01:56ID:HgPxMx/9一番最初のRequest tokenを取得する時点で、
Status: 401 Unauthorized
<?xml version="1.0" encoding="UTF-8"?>
<hash>
<request>/oauth/request_token</request>
<error>Invalid / suspended application</error>
</hash>
というエラーが返ってきます。
twitter4rで試しても同じ結果になりますので bot 側ではなく、
http://twitter.com/apps の設定内容がおかしいのかな?
と思っていますが、どなたか何かヒントをいただけないでしょうか?
Consumer key, Consumer secret の内容は正しく、
http://twitter.com/apps に登録したアプリケーションの
名前の下には「有効化」と書かれています。
(Suspended されていない?)
■環境
* WindowsXP Pro SP3
* java version "1.6.0_19"
* javac 1.6.0_19
* Eclipse SDK
Version: 3.5.2
Build id: M20100211-1343
* twitter4j-core-2.1.2-SNAPSHOT.jar
0363nobodyさん
2010/04/15(木) 12:48:46ID:???それで何をどういう風に作ってそうなったかなんて知らん
0364nobodyさん
2010/04/15(木) 13:27:18ID:HgPxMx/9作ってるのはOAuthの認証だけで、
Tweetする処理などはまだです。
ソースコードはこんな感じです。
private static void tryOAuth()
{
try
{
Twitter twitter = new TwitterFactory().getInstance();
twitter.setOAuthConsumer("内緒", "内緒");
twitter.getOAuthRequestToken();
// ↑ここでTwitterExceptionが発生。
// 中身は401 Unauthorized。
System.out.println("Succeeded.");
}
catch(Exception e)
{
System.out.println("Exception occurred.");
}
}
自前でOAuthを書かずにTwitter4Jを使っていますが、
オフィシャルのコード例
(http://twitter4j.org/ja/code-examples.html の 7. OAuth認可)
と大差ないですし、何がよくないのかなぁと。
0365nobodyさん
2010/04/15(木) 13:54:23ID:???教えてよ
0366nobodyさん
2010/04/15(木) 14:00:18ID:???0367nobodyさん
2010/04/15(木) 14:07:50ID:???APIも目新しい情報だらけ。
0369nobodyさん
2010/04/15(木) 16:40:05ID:???http://jp.techcrunch.com/archives/20100414twitter-user-streams-annotations/
http://jp.techcrunch.com/archives/20100414live-twitter-ceo-ev-williamss-chirp-keynote/
http://jp.techcrunch.com/archives/20100414twitter-has-105779710-registered-users-adding-300k-a-day/
http://jp.techcrunch.com/archives/20100414qa-twitter-execs-answer-the-tough-questions-at-chirp/
0370nobodyさん
2010/04/16(金) 17:11:40ID:???http://photozou.jp/photo/show/291196/36256150
Twitterご利用明細書メーカー作ってみた
http://lil.la/dialy/dialy-twitter/twitterbillingmaker/
0371nobodyさん
2010/04/17(土) 03:11:42ID:???0372nobodyさん
2010/04/17(土) 16:45:01ID:???どうやるんですか、の時点であなたにはできない。
頭のいい人はもうできてる
普通の人は調べてる
あなたのような人は何もせず聞くばかり
0373nobodyさん
2010/04/17(土) 16:56:20ID:qT79J4bw今日公開されてたキャラボット(http://charactorbot.appspot.com/?&locale=ja)っていうボットジェネレーターのソースからだけど、
http://sourceforge.jp/projects/charactorbot/svn/view/tags/charactorbot_1_00_000/charactorbot/src/org/soichiro/charactorbot/server/TwitterBot.java?view=markup&revision=25&root=charactorbot
を見てみると最新のTwitter4jで実装の仕方変わったみたいだよ。
AccessToken accessToken = new AccessToken(account.getToken(),account.getSecret());
Twitter twitter = new TwitterFactory().getOAuthAuthorizedInstance(account.getConsumerKey(),account.getConsumerSecret(),accessToken);
こんな感じにしてTwitterのインスタンスを取得するみたい。公式のサンプルが間違ってる。
0374nobodyさん
2010/04/17(土) 17:15:16ID:qT79J4bwURLみたら")"が混じって英語版が開いてた
キャラボット
http://charactorbot.appspot.com/?&locale=ja
こっち。
後ソースの方も
http://sourceforge.jp/projects/charactorbot/svn/view/tags.tar.gz?root=charactorbot&view=tar
で丸々落とせるので、解凍してEclipseにインポートしてGAE/Jのアプリケーションにアップロードするとそのままボットジェネレーターとして動く。カスタマイズして自分用に使うのも一つ。
0375nobodyさん
2010/04/17(土) 23:30:14ID:???ありがとうございます。
早速試してみます。
自力でちょっと調べまして、Java じゃなくて Ruby/Sinatra なんですが、以下のソースで Smart.fm はクリアできました。
require 'rubygems'
require 'sinatra'
require 'oauth'
enable :sessions
get '/twitter' do
consumer = OAuth::Consumer.new('内緒', '内緒', { :site => 'http://twitter.com', :request_token_path => '/oauth/request_token' })
request_token = consumer.get_request_token # => ここで 401 Unauthorized 発生。
session[:request_token] = request_token
puts request_token.authorize_url
end
get '/smartfm' do
consumer = OAuth::Consumer.new('内緒', '内緒', { :site => 'http://api.smart.fm', :request_token_path => '/oauth/request_token' })
request_token = consumer.get_request_token
session[:request_token] = request_token
puts request_token.authorize_url # => ここで Authoriza url が取得できた。
end
Twitter は We support hmac-sha1 signatures. We do not support the plaintext signature method. と言っており、
Smart.fm は * HMAC-SHA1 (recommended) and PLAINTEXT are supported * と言っています。
キャラボットのソースを読んでもできないようだったら、OAuth::Consumer.new の引数でそのへんを指定する方法を調べてみます。
0376375
2010/04/18(日) 01:32:47ID:???処理は正しく、Twitter の OAuth 認証に登録したアプリが無効化されていました。
新しいアプリをもう一つ登録し、そちらで試したらあっさり動きました。
無効化されたアプリを再度有効化するには [email protected] にメールするみたい。
以下、Twitter から届いていたメール。
> This is a notice that your OAuth token for あんたのアプリケーション has
> been suspended from interacting with the Twitter API.
>
> Please make sure that your application follows Twitter's policies, including
> the Twitter rules (http://help.twitter.com/forums/26257/entries/18311),
> the API rules (http://twitter.jp/apirules), and the automation rules
> (http://help.twitter.com/forums/10711/entries/76915).
>
> To request for your token to be re-enabled, please write to [email protected]
Status: 401 Unauthorized
<?xml version="1.0" encoding="UTF-8"?>
<hash>
<request>/oauth/request_token</request>
<error>Invalid / suspended application</error>
</hash>
というレスポンス通り、suspended application だったわけで。
お恥ずかしい限りです。
0377375
2010/04/18(日) 01:41:19ID:???教えていただいたあたりのソースは GAE 上で永続化した Access token を読み出して
Twitter クラスのインスタンスを生成する処理です。
それ以前に今回つまっていた Request token の生成をCharactorbotServiceImpl.java の 529 行目あたりで行っています。
public String getAuthorizationURL(String consumerKey, String consumerSecret) {
if(consumerKey == null || consumerSecret == null) throw new IllegalArgumentException("null is not allowed.");
checkLogin();
★ Twitter twitter = new TwitterFactory().getInstance();
★ twitter.setOAuthConsumer(consumerKey.trim(), consumerSecret.trim());
try {
★ RequestToken requestToken = twitter.getOAuthRequestToken();
ConsumerKeyAndSecret key = new ConsumerKeyAndSecret();
key.consumerKey = consumerKey;
key.consumerSecret = consumerSecret;
mapRequestTaken.put(key, requestToken);
return requestToken.getAuthorizationURL();
} catch (TwitterException e) {
e.printStackTrace();
return null;
}
}
★をつけたところがポイントで、このへんの処理はオフィシャルのサンプルと同じです。
したがって、オフィシャルのサンプルは間違っていません。
長々とスレ汚しすみませんでした・・・。
0378nobodyさん
2010/04/19(月) 12:42:00ID:ex/sLZjjお前のような奴が一番ウザイ
出来もしない奴が出てくるなっての
半年ROMってろバk
0379followjp
2010/04/19(月) 12:46:29ID:NMrEK+fAhttp://followjp.com
0380nobodyさん
2010/04/19(月) 17:45:33ID:???0381nobodyさん
2010/04/26(月) 03:27:30ID:???0383nobodyさん
2010/04/26(月) 15:04:58ID:???一応クライアント名明示できるし。
0384nobodyさん
2010/04/27(火) 00:57:09ID:???使えなくなる(shutting off)とは思わなかった。
あとOAuthは突然suspendされた人が出たという噂も聞いたので尻込みしてた。
OAuth対応はライブラリ使えばそんなに難しくないけど
全部のbotのプログラム書き換えるのは面倒だなぁ。
0385nobodyさん
2010/04/27(火) 14:19:20ID:???認証作った翌朝にsuspendされた、どうしろというのだ
■ このスレッドは過去ログ倉庫に格納されています