1 名前:nobodyさん [2009/09/27(日) 14:15:59 ID:Dz08qoo4] 見当たらなかったので立ててみた [公式] twitter.com/ [Twitter 開発ブログ 日本語版] twitterjp.blogspot.com/ *どの言語でもOKですがソースを書く際は何の言語なのかも記載してください。 *初心者のために、なるべくぶつ切りのソースではなく全体的に載せてほしいです。
452 名前:nobodyさん mailto:sage [2009/12/07(月) 15:47:55 ID:???] >>449 GAEでの”/自分のアドレス”ってappengine.google.comで見たときのTitle=eclipseのpackageの名前じゃないか? eclipseでも同じ名前にしてる? あとローカルで開くってのがブラウザで開いてるということならブラウザがfaviconを探しにいく 当然favicon見つからず404になる >>450 Yahoo APIの使ってる。
453 名前:DAWNTO_Windy-melt ◆Windy/f9HNwg [2009/12/07(月) 19:31:13 ID:MdLiWJgY] 開発が一段落したので公開中のwikiを載せます。 ttp://knowledge.ddo.jp/ 発展途上なので機能は貧弱ですがプラグインファイルの開発を手伝っていただければ良いソフトになると思います。 次スレがあればテンプレに組み込んでいただけると嬉しいです。
454 名前:nobodyさん mailto:sage [2009/12/07(月) 20:18:17 ID:???] >>453 ごめん全然関係ないけど…土壇場って独壇場じゃね?
455 名前:nobodyさん mailto:sage [2009/12/07(月) 20:54:23 ID:???] phaさんとこちょっと見てて前から不思議だったんだけど あのスクリプトってそんなに環境によって動かないものなのか? 自分もプログラミングなんて全くの素人だがphaさんの使って 無料のサーバーでCron-jobから某サイトを参考にGAEで動かして エラーになったりしても調べてなんとか解決できたし自分で変更もした 自分がたまたま運がよかったのか?
456 名前:nobodyさん mailto:sage [2009/12/07(月) 21:27:13 ID:???] 運の問題にしないで原因調べたら?
457 名前:nobodyさん mailto:sage [2009/12/07(月) 21:31:58 ID:???] >>455 >エラーになったりしても調べて が出来ないんだろう。 環境はIE6です!みたいなこと言ってた人も居たし…。 エラー文読む気ないから丸投げ。 あと本家の鯖の不調と設置の問題の切り分けが難しいのかも。 本体不安定で動かないのかスクリプトかcronか どれが問題かわからないから丸投げ。 しかし今朝から本家不安定でうちのも不調だわ。
458 名前:DAWNTO_Windy-melt ◆Windy/f9HNwg mailto:sage [2009/12/07(月) 21:35:20 ID:???] >>454 あれ?変換間違えました?
459 名前:nobodyさん mailto:sage [2009/12/08(火) 01:05:41 ID:???] 好きに書きゃいんじゃね。 相手が求めてるような楽屋裏話なんてないんだからそういうのがわかりゃ勝手に離れてくさ。
460 名前:nobodyさん mailto:sage [2009/12/08(火) 01:06:21 ID:???] 間違えたごめん。
461 名前:nobodyさん mailto:sage [2009/12/08(火) 05:26:14 ID:???] 某サイト参考にGAEで動かそうと作っていたんですがtestcronの中にTestcronServlet.javaが何回プロジェクト作り直しても出てこないんですがどうすればいいですか? ファイル作成しようにも調べ方が悪いのか参考になりそうなページ出てこなくて息詰まってますorz
462 名前:nobodyさん mailto:sage [2009/12/08(火) 06:35:04 ID:???] >>461 自分もそれなったけど、 プロジェクト作成時に「Google Web ツールキットを使用」の チェックを外さなかった、に30ペソで。
463 名前:461 mailto:sage [2009/12/08(火) 06:41:40 ID:???] >>462 ありがとうございます!!! チェック外して作り直したらちゃんと出てきてくれました!!!
464 名前:nobodyさん mailto:sage [2009/12/08(火) 09:13:00 ID:???] チェックを外す、とかの記載ないから忘れやすいは忘れやすいところだな >>450 何それおいしいの? ごり押しおいしいれす(^q^)
465 名前:nobodyさん mailto:sage [2009/12/08(火) 15:14:16 ID:???] 土壇場(どたんば) 独擅場(どくせんじょう) 真ん中の字は違う。
466 名前:nobodyさん mailto:sage [2009/12/08(火) 15:57:36 ID:???] 土壇場(どたんば) 独擅場(どくせんじょう) 独壇場(どくだんじょう) 日本語って難しい
467 名前:nobodyさん mailto:sage [2009/12/08(火) 16:19:53 ID:???] 独壇場と独擅場の違い tp://www.nhk.or.jp/bunken/research/kotoba/kotoba_qq_03070101.html へえーAA略 GAEでcronがちゃんと動いてるのにリプライ拾わない事が多々ある @で話しかけてから Cron Jobsをチェック→on time successだがリプライ返さない・Logs見ても200 hogehoge.appspot.com/hogehoge にアクセスすると 指定時間内のリプライないよと言われる でもブラウザでphpにアクセスするとリプライをちゃんと返す だが放置してるとちゃんと拾う時もある もう自分では原因が分からん… GAEはモノクロ2階調さんのを参考にJAVAで動かしてる 同じソースで作った他の定期ポストは絶好調なんだが こうしたらいいんではとかあれば教えて下さい
468 名前:nobodyさん mailto:sage [2009/12/08(火) 17:03:32 ID:???] >>467 自分も同じ状況だ GAEはタイムアウトの判定がシビアだから、 自分の鯖とGAEの距離が長すぎると駄目なのかもって意見をどこかで見た ちなみに自分はロリポにPHPを置いたときは全くリプライが返ってこず、 @pagesに変えたら五割ぐらい返すようになった あと、24時間以内に同じ内容は投稿できないからそれに引っ掛かってる可能性もなくはないか?
469 名前:467 mailto:sage [2009/12/08(火) 17:39:13 ID:???] >>468 うーん同じ内容の投稿制限は引っ掛かってない筈。リプライの数は割と多めだし それに同じ内容でも@Aさんと@Bさんに返すのは別投稿扱いだし リプライ数がスクリプトを重くしてるからか?とも思ったんだが 30分定期ポストの方が長いくらいなのにそっちは成功してる リプライ回す時間は5分だからそこまで無茶してるとも思えない この差がわからないんだよなー どっちも動きが悪かったら鯖が悪いんだと思えるんだけど… たまにちゃんと返しまくる事もあるからphpも悪くない…筈w 以前cron-jobでやってた時に@pagesが重くてさくらに変更して 今はそのままさくらで使ってるんだが…一度動かない奴だけでも鯖変えてみるよ ありがとう
470 名前:DAWNTO_Windy-melt ◆Windy/f9HNwg mailto:sage [2009/12/08(火) 20:06:19 ID:???] >>450 使うとしたらchasen + nkf
471 名前:nobodyさん mailto:sage [2009/12/08(火) 23:27:44 ID:???] 今日の午前中くらいまでは正常に動いていたのに 夕方くらいから急にGAEで失敗続きになってしまった・・・ Twitter本家も無関係の人のTLが流れたりしてるみたいだし 何かサーバーの調子が悪いんかな? 他にもGAE使ってて同じような人居る??
472 名前:nobodyさん mailto:sage [2009/12/09(水) 00:06:04 ID:???] ノシ もう全無視よりいいやとcronjobも並行してみたが 結局どっちも動き悪い 閲覧はクライアント使ってるけど昨日くらいからAPIエラーも多発してるし 細かい鯖落ちも頻発してるみたい
473 名前:nobodyさん mailto:sage [2009/12/09(水) 02:56:14 ID:???] GAEでやってる人Dashboardのグラフどうなってる? 30分定期ポストのは0から0.004の間でvvvvvvvvvて感じなんだが 動きの悪い5分のリプライの方は0.004あたりでずっとまっすぐなんだ 時間の幅が大きいからかと思ったが以前テスト用に作った2分定期のはvvvvだった まっすぐなのはずっと処理が終わってないってことなのかね… でもリプも返す時は返すしその時もグラフはまっすぐなんだがw
474 名前:nobodyさん mailto:sage [2009/12/09(水) 09:31:03 ID:???] 同じく0〜0.04くらいでVVVVVVだな 昨日はいきなり0.013くらいまでハネ上がった時間帯があったが
475 名前:nobodyさん mailto:sage [2009/12/09(水) 12:48:01 ID:???] cronjob本当に動き悪いな 1時間1回にセットして10時間経過見てたけど1回しか動かない
476 名前:nobodyさん mailto:sage [2009/12/09(水) 15:10:48 ID:???] cron-jobの動きが悪いからWebCron.orgに移行考えてるんだけど 支払いとかではトラブルになった事はない? 海外サービスはその辺りがどうも不安
477 名前:nobodyさん mailto:sage [2009/12/09(水) 15:39:23 ID:???] 話を切って悪いんだけど相談させてください。 botが完成してあとはIDを取るだけなんだけど既に他の人が自分と全く同 じbotを作ってた。 でも、その人はIDだけ取っておいてbotは全く動かしていない状態なんだ けど、こういう場合はどうしたらいいんだろう。 気にせず自分のbotを上げていいのかな・・・
478 名前:nobodyさん mailto:sage [2009/12/09(水) 15:48:28 ID:???] >>477 微妙にスレ違いだと思うけど 同人板にTwitterスレあるからそっちで聞いたほうがいいかも そっちでもたまにbotの話題になってるから。 他の、例えば天気予報や占い等の否キャラbotなら気にしないでいいと思う
479 名前:nobodyさん mailto:sage [2009/12/09(水) 16:09:54 ID:???] ごめん、478の最初のほうは「キャラbotなら」という前提の話しです
480 名前:nobodyさん mailto:sage [2009/12/09(水) 17:26:34 ID:???] >>477 別にいいんじゃないの? 俺もキャラbot作っててその状況なったことあるけど(しかも後者) 別にそのまま気にせずやってるなぁ キャラbotでも複数あるキャラとかあるし それぞれに面白みがあればいいんでないかな
481 名前:nobodyさん mailto:sage [2009/12/09(水) 17:38:38 ID:???] >>477 内容ダダ被りとかでなければいいんじゃないの? 自分も某キャラのbot作ってるけど、友人も同じキャラのbot作ってる 性格がだいぶ違う設定になっているのでフォロワーさんは自分の好みの方を 選んでフォローしてる感じ 実際に「○○のbot見つけたけど下ネタが多くて無理、 もうひとつ違うのがあったからこっちフォローした!」っていう呟きも見たしさ
482 名前:nobodyさん mailto:sage [2009/12/09(水) 20:10:44 ID:???] >○○○Servlet.javaって作ってるよね? それの ○○○ を書くはず。↓ <cronentries> <cron> <url>/○○○</url> <description>crontest the run every 2 minutes</description> <schedule>every 2 minutes</schedule> <timezone>Asia/Tokyo</timezone> </cron> </cronentries> <url>/○○○</url> のとこに○○○Servlet.javaの○○○入れて デプロイしてみたらon time Successになるもののツイートできない。 文字化けしてるからコードも見てみたけどUTF-8になってる。 かれこれ5時間ぐらい弄ってるけど何がなんだかさっぱりわからないorz
483 名前:nobodyさん mailto:sage [2009/12/10(木) 01:10:25 ID:???] 自鯖の人は少数なのかな
484 名前:nobodyさん mailto:sage [2009/12/10(木) 02:10:48 ID:???] 鯖は立ててないけど自前のPCでやってるよ PHPさえインストールしてりゃWSHかなんかで自動実行できるしね
485 名前:nobodyさん mailto:sage [2009/12/10(木) 03:22:04 ID:???] GAEで30分に1回呟くcronを動かしてて、 慣れてきたからリプライにも反応するように新しくphpを用意したんです。 んでもって新しいアプリケーションと2分間隔で回るファイルを作りました。 いざデプロイしたら元の30分の方まで2分間隔で回るようになって、 しかもリプライの方がひとっことも話しません。 何がいけないのか自分にはさっぱりわからないので知恵をお貸しくださいorz
486 名前:nobodyさん mailto:sage [2009/12/10(木) 03:23:40 ID:???] GAEを使わない
487 名前:nobodyさん mailto:sage [2009/12/10(木) 05:14:39 ID:???] 動かないって人は本体が最近バグ出てるしよく落ちるし 今は様子見の方がよくないか? 明らかなエラーとかでない限り 今まで動いてたやつも動かなくなったりしてる中で 原因特定するのは難しいと思う
488 名前:nobodyさん mailto:sage [2009/12/10(木) 06:43:46 ID:???] コナミキャラってやばいの?今作ってるのそれなんだが…
489 名前:nobodyさん mailto:sage [2009/12/10(木) 11:25:00 ID:???] そなの?俺コナミキャライパーイフォローしてるが
490 名前:nobodyさん mailto:sage [2009/12/10(木) 12:04:00 ID:???] 姉ヶ崎作ってた人がサイトに誘導の上寄付を募ってた?らしい そのコンテンツとかは消された 自分も言われて見にいった口なのでよく知ってる人フォローよろ でもまだbotは消されてないから大丈夫じゃね?
491 名前:nobodyさん mailto:sage [2009/12/10(木) 14:59:50 ID:???] すみません、質問させてください。 Phaさんのサイトを見てbotを作ったんですが、反応しません。 鯖はロリポ、cronはGoogleのエンジンを使ってます。 質問を箇条書きにしてみました。 色々ググってみたけど、途方にくれたのでお知恵を拝借できると助かります。 ・Eclipseを使ってアップロードしたんですが、左側のprojectexplorerにある 作ったcronアイコンにバツが付いている。これはどこかで記述ミスをしたものかどうか。 ・Google App engineでfavicon.icoがどうのと書かれてます。そのアイコンをまず どこに設置すればいいのか、そしてapp.yamlは何処に設置するものなのか。 自分で作るのか、作成した元のcronの中に突っ込むのか。そのファイル自体はcronの中には ありません。 ・EclipseでcronServlet.javaの編集の際、プログラムを指定するURLを書くんですが これは複数のphpファイルを,で区切ってhttp://から指定して書くものなのか。 以上です。 よろしくお願いします。どうにも動いてくれないので…
492 名前:nobodyさん mailto:sage [2009/12/10(木) 15:47:36 ID:???] basic auth廃止とな(´・ω・`)
493 名前:nobodyさん mailto:sage [2009/12/10(木) 16:36:58 ID:???] TwitBot Clubってどうなんだろう 手軽でいいとは思うけどGAEからBAN喰らったら閉鎖とか書いてあるから怖い
494 名前:nobodyさん mailto:sage [2009/12/10(木) 16:46:59 ID:???] TwitBot Clubでぐぐってみたら自動bot作成サービスみたいな感じ? こんなんでライトユーザのbot乱発したら最近ただでさえ鯖不調なのにサーバの負担厳しくないかな。
495 名前:nobodyさん mailto:sage [2009/12/10(木) 16:49:39 ID:???] 自分がGAEでcron動かすとき参考にした記事にも、 このやり方はBANされるかもって書いてたなあ botのフォロワーが増えてからBANされたら途方に暮れそうだgkbr
496 名前:nobodyさん mailto:sage [2009/12/10(木) 18:50:25 ID:???] ちょっと勉強して自分でプログラム組んだら? cron jobでも全然問題ないぞ。 phaさんとこのに頼ってる人は有料cronに手を出したりGAEでBANされたり大変そうだな。
497 名前:nobodyさん mailto:sage [2009/12/10(木) 19:07:35 ID:???] cron-job、10分ぐらい時間ずれてない?今朝から。 0分にpostさせてるBOTが10〜15分辺りに反応してて。 設定し直したけど直らないんだよなー。
498 名前:nobodyさん mailto:sage [2009/12/11(金) 06:19:55 ID:???] >496 少しずつphp勉強してるんだけどphaさんのスクリプトよりbardothodolさんのcurl使うやり方のが軽いのかな? 自分で一から作る力はまだ全然ないからそれならセリフの生成のところだけ入れ替えて書きかえたい 496は全部自作してるん? phaさんのスクリプトの何が問題なん?
499 名前:nobodyさん mailto:sage [2009/12/11(金) 09:06:57 ID:???] cron job問題ないか? ここ3日ほど経過見てるけど1回しかまともに動いてない 勝手に切られてたりするし駄目だろこれ…
500 名前:nobodyさん mailto:sage [2009/12/11(金) 09:44:28 ID:???] cron-job確かに10分くらいズレてる 昨日なんかは一応稼働するにはしてたみたいだけど 今日はまた失敗続きだ…
501 名前:nobodyさん mailto:sage [2009/12/11(金) 12:29:55 ID:???] >>498 まあ軽いっちゃ軽い。最低限の処理だしな。 でもphaさんとこで使ってるNet_Twitter自体もやってることはそんな大差ないから 今のサーバマシンでわかるほどの差はでんと思う。 496じゃないけど俺は自作してる。Net_Twitterも最低限のAPIしかないし。
502 名前:nobodyさん mailto:sage [2009/12/11(金) 14:15:56 ID:???] 自分はbotの発言でTLが埋まってしまうのを考慮して(いろんなキャラbotをフォローしてるだろうし)、定期発言3時間に1回で設定してる。 cronはcron jobだけど、一度も失敗したことないし、勝手にオフになることもない。 リプライとTLに反応するプログラムは、2分おきにアクセスするようにcron jobで設定してるけど、こっちはたまに勝手にオフになる。 けどPhaさんとこのスクリプトじゃないから、多少遅れても全レスするし問題ないかなと思ってる。
503 名前:nobodyさん mailto:sage [2009/12/11(金) 14:31:45 ID:???] cron jobで登録日からずっと1時間に1回でリプ無の定期ツイット試運転してるけど、 今のところ60回中1回しか動いてないし勝手にオフにもなる。 もちろんBOTが手動で動くのは確認済。 cron jobってどうやったらちゃんと動くの? Phaさんとこのスクリプトだから駄目なのかな 一応今PHP勉強して自分でも組んでるけど今ちゃんと動いてる人に聞きたい
504 名前:nobodyさん mailto:sage [2009/12/11(金) 16:51:50 ID:???] 主な原因としては ・Cron-jobが重い ・twitterが重い ・BOTのスクリプトが重い ・BOTのスクリプトの出力サイズが大きい(大きいと送受信に時間がかかる) ・BOT鯖が重い(無料や激安な鯖は顕著) ・タイムアウトにひっかかる
505 名前:nobodyさん mailto:sage [2009/12/11(金) 17:07:21 ID:???] いくらなんでも60回に1回とか動かなさ過ぎだろ スクリプトが無駄に大きくってるんじゃないか? >>504 の指摘点をもっかい見直せ
506 名前:nobodyさん mailto:sage [2009/12/11(金) 17:27:22 ID:???] 今30分に1回定期postするプログラムと 0時、6時、12時、18時に指定した日付までのカウントダウンをpostするプログラムの2つ登録してるけど 前者は一度も失敗してないし勝手にneinになったこともない 後者だけ毎回8時(向こうの鯖が日付変わる時間)になるとneinになりやすい、あと失敗もしやすいみたい プログラム自体はどっちもbardothodolさんとこの参考にcurlで使うやり方なんだけど…
507 名前:nobodyさん mailto:sage [2009/12/11(金) 19:34:47 ID:???] cronjob.de使ってる人いますか? 最多でも5分間隔しか設定できないけど勝手に止まることはないみたい ただ、今借りてる鯖じゃ設定できなさそうでした 翻訳サイトにかけて日本語でおkな文章を解読するにサーバー直下にcronjob_*****.html(*****は指定された数字)ってファイルが必要なのかなと思ったんですが アドレスが向こうの希望通りには設置できないんです
508 名前:DAWNTO_Windy-melt ◆Windy/f9HNwg [2009/12/11(金) 19:50:35 ID:lt7fGhiK] サイトのメンテナンスでwikiの位置が変更になりました。 ttp://knowledge.ddo.jp/wiki/ に変更です。手間くって申し訳ないです。 ポータルサイトも立ち上げる予定なので、それなりに生暖かく見守ってやってください。
509 名前:nobodyさん mailto:sage [2009/12/11(金) 19:57:16 ID:???] うちは2分に一回、自作スクリプトを自鯖(窓)のcronNTで叩いてるけど、 getもpostも問題なさげ Services_Twitter使用
510 名前:nobodyさん mailto:sage [2009/12/12(土) 01:20:53 ID:???] マルコフはやくー
511 名前:nobodyさん mailto:sage [2009/12/12(土) 01:31:28 ID:???] そこまで他人に頼るとどれもこれも似たようなことしか言わないBOTにしかなんないぞ。
512 名前:nobodyさん mailto:sage [2009/12/12(土) 10:36:34 ID:???] PHPとPECL OAuthライブラリを使ってAPIを叩いています。 APIの仕様書を見ていると、アクセストークンを設定した時に、レスポンスとしてユーザIDとスクリーン名が返ってくるとのことでした。 それらを使用したいと考えているのですが、どうにも取得が出来ません。(setTokenしたあとに、getLashResponseを呼んでみたり) どうにかそのレスポンスを得る方法は無いのでしょうか。もしくは、そのレスポンスを取得出来るPHPで使用可能なOAuthライブラリは無いでしょうか。
513 名前:nobodyさん mailto:sage [2009/12/12(土) 22:01:18 ID:???] @のない呟きに反応するbotって作れるのかな つかれたー!って人におつかれって言ってあげるようなことなんだけど @がないとどうにもわからん・・・。
514 名前:nobodyさん mailto:sage [2009/12/12(土) 22:16:59 ID:???] 登録した人のタイムラインを参照して同じことすればいいのでは?
515 名前:nobodyさん mailto:sage [2009/12/12(土) 22:36:56 ID:???] やってみた たぶんいける でもあれなんだよね、他の人への@も読みこんじゃうと思うんだよね
516 名前:nobodyさん mailto:sage [2009/12/12(土) 22:50:50 ID:???] 他の人への@があったら処理しないようにすればいいのでは?
517 名前:nobodyさん mailto:sage [2009/12/13(日) 01:34:10 ID:???] >>516 かまってくれてありがとうw 他人への@に、てかすべての@に反応しないように書いてたんだけど \@があったら弾くようにしたはずなのにうまく回らない 細かいミスでHP削られたので今日はもう寝ます、ありがとう
518 名前:DAWNTO_Windy-melt ◆Windy/f9HNwg [2009/12/13(日) 02:14:06 ID:B1fOU/ii] >>517 @ってエスケープ必須でしたっけ?(in PHP
519 名前:503 mailto:sage [2009/12/13(日) 09:41:31 ID:???] いろいろ検証したけど鯖の問題かもしれない… ・Cron-jobが重い 他の人は動いてるから重くは無いんだと思う ・twitterが重い 少し前は変だったけど今は変な挙動もしてない ・BOTのスクリプトが重い phaさんのpost_random.phpのスクリプトそのままだから大丈夫なはず ・BOTのスクリプトの出力サイズが大きい(大きいと送受信に時間がかかる) 最大全角35文字だから大きくないと思う ・BOT鯖が重い(無料や激安な鯖は顕著) @pagesだから分からない ただ手動でアクセスした時は必ず動く ・タイムアウトにひっかかる 検証の仕方が分からない @pagesにアクセス解析付のHTML置いて、そこで呼び出したけどCron-jobのアクセスは無かった どこか有料だけど安いレン鯖でも借りた方がいいのかな… オススメはロリポ?
520 名前:nobodyさん mailto:sage [2009/12/13(日) 09:56:28 ID:???] 流れぶった切って申し訳ないけど、発言などをさせるphpファイルが 投稿出来ずにエラーになるのは何でだろう? ブラウザ上で確認しただけなんだが、ただ一言ERRORって出るだけなんだ… service_twitterの本体プログラム自体はエラー出てない 勿論パスワードもIDも間違ってないんだ…何でだ…orz
521 名前:nobodyさん mailto:sage [2009/12/13(日) 10:10:26 ID:???] どのphpファイル使ってて何をしてどういうエラーが出たのかさっぱりわからん。
522 名前:nobodyさん mailto:sage [2009/12/13(日) 10:12:25 ID:???] あと間違ってない、って主観の判断はどうでもいい(そう思ってて間違ってることもよくある)から やったことや、ソースをそのまま貼ったほうが原因は特定しやすい。
523 名前:DAWNTO_Windy-melt ◆Windy/f9HNwg [2009/12/13(日) 10:20:09 ID:B1fOU/ii] >>520 ソースうpきぼん
524 名前:nobodyさん mailto:sage [2009/12/13(日) 11:03:50 ID:???] 最近よくいる糞コテはなんなの
525 名前:nobodyさん mailto:sage [2009/12/13(日) 11:41:51 ID:???] 何もしてない奴よりなんぼか形にしてる奴のがましよ。 NG登録は簡単なんだし気になるならあぼーんしときゃいいさ。
526 名前:520 mailto:sage [2009/12/13(日) 14:04:45 ID:???] 言い捨てるような形になってしまってごめん ソース元は銀さんのとこで、ご本人が説明されている環境をそのまま使用してる 設置サーバーもやり方も全く同じ Twitter.phpにアクセスすると真っ白な画面にになり、ランダムに呟かせるphpファイル (例えばbot.php)にアクセスすると、白い画面に一文字「ERROR」の文字が出る ↓ソース
527 名前:520 mailto:sage [2009/12/13(日) 14:10:31 ID:???] ソース載せると規制に引っかかってしまうんだorz //d.hatena.ne.jp/silverbot/20090829#c1260572663 ここのページのソース丸コピペ、フルパス、ID、パス、台詞だけ違う状態
528 名前:nobodyさん mailto:sage [2009/12/13(日) 15:03:18 ID:???] >520 試してないが if(! $st->setUpdate($post) ){ die('ERROR'); 辺りを消したらちゃんとしたエラー吐かないかな?
529 名前:nobodyさん mailto:sage [2009/12/13(日) 15:46:35 ID:???] 定期postのBOTに過去10回分と同じポストかどうかを判断して 違ったらポストって機能を加えたいんだけど、ログの書き込みがうまくいかない。 log.txtをfgetsで配列aに読み込み→変数bと違うか判断→違ったら変数bポスト→ 配列aの[1]〜[9]と今ポストした変数bをfor文でlog.txtにfputsしてるだけなのに。 読み込みパターンをw、a、r+どれにしたらいいんだろう? 色々試したけど追加書き込みされたりポストしたばかりのだけになったりする。 rで配列Aに読み込み→wで全消し→aで書き込みするしかないのかな? そもそもこんな機能いらない?
530 名前:nobodyさん mailto:sage [2009/12/13(日) 16:33:37 ID:???] ついにできた^0^/ GoogleにでもUPするかな
531 名前:nobodyさん mailto:sage [2009/12/13(日) 18:15:45 ID:???] >>529 まず言語は?
532 名前:nobodyさん mailto:sage [2009/12/13(日) 18:34:07 ID:???] >>531 PHPです 今一応出来たけどログとの比較の部分で審査でタイムアウトする時があるから見てください <?php include_once 'フルパス'; //ポストリストとログ読み込み $filename = "plist.txt"; $plist = file($filename); $filename2 = "log.txt"; $fp2 = fopen($filename2,'r+'); flock($fp2, LOCK_EX); for($i = 0;!feof($fp2);$i++){ $log[$i] = fgets($fp2); } fclose($fp2);
533 名前:nobodyさん mailto:sage [2009/12/13(日) 18:37:38 ID:???] //ポスト選定と審査 $key = array_rand($plist); $ok = 2; while($ok >= 1){ $key = array_rand($plist); for($a = 0; $a < $i; $a++){ if($plist[$key] == $log[$a]){ $ok = 1; } } if($ok <> 1){ $ok = 0; } } $post = $plist[$key]; //ログ書き込み $fp2 = fopen($filename2,'w'); flock($fp2, LOCK_EX); fputs($fp2,$plist[$key]); for($i = 0;$i <= 8;$i++){ fputs($fp2,$log[$i]); } fclose($fp2);
534 名前:nobodyさん mailto:sage [2009/12/13(日) 18:40:36 ID:???] Service_Twitter設定は銀さんのここと一緒 d.hatena.ne.jp/silverbot/20090829/1251532471 タイムアウトするのはこの部分 $plist[$key] == $log[$a] ログはツイッター本家と同じく上が新しいものになるようにしてる 最近勉強始めたばかりなので見難いかもしれないけどお願いします
535 名前:520 mailto:sage [2009/12/13(日) 19:44:53 ID:???] >>528 反応ありがとう! 試しに if(! $st->setUpdate($post) ){ die('ERROR'); } を抜いてやってみたら、ただの白いページが出た… そんでもって投稿はされてない あるとERRORになってないとシカトって一体どういう…???
536 名前:nobodyさん mailto:sage [2009/12/13(日) 23:02:07 ID:???] >>532 ログの保存の仕方はわからないけど改行コードは入れてる? 少なくとも末尾に \n 加えないとPOSTがつながって見えるぞ。書き込みモードはwでいい。 $fp2 = fopen($filename2,'w'); flock($fp2, LOCK_EX); fputs($fp2,$plist[$key] . "\n"); for($i = 0;$i < 9;$i++){//8になってたけど9だよね? fputs($fp2,$log[$i] . "\n"); } fclose($fp2); 以下おせっかい 常識的に考えたら面倒なwhileじゃなくてforeach使うだろ あとif($ok <> 1)の処理がよくわからん。 1じゃなかったら0にするんだったら最初から0にしておけばいいと思うが $key = array_rand($plist); $ok = 0;//最初から0にしておく foreach($log as $logs){//$logの配列が$logsに入ってforeachループ内では$logsに配列の添え字([2]とか)がいらなくなる if($logs == $plist[$key]){ $ok = 1 break;//同じPOSTが1つでもあったらPOSTしないと勝手に解釈 } } 2chに書きこむ用のコードだと思うがいろいろなとこ抜けてて心配だ
537 名前:nobodyさん mailto:sage [2009/12/13(日) 23:35:20 ID:???] >>534 の銀さんのBOTの作り方見てたけど結構ひどいな。 Services_Twitterを今後使うと見せかけて、リプライとかは全く関係ない別のソースを使ってる。 PHP触ったばかりかもしれないから仕方ないけど。
538 名前:nobodyさん mailto:sage [2009/12/14(月) 00:25:34 ID:???] >537 銀さんとこのは全部他のとこの記事のコピペだよ リプライと定時のソースはそれぞれ違う人から持ってきてるんだから 関係なくて当たり前
539 名前:nobodyさん mailto:sage [2009/12/14(月) 00:29:22 ID:???] >>536 すみません、書き忘れてました。 plist.txtに\nが入ってるのでfile()の処理で改行コードまで配列に入れているようです。 そのためlog.txtはちゃんと改行されて見えてました。ありがとうございます。 foreach文を知らなかったので後でググってみます。 while以下の処理は、同じ文があったらもう一度array_rand()してfor文で回して再審査、 同じ文が無かったらwhileから抜けるとしたかったのでこうしました。 初期値が$ok = 0だとwhileにすら入らず抜けてしまい、 whileの条件を$ok == 0にすると、今度は同じ文があった時にwhileから抜けてしまうため、 初期値は$ok = 2、同じ文章があれば$ok = 1にしてwhileからやりなおし、 同じ文がなかったら$ok = 0 にしてwhile抜けてポストにしました。 貼り付けたソースは定期ポストほぼ全文ママです。 foreach文なら大丈夫でしょうか?いいやり方があれば教えていただきたいです。
540 名前:nobodyさん mailto:sage [2009/12/14(月) 01:04:19 ID:???] >>539 タイムアウトするのはtwitterの鯖なのか、botを動かしている鯖なのか、どっちですか? twitterだったら鯖が重いかtwitterにPOSTするスクリプト(botとしての機能じゃない方)が悪い。 botを動かしている鯖なら鯖変えるとか。 と、ここまで書いてから気づいたけど if($plist[$key] == $log[$a]) 文字列で==はちゃんとした判定はできないから if($plist[$key] === $log[$a]) ===じゃないとだめだよ。
541 名前:nobodyさん mailto:sage [2009/12/14(月) 08:12:41 ID:???] >>540 ごめん俺よくわかってないかもしれんが 同じ文字列型同士で == じゃ問題ある場合ってあったっけ?
542 名前:nobodyさん mailto:sage [2009/12/14(月) 10:38:45 ID:???] >>541 同じ文字列型でも数値型で比較される場合があるから、 文字列で比較する場合はなるべく===を使った方がいいってことじゃない?
543 名前:nobodyさん mailto:sage [2009/12/14(月) 11:10:23 ID:???] >>542 文字列型同士の比較なら==でも===でも値は一緒な気はしたんだけどそういうことあるの? 例えばどういう場合だろ。
544 名前:nobodyさん mailto:sage [2009/12/14(月) 11:55:04 ID:???] 銀さんのbotを参考に製作中だけど、 cronがうまく動かない。 「zu groß」って容量大きすぎってこと?どうすればいいの?
545 名前:nobodyさん mailto:sage [2009/12/14(月) 12:11:03 ID:???] >>544 状況の情報が少なすぎる kwsk
546 名前:nobodyさん mailto:sage [2009/12/14(月) 13:07:35 ID:???] >>544 cron-job.orgなら「zu gro?」になってても botの動き的には正常稼働されてるはずだから気にすんな
547 名前:nobodyさん [2009/12/14(月) 15:22:27 ID:h7BWhtMh] 自動フォロー返しだけやりたいんだけどbotとか初心者なんです。 どうやってやるんですか?
548 名前:nobodyさん mailto:sage [2009/12/14(月) 15:28:22 ID:???] BOTというかプログラム初心者? それだとまずPHPスレとか見て基本覚えたほうがいいんじゃないかな。
549 名前:nobodyさん [2009/12/14(月) 15:49:04 ID:h7BWhtMh] >>548 そうですか・・・初心者なんですけど、やりたいのはフォロー返しだけなんで言われるようにすればできるとは思うんだけど、 そういう紹介サイト的なのがあったらいいんだけど。ってそんな簡単じゃないですよね。 PHPスレものぞいてみます。
550 名前:nobodyさん mailto:sage [2009/12/14(月) 16:25:45 ID:???] びっくりするほど他力本願だな。
551 名前:nobodyさん [2009/12/14(月) 16:27:31 ID:h7BWhtMh] >>550 そうなんです〜。。。昔twitterには自動フォロー機能ついててよかったけど・・・今はフォロワー管理が大変。 プログラムとか難しいことはさけてフォロー返しだけできたらいいと考えてる愚か者ですw
552 名前:nobodyさん mailto:sage [2009/12/14(月) 16:32:36 ID:???] >>551 そんなに面倒臭がってるならフォロー返しなんかやらなきゃいいだけのこと
553 名前:nobodyさん [2009/12/14(月) 17:10:33 ID:h7BWhtMh] >>552 いやいや、めんどくさくは無いんですよ。ただプログラムの根本からまともに勉強始めたら数ヶ月かかるでしょ!? 何ヶ月もPC画面に縛り付けられるほどの時間がないだけ。 3日程度ならいいけど。
554 名前:nobodyさん mailto:sage [2009/12/14(月) 17:11:57 ID:???] ・・・それをめんどくさいって言うんだよ
555 名前:nobodyさん mailto:sage [2009/12/14(月) 17:16:59 ID:???] >>543 ググったら見つかったけど logic.stepserver.jp/memo.cgi/archive/506/ とりあえず試してみたのがこれ codepad.org/7VTuvTdy 上3つはちゃんと動いてるけど下3つはちゃんと動いてないね
556 名前:nobodyさん mailto:sage [2009/12/14(月) 17:27:12 ID:???] jp.php.net/manual/ja/types.comparisons.php 公式マニュアルに全部書いてある
557 名前:nobodyさん mailto:sage [2009/12/14(月) 17:29:44 ID:???] >>553 いいサイト教えてやるよ www.google.co.jp/ このサイトで検索すればtwitterAPIの仕様から各言語の利用方法まで詳細に載ってるサイトを検索できるよ。 自動フォロー機能ってのも検索してみれば出てくるんじゃないかな?
558 名前:nobodyさん [2009/12/14(月) 17:49:50 ID:h7BWhtMh] >>555 ありがとう。この文字をコピーしてどこに貼り付けたらいいのかな?・・・
559 名前:nobodyさん mailto:sage [2009/12/14(月) 17:53:07 ID:???] おいお前ら、もう構ってやるなよ…真性だぜ
560 名前:nobodyさん mailto:sage [2009/12/14(月) 17:54:48 ID:???] >>558 おでこ
561 名前:nobodyさん [2009/12/14(月) 17:58:01 ID:h7BWhtMh] >>560 おでことは?
562 名前:nobodyさん [2009/12/14(月) 17:59:54 ID:h7BWhtMh] lil.la/technology/autofollow/ これ、インストールしてさっきの文字を貼り付けてみたけどダメだった・・・
563 名前:nobodyさん [2009/12/14(月) 18:01:48 ID:h7BWhtMh] あとd.hatena.ne.jp/shibason/20091018/1255866012 この人が1番まとも書いてくれてるようなんだけど、 この文字を結局どこへ貼り付けたらいいか書いてないからよく分からん。
564 名前:nobodyさん [2009/12/14(月) 18:07:01 ID:h7BWhtMh] www.tweetmanager.com/ ←これにも登録してオートフォローとかを有効にしたつもりではいるんだけど、変化なしです。
565 名前:nobodyさん mailto:sage [2009/12/14(月) 18:09:35 ID:???] 初心者の人は銀さんのbotを参考にするといいと思う。 昨日からbot作りはじめたけど postさせるところまではできたよ。 >>546 ありがとう。気にしないことにして次の手順頑張る。
566 名前:nobodyさん mailto:sage [2009/12/14(月) 18:16:20 ID:???] がんばれ><
567 名前:nobodyさん [2009/12/14(月) 18:17:31 ID:h7BWhtMh] 銀さんのbotはどこから読めば?一番初めはただのガタガタの文字しかのってないし・・・
568 名前:nobodyさん [2009/12/14(月) 18:18:25 ID:h7BWhtMh] www.tweetmanager.com/ ←ってかこれって違うの?
569 名前:nobodyさん mailto:sage [2009/12/14(月) 18:25:19 ID:???] もう死ねよ
570 名前:nobodyさん mailto:sage [2009/12/14(月) 18:27:26 ID:???] d.hatena.ne.jp/silverbot/20090809/1249807557 ↑銀次さんのやつ。 リンク貼るくらいしかできないけど頑張れー! サーバの用意とかpostさせる手順1とか、トラックバックのとこに色々あるから。
571 名前:nobodyさん mailto:sage [2009/12/14(月) 18:30:34 ID:???] >>569 da ma re
572 名前:nobodyさん mailto:sage [2009/12/14(月) 18:30:54 ID:???] あ、やりたいのはフォロー返しなのか・・・ お役に立てなかったかも。。ごめん
573 名前:nobodyさん [2009/12/14(月) 18:55:50 ID:h7BWhtMh] いえいえ、教えてくれた方ありがとう!!ゆっくり銀さんのを読んでみますね。参考になります。
574 名前:nobodyさん mailto:sage [2009/12/14(月) 19:05:13 ID:???] PHPでキャラbotのソース書いてるんだが、いまいち分からないところが出てきた リプライで「A」に反応して「Bをつくりますか?」とか「B入りますか?」 みたいに返したい つまり「BC」という2つの変わる部分が欲しいといえばいいのだろうか B=食べ物名 C=つくりますか?、入りますか? のような文 というふうにしたい 今のところのソースが下の状態 //前略//// $mesi=array("ごはん", "パン",); //中略///// if(preg_match("/はらぺ|はらへ|腹減/u",$com) > 0){ $key = array_rand($mesi); $post = $mesi[$key]; $return =$reply_name." おなかすいたんですか? じゃ、".$post."はどうですか?"; } //後略//// もうどこをどういじればいいのかわからなくなってきた/(^o^)\ $return =〜以降を増やせばいいのかもしれないが、どうやって追加すればいいのか分からないんだ だれか助けてくれ
575 名前:nobodyさん mailto:sage [2009/12/14(月) 19:18:30 ID:???] >>574 はい。 returnは予約語なはずだから使わないようにね <?php $reply_name = "@screen_name "; //前略//// $mesi=array("ごはん","パン"); //中略///// $com = "はらへった"; if(preg_match("/(はらぺ|はらへ|腹減)/u",$com,$m) > 0){ $key = array_rand($mesi); $post = $mesi[$key]; $returns =$reply_name . " おなかすいたんですか? じゃ、" . $post . "はどうですか?<br>"; echo $returns; } ?>
576 名前:nobodyさん mailto:sage [2009/12/14(月) 19:34:18 ID:???] UZEEEEEEEEEEEEEEEEE
577 名前:529 mailto:sage [2009/12/14(月) 20:21:19 ID:???] >>540 ありがとうございます!とりあえず===にしました エラーはFatal error: Maximum execution time of 8 seconds exceeded in…というエラーが時々出ます。 鯖とツイッターどちらでタイムアウトしているかは分かりません。 とりあえず今set_time_limitで指定しましたが今は結果待ちです。 cron-jobが全く動いてくれないのもこのせいでしょうか? 今日の昼に毎日毎時0分に叩くよう設定しましたが1回も動いてくれません…。 @pagesとcron-jobで動いている人は沢山いるようなのでコツがあるのでしょうか? Aktiv?はちゃんとjaにしています。
578 名前:529 mailto:sage [2009/12/14(月) 20:28:28 ID:???] 577訂正 @pagesではset_time_limitが使えませんでした…
579 名前:543 mailto:sage [2009/12/14(月) 21:33:06 ID:???] >>555 うーん。変数の型が違うと暗黙の型変換が行われるから===を使うべきってのはわかってるんだ。 また同じことを言っちゃうけど、「同じ型の場合」に == と === で何が違うの?て話なんだ。 もちろん、値が保障されない場合も考えて===を使う「べき」ってのはわかるし コーディングするときはもちろんそうするだろうけど 型が同一の場合にも==だとなんか問題あるのかなって確認したかったんだ。 特になさげかな。
580 名前:DAWNTO_Windy-melt ◆Windy/f9HNwg mailto:sage [2009/12/14(月) 22:07:50 ID:???] 経験上言わせていただきますが、`の処理には気をつけてくださいね…冷や汗をかきました。 今現在@windymeltanにmaximaプラグインを積んでいます。数式処理のテスト中です。 @windymeltan maxima:2+4; のように書いてテストしていただいて結構です。 乱筆しました。失礼。
581 名前:nobodyさん mailto:sage [2009/12/14(月) 22:59:49 ID:???] うん、はしょりすぎて何を言いたいのかわからない。
582 名前:nobodyさん mailto:sage [2009/12/15(火) 00:07:48 ID:???] >>577 毎時0分はたくさんの方が設定していると思われます。 処理内容にもよりますが、ジャストタイムが不要ならば13分とか、48分とかの 中途半端な時間に設定した方が良いかもしれませんね。 1分とかだとサーバーがまだ0分のヤツを処理してたりしてw
583 名前:DAWNTO_Windy-melt ◆Windy/f9HNwg mailto:sage [2009/12/15(火) 00:43:48 ID:???] >>581 PHPのバッククォートはきちんとエスケープしませう。というお話でした。
584 名前:nobodyさん mailto:sage [2009/12/15(火) 08:40:01 ID:???] >>1 twitter なぜナウやnawではなく「なう」なのか d.hatena.ne.jp/RRD/20090727/1248682147
585 名前:nobodyさん mailto:sage [2009/12/15(火) 09:44:33 ID:???] >>584 マルチ乙
586 名前:nobodyさん mailto:sage [2009/12/15(火) 10:00:25 ID:???] >>584 なんでアチコチに貼ってんの? 記事の内容も、典型的な同属嫌悪だし。
587 名前:nobodyさん mailto:sage [2009/12/15(火) 11:12:56 ID:???] ネガキャンしたきゃ愚痴スレででもやるべきだな。
588 名前:nobodyさん mailto:sage [2009/12/15(火) 14:13:06 ID:???] CRONが叩きに来てないのか、叩きに来たけどタイムアウトしたのかどうやったら分かる? PHP呼び出すHTML作ってアクセス解析付けたけど何もログが残ってない
589 名前:nobodyさん mailto:sage [2009/12/15(火) 14:15:37 ID:???] >>588 CRONサーバー側のログを見る。
590 名前:nobodyさん mailto:sage [2009/12/15(火) 14:31:21 ID:???] phaさんのスクリプトでランダムポストしてるんだけど、 10ツイート/day程度の頻度で、ポスト候補のテキストパターンは100近く仕込んであるのに やたら同じのばかり選ばれるみたいで、ポストが飛んでしまうことがよくある。 cronも安定してるし他の挙動には問題ないので、この状態がすごく気になる… どうにか回避する方法はないでしょうか。
591 名前:nobodyさん mailto:sage [2009/12/15(火) 15:41:37 ID:???] ランダムで選ばれたテキストパターンが 自分の発言最新10件と一致しなければpostする様にするとか
592 名前:nobodyさん mailto:sage [2009/12/15(火) 15:49:39 ID:???] GAEでCRONの某記事の人がPC上で動かすCRON?みたいなの作ったみたいだな
593 名前:nobodyさん mailto:sage [2009/12/15(火) 16:21:43 ID:???] >>589 cron-jobにそんなログ見れるページあったっけ?
594 名前:nobodyさん mailto:sage [2009/12/15(火) 16:22:37 ID:???] >>593 ない
595 名前:nobodyさん mailto:sage [2009/12/15(火) 16:23:26 ID:???] >>591 529が作ってたから入れてみたけどタイムアウトになって駄目
596 名前:nobodyさん mailto:sage [2009/12/15(火) 16:24:36 ID:???] >>594 だったら八方塞がりだな… 他の人は動かない原因どうやって突き止めてるんだ
597 名前:nobodyさん mailto:sage [2009/12/15(火) 18:10:54 ID:???] >>595 //ポストリストとログ読み込み $filename = "plist.txt"; $plist = file($filename); $filename2 = "log.txt"; $log = file($filename2); //キー生成 $key=array_rand($plist); $results = 0;//重複判定用 //キーに該当するポストとログが同じか調べる foreach($log as $logs){ if($logs === $plist[$key]){//ログと重複した場合 $results=1;//重複している break;//重複しているのでforeachから抜ける } } if($results==0){//$resultsが0すなわち過去10件と重複してない場合 $post=$plist[$key];//ポストする文にする } これでどうだ
598 名前:nobodyさん mailto:sage [2009/12/15(火) 18:37:19 ID:???] 芸能人の非公式botってどうなんだろう
599 名前:nobodyさん mailto:sage [2009/12/15(火) 19:31:57 ID:???] >>598 それいったら、キャラクターの非公式botだって…
600 名前:nobodyさん mailto:sage [2009/12/15(火) 19:35:48 ID:???] >>599 全然違うだろ…
601 名前:nobodyさん mailto:sage [2009/12/15(火) 20:07:07 ID:???] >>597 被ってたらポストしないじゃなくて >>529 が>>539 で言ってたみたいにもう一度array_randしないと 結局ポストせず終わるから駄目じゃないか? それするとタイムアウトするみたいだけど
602 名前:nobodyさん mailto:sage [2009/12/15(火) 20:15:04 ID:???] ・ポストリストとログ読み込み ・ポストリストからランダムにポストする文を選ぶ ・ログと被ってないか判断 ・被ってたら選び直し ・最新ポスト追加した最新10ポストのログ再作成 ・ポスト >>529 はこれだけ入れたソース作ったみたいだけど 確かに判定入れるならこれだけやらないと意味ないんだよね… 別プログラムでリプライとか入れてるならそっちも含めたログにすると理想的
603 名前:nobodyさん mailto:sage [2009/12/15(火) 20:33:24 ID:???] 選び直しを入れてるからタイムアウトになるんだろ
604 名前:nobodyさん mailto:sage [2009/12/15(火) 20:43:17 ID:???] 選び直し入れないと判定そのものの存在意義がなくなる ちゃんとポストするために入れてるんじゃないの? 結局ポスト出来ないなら判定もログ保存もツイッターがしてくれるからいらないよ
605 名前:nobodyさん mailto:sage [2009/12/15(火) 23:59:15 ID:???] cron-jobが動いてくれないよ〜;0; botがまったく無反応になってしまった・・・
606 名前:DAWNTO_Windy-melt ◆Windy/f9HNwg [2009/12/16(水) 00:14:04 ID:CexvtTFs] maximaと連携させるプラグイン作りましたが誰も使わないですよね…¬ knowledge.ddo.jp/info/index.php?option=com_content&view=article&id=51:maximaplugin&catid=35:2009-12-12-10-21-55
607 名前:nobodyさん mailto:sage [2009/12/16(水) 00:59:49 ID:???] >>601 //ポストリストとログ読み込み $filename = "plist.txt"; $plist = file($filename); $filename2 = "log.txt"; $log = file($filename2); //キー生成 $key=array_rand($plist); //キーに該当するポストとログが同じか調べる foreach($log as $logs){ if($logs === $plist[$key]){//ログと重複した場合 $key=array_rand($plist);//もう一度探す continue;//foreachに戻る } } $post=$plist[$key];//ポストする文にする こうか
608 名前:nobodyさん mailto:sage [2009/12/16(水) 01:08:08 ID:???] foreach($log as $logs){ これは・・・ゴクリ
609 名前:nobodyさん mailto:sage [2009/12/16(水) 01:11:00 ID:???] ちなみにそれ重複が判明した以降の$logsしか判定しないぞ
610 名前:nobodyさん mailto:sage [2009/12/16(水) 01:34:58 ID:???] >>609 ばれなきゃいいと思ってたけど指摘されたか。 //ポストリストとログ読み込み $filename = "plist.txt"; $plist = file($filename); $filename2 = "log.txt"; $log = file($filename2); //キー生成 $key=array_rand($plist); $i=0 //キーに該当するポストとログが同じか調べる while($i<10){ if($log[$i] === $plist[$key]){//ログと重複した場合 $key=array_rand($plist);//もう一度探す $i = 0;//$logのキーを元に戻す continue;//whileに戻る } $i++;//$logのキーを1つ進める } $post=$plist[$key];//ポストする文にする 何度もすまん。けっきょくwhileに戻ったな。 @pagesみたいな鯖じゃなくてもっといい鯖使えばいいのにとか思ったり。
611 名前:nobodyさん mailto:sage [2009/12/16(水) 01:54:02 ID:???] 俺だったら $filename = "plist.txt"; $plist = file($filename); $filename2 = "log.txt"; $log = file($filename2); $key = array_rand($plist); $log_slice = array_slice($log, 0, 10); while (in_array($plist[$key], $log_slice)) { $key = array_rand($plist); } $post = $plist[$key]; //do〜whileでもいいけど
612 名前:nobodyさん mailto:sage [2009/12/16(水) 10:29:53 ID:???] foreach($log as $logs){ ↑これって配列をつくって並べてる、であってる? まずいの? phaさんのこれじゃね?
613 名前:nobodyさん mailto:sage [2009/12/16(水) 10:44:25 ID:???] こうじゃね? あと改行削るべきだし、できたらファイル読み込みとかにエラーチェック入れたいが。 $filename = "plist.txt"; $filename2 = "log.txt"; $plist = @file($filename, FILE_IGNORE_NEW_LINES | FILE_SKIP_EMPTY_LINES); $log = @file($filename2, FILE_IGNORE_NEW_LINES | FILE_SKIP_EMPTY_LINES); $plist_uniq = array_diff($plist, array_slice($log, 0, 10)); //重複しない候補 $post = $plist_uniq[array_rand($plist_uniq)];
614 名前:nobodyさん mailto:sage [2009/12/16(水) 10:45:55 ID:???] あ、テスト用に追加してた@はなくてもいいやむしろ取ったほうがいい。 エラー出さなくするものだから。
615 名前:nobodyさん mailto:sage [2009/12/16(水) 11:02:27 ID:???] ログが常に最新10件である事前提だな… xmlで取って来れないものか そうしたら最新10件のログを作成する部分だけはいらなくなる
616 名前:nobodyさん mailto:sage [2009/12/16(水) 11:06:29 ID:???] え?どういうこと?
617 名前:nobodyさん mailto:sage [2009/12/16(水) 11:13:08 ID:???] あー他の部分見てなかったけどこれAPIからのログは読んでないわけか。 まあいんじゃね。 ていうかxmlでもjsonでもAPI叩けば拾ってこれるし。
618 名前:nobodyさん [2009/12/16(水) 11:35:25 ID:GKFzjgHo] タロット占いできるキャラbotを作りたいんですが、 botというかPHP初心者で取っ掛かりが分かりません。 スクリプトがあまり重くなると困るので、 タロットの結果を書いたxmlを作って「占って」とリプライされたら そのつどタロットのxmlを読み込んで結果をランダムに出力するとか可能ですか? それともみなさん、 $tarot=array("",""......); とかでやってるんでしょうか・・・?
619 名前:nobodyさん mailto:sage [2009/12/16(水) 12:20:23 ID:???] >>613 ログ生成を追記モードでやってる場合は下の方が最新ログになるから ログ読み取りの部分と被ってない部分の抽出はこうじゃ駄目かな //ログ読み取りの部分 $filename2 = "log.txt"; $fp2 = fopen($filename2,'r+'); flock($fp2, LOCK_EX); for($i = 0;!feof($fp2);$i++){ $log[$i] = fgets($fp2); } fclose($fp2); //被ってない部分の抽出 $plist_uniq = array_diff($plist, array_slice($log, $i-10, $i)); 上から10個が最新ってログ作成の時にやりにくいしタイムアウトの一因になると思う。 ただfgetsの時はどうやって空行と改行文字飛ばせばいいか分からないし array_slice使ったこと無いから位置指定に変数が使えるかどうか試してない。 配列の最後のキーを簡単に取得できる方法があったらごめん
620 名前:nobodyさん mailto:sage [2009/12/16(水) 14:11:14 ID:???] >>619 そこで行数カウントしなくても $plist_uniq = array_diff($plist, reverse(array_slice($log,0,10)) ); reverseで逆転すればいいだけだし 要素数カウントするなら別に $i = count($log) ;みたいなこともできる。
621 名前:nobodyさん mailto:sage [2009/12/16(水) 14:14:05 ID:???] あー、こっちのが楽か。 $plist_uniq = array_diff($plist, array_slice($log,-10) );
622 名前:nobodyさん [2009/12/16(水) 23:19:30 ID:j0jV78ZZ] www.kc-c.biz./consulting/contents-business/twitter.html ここにヒントが...
623 名前:nobodyさん mailto:sage [2009/12/17(木) 01:12:23 ID:???] ただの宣伝じゃねーか。
624 名前:nobodyさん mailto:sage [2009/12/17(木) 21:45:44 ID:???] 自動フォロー返しのときにDM送ろうとしてるんだが そのDMのメッセージ内容に相手のname(screen_nameじゃない方)を使いたいときどうすればいい?
625 名前:nobodyさん mailto:sage [2009/12/17(木) 22:32:36 ID:???] TL取得すると一緒についてくると思うけど
626 名前:nobodyさん mailto:sage [2009/12/18(金) 00:57:26 ID:???] そのものnameって値で入ってるっしょ。
627 名前:nobodyさん mailto:sage [2009/12/18(金) 19:37:19 ID:???] フォローにTLは取得しない フォローイングとフォロワーのAPIでname取得できなくね?
628 名前:nobodyさん mailto:sage [2009/12/18(金) 19:42:38 ID:???] 取得すればいいのでわ?
629 名前:nobodyさん mailto:sage [2009/12/18(金) 20:11:26 ID:???] TL上で俄かにOAuthで認証するのが流行り出した。 クライアント名を変えられるのが人気らしいですね。 使ってますか? 私はまだベーシック認証ですが。
630 名前:nobodyさん mailto:sage [2009/12/18(金) 21:22:41 ID:???] すみませんだれか知恵をお貸しください。 phaさんのプログラミングを利用させてもらっています。 本日botのパスワードを変更したらその後まったくbotがうごかなくなってしまいました。 普通投稿とリプライ投稿ともまったく別のエラーになります。 普通投稿の方は パスワードかユーザー名が違うとのことですが、 普通にこのIDとパスでtwitterにログインできるので間違っているはずがありません。 どこか別の記述が間違っているのかと別IDでpostしてみましたが通常通り動きました。 何故か一体のbotだけうまくいかない状況です。 もう一点、同botなのですがリプライの方は Fatal error: Wrong parameters for Exception([string $exception [, long $code ]]) in /usr/local/www/htdocs/○○/public_html/Services/Twitter/Jsphon/Error.php on line 185 と出、185行目にエラーがあるそうですが、185行目は $message = convert_text($message); で何が問題あるのかさっぱりわかりません。 他の正常に動いているbotのソースを丸々コピーしてみましたが同じエラーになります。 自分ではこれ以上の原因究明ができませんでした。 twitterのアカウントに問題がある気がするのですが、 twitterのhome画面ではちゃんと書き込みができるのようでもう何が何やらさっぱりです。 申し訳ございませんが誰かご教授いただけると嬉しいです。
631 名前:630 mailto:sage [2009/12/18(金) 21:30:49 ID:???] すみません630です。 何故か今、回復してしまいました サーバーの調子が悪かったのでしょうか・・・ スレ汚してしまい本当にすみません
632 名前:nobodyさん mailto:sage [2009/12/18(金) 22:56:43 ID:???] >>631 そういう時はできるだけ詳細を書いておけば後続者の役に立つと思うからまだ見ていたら覚えといてくれ。
633 名前:nobodyさん mailto:sage [2009/12/18(金) 23:08:00 ID:???] 自分もphaさんのを利用させてもらってるんだけど、 返すリプライによって画像を変えたい場合ってどうしたらいいんですかね? 他の方のプログラムだとみつけたんだけどphaさんのって発言はテキストファイルで他の人とちょっと勝手が違うからよくわからないです…
634 名前:nobodyさん mailto:sage [2009/12/19(土) 00:14:49 ID:???] phpを勉強して折衷したプログラムを作ればいい
635 名前:nobodyさん mailto:sage [2009/12/19(土) 00:32:47 ID:???] フォローしてない人の発言を特定のキーワードで検索、取得するにはどうすれば良いのでしょうか…
636 名前:nobodyさん mailto:sage [2009/12/19(土) 01:02:08 ID:???] search.twitter.com/ pcod.no-ip.org/yats/ buzztter.com/ このあたりがRSS吐いてるから適当に解析するよろし。
637 名前:nobodyさん mailto:sage [2009/12/19(土) 02:33:57 ID:???] >>636 Thanx a lot!
638 名前:nobodyさん mailto:sage [2009/12/19(土) 07:18:16 ID:???] >>629 ベーシック認証が廃止になるから twitter.com/tweeterjp/status/6522684422
639 名前:nobodyさん mailto:sage [2009/12/19(土) 11:42:19 ID:???] >>638 ついーたーが言ってるだけじゃなあ。 URLもRT用の無駄URLだしソース元ないん?
640 名前:nobodyさん mailto:sage [2009/12/19(土) 14:52:54 ID:???] jp.techcrunch.com/archives/20091209twitter-le-web-2009/ apiwiki.twitter.com/OAuth-FAQ
641 名前:nobodyさん mailto:sage [2009/12/19(土) 17:58:05 ID:???] corn-job.orgの動作が不安定なため、GAEでcronを動かしたいと思っています 自分なりに色いろやってみたのですが、どうしてもうまくいかないので相談させてください。 ttp://d89.s41.xrea.com/twitter/howtomake_bot.html こちらをを参考に、cron.yaml/app/yaml/task.pyを作成し GAE launcherで読み込んだのですが、Runさせようとすると数秒でエラーのアイコンが出て先に進めません ログはこんな感じになっています。URLがダメなんでしょうか… Running command: "['C:\\Python25\\python.exe', 'C:\\Program Files\\google\\google_appengine\\dev_appserver.py', '--admin_console_server=', '--port=8089', 'C:\\bot']" ERROR 2009-12-19 08:32:38,951 dev_appserver_main.py:363] Fatal error when loading application configuration: Invalid object: Unknown url handler type. <URLMap static_dir=None secure=default script=None url=/.* static_files=None upload=None mime_type=None login=optional require_matching_file=None auth_fail_action=redirect expiration=None > in "C:\bot\app.yaml", line 8, column 1 2009-12-19 17:32:39 (Process exited with code 1)
642 名前:nobodyさん mailto:sage [2009/12/19(土) 18:26:07 ID:???] >>641 まず、ml115を買ってくる
643 名前:nobodyさん mailto:sage [2009/12/19(土) 18:42:27 ID:???] >>642 自分で鯖を立てることができるならこんなことで悩んだりしません 意地悪ですね
644 名前:nobodyさん mailto:sage [2009/12/19(土) 19:51:19 ID:???] できるようになればいいじゃん
645 名前:nobodyさん mailto:sage [2009/12/19(土) 19:52:17 ID:???] 鯖立てしなくても24時間PCつけっぱなしにしてブラウザ自動リロードにしておけばいいだけ
646 名前:nobodyさん mailto:sage [2009/12/19(土) 19:56:18 ID:???] リロードなんかしなくてもJavaScriptじゃだめなのか
647 名前:nobodyさん mailto:sage [2009/12/19(土) 19:57:39 ID:???] >>643 まぁ、やってみなよ、おもしろいから。 DDNSとかで セキュリティ??知らんがな(´・ω・`) メールとかいろいろ遊べるし
648 名前:nobodyさん mailto:sage [2009/12/20(日) 16:24:25 ID:???] >>641 同じようなとこで躓いた経験があります。yamlファイルの記述に問題があったようです。 そこのサイトで紹介しているyamlファイルのテキストをブラウザからコピペしたもの ではなく、そのサイトからリンクされているページで紹介されている ソースコードをコピペしてやってみると幸せになれるかもしれません。 違っていましたらあしからず。
649 名前:nobodyさん mailto:sage [2009/12/20(日) 20:43:29 ID:???] >>648 おおおおお仰る通りにしてみたら成功しました!幸せになれました 本当にありがとうございました
650 名前:nobodyさん mailto:sage [2009/12/20(日) 23:25:31 ID:???] ベーシック認証が廃止になったら、phaさんのスクリプトとかも動かなくなんの
651 名前:nobodyさん mailto:sage [2009/12/21(月) 00:24:06 ID:???] >>650 OAuthに対応しなきゃ動かなくなるわな
652 名前:nobodyさん mailto:sage [2009/12/21(月) 00:32:05 ID:???] OAuthはまだいいよ。 できなくなったら対策考えればいい。 ググればいくらでも出てくるからな。 ググらないのは甘え
653 名前:nobodyさん mailto:sage [2009/12/21(月) 00:51:02 ID:???] OAuth導入できたんだけどAPIが上手く使いこなせない 慣れるの大変だなまた これで他人のソース丸コピペBot量産厨が減るといいけどwww
654 名前:nobodyさん mailto:sage [2009/12/21(月) 00:53:31 ID:???] PHPでOAuth使おうと思ったがサンプルはcurlしか使えないんだな。 もっとましな方法はないのか…
655 名前:nobodyさん mailto:sage [2009/12/21(月) 00:58:00 ID:???] ラッパーの自作ライブラリはさんでるから対応さえしときゃなんとでもなりそうだ。
656 名前:nobodyさん mailto:sage [2009/12/21(月) 10:45:51 ID:???] ていうか今までもcurl使ってたと思ったがましな方法って例えば何だ。
657 名前:nobodyさん mailto:sage [2009/12/21(月) 12:58:32 ID:???] phaさんので使われてる日本語版Services_Twitterはcurl使ってない d.hatena.ne.jp/sotarok/20080807/1218114681
658 名前:nobodyさん mailto:sage [2009/12/21(月) 14:12:31 ID:???] そこのURLでも言ってるがcurlそんなダメか?
659 名前:nobodyさん mailto:sage [2009/12/21(月) 21:17:30 ID:???] curlは認知度が低い わざわざ使わなくてもHttp_Requestがある curlの仕様自体が変態
660 名前:nobodyさん mailto:sage [2009/12/21(月) 22:25:00 ID:???] curlを使ってたとこはHttp_Requestが何故か使えないから仕方なく使ってたみたいだが
661 名前:nobodyさん mailto:sage [2009/12/22(火) 04:53:06 ID:???] >>659 fsockopenなんて遅いしそれだったらcurlでいいやと思ってる
662 名前:nobodyさん mailto:sage [2009/12/23(水) 02:57:59 ID:???] 流れを読まずにcronの代わりを考えてみたんだけど、htmlの自動更新のタグ使って代わりにできないかな? htmlのページにフレームかなんかでphp埋め込んで、そのページを延々更新し続けるとcron使わなくても動くんじゃない? 自分はめんどくさくてそんなことせずにcronくんでるんだけど誰かcronわからなくてhtmlの知識持ってる人は試してみてほしい 24時間ずっとブラウザ立ち上げてなきゃいけないけど うーん、やっぱり駄目かな。アホなこと考えてごめん
663 名前:nobodyさん mailto:sage [2009/12/23(水) 03:35:15 ID:???] 別にいいんじゃない? 自分が起きる時間にBOTは起きて自分が寝る時間にBOTは寝る感じで
664 名前:nobodyさん mailto:sage [2009/12/23(水) 11:48:56 ID:???] >>662 考えたことあった ただ>>663 が言うように常にPCを上げておかなきゃいけないからね それが問題にならないbotなら出来ると思うよ
665 名前:nobodyさん mailto:sage [2009/12/23(水) 11:58:43 ID:???] windowsならタスクでなんでだめなの?
666 名前:nobodyさん mailto:sage [2009/12/23(水) 11:59:24 ID:???] てかMETAタグで自動更新するくらいならJavaScript使えばいいのでは?
667 名前:nobodyさん mailto:sage [2009/12/23(水) 12:32:05 ID:???] >>666 前提が「cronは分からないけどhtmlならできる」だから htmlのが敷居低いんでないの?
668 名前:nobodyさん mailto:sage [2009/12/23(水) 14:35:27 ID:???] タグ一行で済むのをわざわざJavaScriptで書く必要はないわな。
669 名前:nobodyさん mailto:sage [2009/12/23(水) 16:50:10 ID:???] htmlやJavaScriptでわざわざ書かなくてもOperaに自動更新ツールついてるし
670 名前:nobodyさん mailto:sage [2009/12/23(水) 21:40:03 ID:???] ブラウザに依存してる方がめんどくさいだろ。
671 名前:nobodyさん mailto:sage [2009/12/24(木) 14:59:33 ID:???] twittbot.net/ このボットジェネレーターが結構使えると思うんだがどう?
672 名前:nobodyさん mailto:sage [2009/12/24(木) 16:16:13 ID:???] その手のは突然サービス終了したらと思うと怖くて使えない
673 名前:nobodyさん mailto:sage [2009/12/24(木) 16:32:20 ID:???] 別に終了してもいいじゃん。 どうせtwitterなんて流行り物だし、使い続けるようなものでもないでしょ
674 名前:nobodyさん mailto:sage [2009/12/24(木) 23:28:41 ID:???] すいません、流れを読まずに質問。 reply_pattern.phpの中身の反応させる言葉なんですけど、 複数の単語がある場合に反応する方法はありますか? たとえば、「ごちそうさま。おいしかった」と@貰ったら 「お粗末さま。おいしくて何より」といった返答をするように、 「ごちそうさま」と「おいしい」の2つの単語がある場合に、 用意した言葉を返答するという感じ。 「ごちそうさま」だけに反応させるものもあるので、二つの言葉がある 場合に、反応する正規表現を教えて下さい。
675 名前:nobodyさん mailto:sage [2009/12/24(木) 23:29:34 ID:???] >>674 www.mnet.ne.jp/~nakama/
676 名前:nobodyさん mailto:sage [2009/12/24(木) 23:43:40 ID:???] >>675 明日(ぼく|わたし)は帰宅します これか!これだな!ありがとう!!助かった。感謝します。
677 名前:674 mailto:sage [2009/12/24(木) 23:59:04 ID:???] あれ、どうやら違うようでした…。自分の頭はサル以下なのか
678 名前:nobodyさん mailto:sage [2009/12/25(金) 01:06:33 ID:???] ごちそうさま.*おいしかった だけでいんじゃね
679 名前:nobodyさん mailto:sage [2009/12/25(金) 01:08:50 ID:???] おいしかった。ごちそうさま。 だったら?
680 名前:674 mailto:sage [2009/12/25(金) 02:20:44 ID:???] >>678 それだと「ごちそうさま」だけの@に反応しなくなる また、 おいしかった.*ごちそうさま だと、「おいしかった」に反応してしまうんだ… >>679 「おいしかったーーー!うまい!ごちそうさま!」とか 「ごちそうさま!パスタおいしかった」にも反応させたいんだ 「おいしかった。ごちそうさま。」ってきっちり@もらって 反応させるしか方法はないのかな…
681 名前:nobodyさん mailto:sage [2009/12/25(金) 02:24:57 ID:???] 2つif使えば?
682 名前:nobodyさん mailto:sage [2009/12/25(金) 02:38:50 ID:???] 「おいしい」じゃ「おいしかった」は引っかからないのでは?
683 名前:674 mailto:sage [2009/12/25(金) 02:53:24 ID:???] >>681 if?初心者なものですまんがわかるように解説してくれ… ちなみに「プログラミングができなくても作れるTwitter botの作り方」を 参考にしてphpいじってる。 ttp://pha22.net/text/twitterbot.html タグはこんなかんじで "リア充(は)?爆発しろ"=> array( "「爆発しない」", "「爆発する」", ), >>682 ああ!微妙に単語を変えればいいのか…? なるほど 2つの単語同時指定っていうのが無ければ、そうする。ありがとう
684 名前:nobodyさん mailto:sage [2009/12/25(金) 03:13:29 ID:???] プログラム分からないでやる意味が分からん。分かるようになれよ
685 名前:nobodyさん mailto:sage [2009/12/25(金) 03:20:06 ID:???] ていうか正規表現のURL貼ってくれてんだからそれ読もうよ。 すごい基本的なこと聞いてるからそれもわかんないんじゃ今後似たような質問だらけになるぞ。
686 名前:nobodyさん mailto:sage [2009/12/25(金) 08:40:21 ID:???] phaさんのスクリプト使わせてもらってるが 反応する単語増やしたらタイムアウトしやすくなってきた .*を多用しすぎたのが良くなかったのか? ファイルサイズを小さくできる(タイムアウトしにくい)表記とか あったら教えて欲しい
687 名前:nobodyさん mailto:sage [2009/12/25(金) 10:26:04 ID:???] >>674 「ごちそうさま」だけでいいならそれだけ書いておけば「おいしかった」があってもなくても引っかかる 「おいしかった」の有無で反応を変えたいなら分けて書けばいい PHP云々以前の問題だと思うよ
688 名前:nobodyさん mailto:sage [2009/12/25(金) 14:08:55 ID:???] 質問の時のテンプレあるといいのかね?
689 名前:nobodyさん [2009/12/25(金) 20:40:14 ID:yLGH+OzA] phpでbot作ってて、APIのmentions.xmlを取得してるんだけど curlで取得してsimplexml_load_stringで読むことはわかるけど このままforeachでループすると同じものを何回も繰り返して 二重にも三重にも実行されることになってしまうがどうしたらそれを回避できる?
690 名前:nobodyさん mailto:sage [2009/12/25(金) 21:03:01 ID:???] 意味が分からん。ループすべき処理にはforeachをかけて、すべきでない処理にはかけなければいいのでは?
691 名前:689 [2009/12/25(金) 21:18:19 ID:yLGH+OzA] >>690 いや、そこんとこの処理をどうするか考えてる ループを実行するたびにファイルにでもidを記録して ループを回す度にチェックして重複してたら実行しないようにすればいいんだろうけど それだとすごく時間かかる
692 名前:nobodyさん mailto:sage [2009/12/25(金) 21:24:49 ID:???] ランダム発言でもしてて発言が重複しないようにしたいわけ? それなら上のほうで同じような話が出てるよ
693 名前:689 [2009/12/25(金) 21:55:28 ID:yLGH+OzA] >>692 そうじゃない、xmlから拾うときに前拾ったのを拾わないようにするにはどうしたらいい?
694 名前:nobodyさん mailto:sage [2009/12/25(金) 22:01:38 ID:???] >>693 なんらかの方法でマークしておけよ。 xml取得時に日時で絞っておくとか、IDを記録しておくとか、、、
695 名前:689 [2009/12/25(金) 22:07:51 ID:yLGH+OzA] >>694 日時で絞るなんて機能あった? IDを記録しておく方法だと ファイルに記録すると読み込み時間かかるし、ファイルの中身を消すタイミングもめんどくさいし データベースでも同じ
696 名前:689 [2009/12/25(金) 22:16:08 ID:yLGH+OzA] ああ、取得した最新のidをファイルに記録しといて今度取得するときsince_idパラメータを指定すればいいのか
697 名前:nobodyさん mailto:sage [2009/12/25(金) 22:42:30 ID:???] >>696 日時でもなんでもやり方はあるぞ 言っちゃ悪いがそれくらい分かれ あとsageろ
698 名前:nobodyさん mailto:sage [2009/12/26(土) 00:09:15 ID:???] なんか無駄に長くて要点わかりにくいんだけど 要するに重複しないステータスを取得したいってことでいいんかね。 まあ>>696 でいいんだろうけどAPI叩いて連続で取得したんなら ステータスIDをキーにした配列に格納しなおして重複避けたり 読み終わったIDを保存しといてそれは除外するなり手はあると思うが。
699 名前:nobodyさん mailto:sage [2009/12/26(土) 00:30:52 ID:???] どうせ2分とかの間隔で取得するんだから、 00:26:01に起動 → 00:24:00〜00:25:59のステータスが有効 00:28:02に起動 → 00:26:00〜00:27:59のステータスが有効 という感じでやってる。 mentions取得できなかったら?そんなの無視。
700 名前:nobodyさん mailto:sage [2009/12/26(土) 00:36:35 ID:???] 時間で指定できるのもあったよね確か
701 名前:nobodyさん mailto:sage [2009/12/26(土) 02:55:24 ID:???] sinceは廃止される引数だったと思う。 since_id max_id を使って欲しいんだろう。
702 名前:nobodyさん mailto:sage [2009/12/26(土) 14:39:10 ID:???] BOTで投稿したときに「APIから」と表示されてしまうのですが、 これを偽装する手段ってありませんか?
703 名前:nobodyさん mailto:sage [2009/12/26(土) 14:40:46 ID:???] OAuth認証にすれば自由にできる
704 名前:nobodyさん mailto:sage [2009/12/26(土) 14:49:04 ID:???] >703 ありがとうございます。 調べてみます
705 名前:nobodyさん mailto:sage [2009/12/27(日) 05:06:54 ID:???] GAEのcron.xmlで、「毎日○時〜○時の間のみ○分間隔で実行する」という設定は可能ですか? <schedule>の書式とにらめっこしたけど調べた範囲では分からなかった…
706 名前:nobodyさん mailto:sage [2009/12/27(日) 08:49:06 ID:???] >>705 ○分間隔にしといてBOT側で時間の対応をする
707 名前:nobodyさん mailto:sage [2009/12/27(日) 11:31:22 ID:???] >>705 その後、どうですか?
708 名前:nobodyさん mailto:sage [2009/12/27(日) 23:04:05 ID:???] FileQっていう月99円のレン鯖はcron無制限だよ。実際に自分のbotで試したらちゃんと動いた。
709 名前:nobodyさん mailto:sage [2009/12/28(月) 05:11:09 ID:???] 皆さんbotのプログラミング言語は何を使っているんですか?
710 名前:nobodyさん mailto:sage [2009/12/28(月) 07:37:01 ID:???] 過去ログ読め BOTの為だけに鯖借りるのはなんかなーとは思う
711 名前:nobodyさん mailto:sage [2009/12/28(月) 08:14:48 ID:???] 無料鯖借りればいいじゃん
712 名前:nobodyさん mailto:sage [2009/12/28(月) 11:10:23 ID:???] 自鯖立てればいいじゃん。
713 名前:nobodyさん mailto:sage [2009/12/28(月) 11:34:53 ID:???] 自分で書き込めばいいじゃん。
714 名前:nobodyさん mailto:sage [2009/12/28(月) 12:16:36 ID:???] cron使える無料サーバーなんてあるのか? FileQが多分一番安いし一分間隔でcron使えるし
715 名前:nobodyさん mailto:sage [2009/12/28(月) 12:28:27 ID:???] >>713 それボットじゃねーwww FileQ試してみたけどスゲーな 安定して1分間隔でcron動く 1年1180円だしこれでいいんじゃね?
716 名前:nobodyさん mailto:sage [2009/12/28(月) 19:59:23 ID:???] rep2置いたらジエンにつかえるじゃん
717 名前:nobodyさん mailto:sage [2009/12/28(月) 21:38:58 ID:???] 名詞や動詞を組み合わせて発言するボットを作ってる人多いけど、文意がおかしな事になってるじゃん。 もっとちゃんと作ったらいいじゃん。
718 名前:nobodyさん mailto:sage [2009/12/28(月) 22:10:42 ID:???] >>715 FileQは操作に慣れるのに時間がかかる。 慣れるまでが問題かな。
719 名前:nobodyさん mailto:sage [2009/12/29(火) 01:24:34 ID:???] tp://d.hatena.ne.jp/bardothodol/20090930#p1 ここを参考にTL上の単語に反応させてるんですが、サーバーを@PAGESからFileQに移動したら Fatal error: Call to undefined function curl_init() in /home/〜〜〜.php on line 27 というエラーが出るんですが、これってこのサーバーではcurlが使えないってことですよね? curlを使わない方法でTL上の単語に反応させる方法とかありますか? それともcurlが使えるサーバーを探すべきか…
720 名前:nobodyさん mailto:sage [2009/12/29(火) 01:34:48 ID:???] >>717 マルコフ連鎖とかいうのを実装して作るんだけど、あくまで「文と文のつながり」を記憶できるだけであって、文意の解析までは辿りつけてないよ。 発言ごとに辞書引いて意味を覚えるとか面白いとは思うけど、労力が足りないんじゃないかな。
721 名前:nobodyさん mailto:sage [2009/12/29(火) 03:33:58 ID:???] cronはwindowsでもできたはず・・・ ttp://www.bitfolge.de/pseudocron-en.html
722 名前:nobodyさん mailto:sage [2009/12/29(火) 05:41:41 ID:???] >>717 >>720 だし、マルコフじゃなく自分である程度の文章のつながりを作るのもできんこともないけど すげーめんどくさいか、すげー少ないバリエーションになってしまう。 あれはああいうカオスな発言を楽しむもんだと思ってる。 伺かみたいな文章として成り立ってるのを作るにはあれみたいに 一文ごとにデータ作ってやんないといけないしな。 チャットのbotでそういうの作ろうとしたけど飽きて投げた。 品詞の分類だけじゃなく活用まで考えて作るのすげーめんどせーよ。
723 名前:nobodyさん mailto:sage [2009/12/29(火) 15:46:23 ID:???] >>719 APIでタイムライン上の発言を配列に突っ込んでforeachで一つづつ検索していくとか
724 名前:nobodyさん mailto:sage [2009/12/29(火) 17:12:26 ID:???] FileQでcron試してみた。 一分間隔で動くように設定して60分放置。 結果54回動いた。
725 名前:nobodyさん mailto:sage [2009/12/30(水) 00:13:07 ID:???] >>722 たしかに、マトモなボット作るなら膨大な量の辞書データがいるね
726 名前:nobodyさん mailto:sage [2009/12/30(水) 01:23:09 ID:???] もしかしてcron-jobおかしい?垢削除祭か? 今日の夜から突然動かなくなったんで確認したら綺麗に消されてた 他にも消された奴いる?
727 名前:nobodyさん mailto:sage [2009/12/30(水) 02:04:50 ID:???] >726 消された cron-job、jaになってても1日中botが沈黙とかここ何日かで急になったんだけど 他に同じひといないかな 上にあるFileQ試してみたいんだけどcronでわからなくなってる Commandにhttp〜じゃだめなのか…
728 名前:DAWNTO_Windy-melt ◆Windy/f9HNwg mailto:sage [2009/12/30(水) 02:49:38 ID:???] Cron-job互換サービスを立ち上げてみたいのですが、結構高性能なサーバーでないと不可能でしょうか? 日本語で使えるサービスが有れば便利だと思うのですが。
729 名前:nobodyさん mailto:sage [2009/12/30(水) 03:51:14 ID:???] 毎分動かすとなると、それなりに負荷がかかることになるから安い共用鯖じゃ無理 海外の安いVPSを借りてみるとか
730 名前:DAWNTO_Windy-melt ◆Windy/f9HNwg mailto:sage [2009/12/30(水) 05:48:21 ID:???] >>729 自宅鯖です。 model name : Mobile Intel(R) Pentium(R) 4 - M CPU 1.80GHz memory:512MB
731 名前:nobodyさん mailto:sage [2009/12/30(水) 06:06:15 ID:???] oauth使ってると思われるbotが止まったの、アプリのAPIがサスペンデッドになってると思われ。
732 名前:nobodyさん [2009/12/30(水) 09:30:58 ID:ScDpW0+E] cron-job消された。 別のメールアドレスで再登録しようと思ったけどダメ。 FileQもよくわからないしめんどくさいなぁ。
733 名前:nobodyさん mailto:sage [2009/12/30(水) 11:11:49 ID:???] 垢BANされた人はとりあえず応急処置としてパソコン立ち上げっぱなしでブラウザ自動更新しておいたほうがいいね
734 名前:nobodyさん mailto:sage [2009/12/30(水) 11:25:59 ID:???] >>726 です あの後別のメールアドレスで再登録して URLも登録し直したけど大体大丈夫っぽい たまに動かないけど一時間に一回のボットだからそんな問題ないって感じ 今日から帰省だからその間に止まってたら困るな やっぱり有料のサーバ借りてやるしかないのか 単なる趣味にしか過ぎないしボットのためにお金注ぐのもなんだかねー。 GAEも検討したけど色々面倒だお 設定に何十時間も掛ったと聞くけど最新のOSでもそう? あんまりパソコン立ち上げる時間無いからちょっと躊躇してるんだ
735 名前:nobodyさん mailto:sage [2009/12/30(水) 12:48:47 ID:???] >>727 コマンドにはhttp://じゃなく /home/******/public_html/*****.php と、実行したいファイルのディレクトリを書けばいけるはず。
736 名前:nobodyさん mailto:sage [2009/12/30(水) 13:29:29 ID:???] >>735 727です。ありがとう!やってみます
737 名前:nobodyさん mailto:sage [2009/12/30(水) 13:43:24 ID:???] >>736 動かなかったら教えてちょ
738 名前:nobodyさん mailto:sage [2009/12/30(水) 13:50:50 ID:???] cronを毎分使いたいならやっぱり有料鯖借りないとダメなのかな〜
739 名前:nobodyさん mailto:sage [2009/12/30(水) 13:53:47 ID:???] 俺の借りてる鯖のcron使って君タチのボット動かしてあげようか????
740 名前:DAWNTO_Windy-melt ◆Windy/f9HNwg mailto:sage [2009/12/30(水) 14:20:02 ID:???] >>739 それ、今からやるところですよwww webからセットアップできるcronのフロントエンドをphpで自作しているので完成次第公開します。
741 名前:nobodyさん mailto:sage [2009/12/30(水) 15:37:46 ID:???] わっふるわっふる
742 名前:nobodyさん mailto:sage [2009/12/30(水) 15:55:25 ID:???] わっふるわっふる
743 名前:nobodyさん mailto:sage [2009/12/30(水) 16:14:07 ID:???] わっふるわっふる
744 名前:nobodyさん [2009/12/30(水) 17:12:51 ID:tKJERMBp] 735です。 FileQでのcronの動かし方を間違えてレスしてました。 正しいコマンドはこうです。 これは僕の例ですが、index.phpにボットのプログラムを書きpublic_htmlフォルダにアップしました。 *****の部分はアカウント名です。 /usr/local/bin/php /home/*****/public_html/index.php まず /usr/local/bin/php と入力し、半角スペースを入れてから動かしたいファイルの/home/から始まるパスを入力します。
745 名前:nobodyさん mailto:sage [2009/12/30(水) 21:48:07 ID:???] FileQ使ってるけど php /home/ユーザー名/public_html/PHPの入ってるディレクトリ名/ファイル名.php cd /home/ユーザー名/www/PHPの入ってるディレクトリ名; /usr/local/bin/php ファイル名.php の2通り試してみたらどっちも同じように動いてるよ
746 名前:nobodyさん mailto:sage [2009/12/30(水) 22:03:34 ID:???] ↑はコマンド欄に直で入力ね
747 名前:nobodyさん mailto:sage [2009/12/30(水) 23:40:14 ID:???] >>744 >>745 取り合えずcron動くのならおk
748 名前:nobodyさん mailto:sage [2009/12/31(木) 00:57:09 ID:???] ttp://www.youtube.com/watch?v=suGALKB3j6c ttp://www.youtube.com/watch?v=ZQ5d14wLSZg オリンピックフィギュアスケートのメダルを左右する重要なポイント ttp://plaza.rakuten.co.jp/mizumizu4329/diary/200912300000/ wrong edgeに付いて ttp://plaza.rakuten.co.jp/mizumizu4329/diary/200812060000/
749 名前:nobodyさん mailto:sage [2009/12/31(木) 06:14:13 ID:???] FileQにPHPをアップしてもエラーが出る…。 他のサーバにアップしたPHP(FileQにアップしたものと中身は同じ)は問題なく動くのに。
750 名前:nobodyさん mailto:sage [2009/12/31(木) 09:04:58 ID:???] >>749 どのフォルダにアップした? FFFTPとかのアップローダー使った?
751 名前:nobodyさん mailto:sage [2010/01/01(金) 09:53:36 ID:???] >>749 サイトからコピペしたときによくあたるんだけど、、文字エンコーディング関連でエラーが出る事がある。 ¥がそのままの時はバックスラッシュに変換してみて。linux環境での実話。 SJISをviで読み込ませたら¥記号のままでエスケープできずに狂ったことがあった。 FedoraはUTF8だったので :%s/¥/\\/g :set fileencoding=utf8 で保存し直した。
752 名前:nobodyさん mailto:sage [2010/01/01(金) 11:29:43 ID:???] >>750 アップローダー(CyberDuck)を使って、パブリック_htmlへアップロードした。 >>751 うーん見た感じ\とかエンコードとかは大丈夫みたいなんだが…。でも返信ありがとう。
753 名前:nobodyさん mailto:sage [2010/01/01(金) 15:27:24 ID:???] >>752 エラーの文をコピペしてみれ スクリプトの記述ミスがいけないのか、文字化けなのか、そもそもそこのサーバーのPHPで使えない関数が含まれてるのか
754 名前:nobodyさん mailto:sage [2010/01/01(金) 23:15:29 ID:???] 今のcronの主流は ・cron-job消された!手間かけるの面倒! →FileQ ・cron-job消された!手間をかけるのは厭わない →GAE ・そもそもcron-job使ってません^^ →自鯖とか各自の鯖のcron ・cron?なにそれこわい →PC起動したまま延々とリロード かな?
755 名前:nobodyさん mailto:sage [2010/01/02(土) 19:48:02 ID:???] PC起動したまま延々リロードしたときの電気代と月々の鯖代はどっちがかかるんだろう…
756 名前:nobodyさん mailto:sage [2010/01/03(日) 00:06:15 ID:???] cronjob.deがあるじゃん
757 名前:nobodyさん mailto:sage [2010/01/03(日) 05:35:49 ID:???] GAEでいろいろやってみたがland.toと@pagesは安定してるね zeroweb(happy888.net)だと、うまく時間内にキャッチできてない→反応しない 昔から借りてる某レンタル鯖は反応するけどその後2回ほどreplyしてしまうし 鯖によって本当にマチマチ… ちなみにどの間隔も変わらない感じした
758 名前:nobodyさん mailto:sage [2010/01/03(日) 10:03:12 ID:???] FileQにうpした際に出るエラー Fatal error: Call to undefined function curl_init() in /home/tre666/public_html/***/***.php on line 46 46行目は $ch = curl_init(); やっぱcurlが使えないってことでおk?
759 名前:nobodyさん mailto:sage [2010/01/03(日) 10:04:31 ID:???] アカウント名消し忘れたwww まいっか
760 名前:nobodyさん mailto:sage [2010/01/03(日) 10:11:34 ID:???] そう curl未対応だな。FileQは
761 名前:nobodyさん mailto:sage [2010/01/03(日) 13:37:31 ID:???] twitter.com/tre666 トレ君か よろしく
762 名前:nobodyさん mailto:sage [2010/01/03(日) 15:48:44 ID:???] cron job、アカウント云々じゃなくてサービスのサーバー自体がおかしいみたい 今朝、持ってる全てのアカウントが消されてて別のメアドでアカウント取ったんだが、新しいcronを設定する端から消されて行くw アカウント取れたからには個人を特定されて弾かれてる訳ではないだろうし BOT本体だけでなく、30分に一回フォロー用phpを回すだけのアカウントも消されていたのもそのせいかも
763 名前:nobodyさん mailto:sage [2010/01/03(日) 18:45:10 ID:???] >>761 変な汗でた よろしくお願いします FileQを諦めるかwebcronにするか自力で設定するか… 1日数回の定時postはwebcronにしてたんだけど、リプライはさすがに消費量が激しいので無理だな
764 名前:nobodyさん mailto:sage [2010/01/03(日) 21:45:57 ID:???] TL反応のプログラムをcron(サーバーのを使用)で動かそうとしたらこんなエラーメールが届きました Warning: simplexml_load_string(): Entity: line 1: parser error : Space required after the Public Identifier in /home/***/public_html/***/***.php on line 34 Warning: simplexml_load_string(): <!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN"> in /home/***/public_html/***/***.php on line 34 Warning: simplexml_load_string(): ^ in /home/***/public_html/***/***.php on line 34 Warning: simplexml_load_string(): Entity: line 1: parser error : SystemLiteral " or ' expected in /home/***/public_html/***/***.php on line 34 34行目は $XML = simplexml_load_string($result); です。 cronjob.deを使ってみても動いている気配がありません。ブラウザでアクセスすると別に何もエラーは出ないのですが。 XMLの読み込みに問題があるのでしょうか? どうしたらいいのかわからずお手上げ状態です
765 名前:nobodyさん mailto:sage [2010/01/03(日) 22:00:13 ID:???] >>764 "または'のエスケープ処理を忘れていませんか?
766 名前:nobodyさん mailto:sage [2010/01/03(日) 22:13:34 ID:???] >>765 " や ' を \" や \' にすればいいのでしょうか?
767 名前:nobodyさん mailto:sage [2010/01/03(日) 22:33:27 ID:???] >>762 cron-jobは、日本のBotで負荷が異常に増えたのに対して、〜.jp規制をかけているようです。 phpなどの実行URLか、登録メールアドレスが日本のドメインの場合強制排除しているとか。 ソースはほかの開発者さんのツイートなので曖昧ですが、〜.jpを使っていない私が 全く規制されていないのも納得できました。
768 名前:nobodyさん mailto:sage [2010/01/03(日) 23:21:18 ID:???] まあ頻繁に話題に出て皆一斉にそれ使ってりゃ規制されんのも当然か。
769 名前:nobodyさん mailto:sage [2010/01/04(月) 01:31:21 ID:???] >>345 >>352 と全く同じ状況なんだが対処法がさっぱりわからない 出来てる人はどうやってるんだろうか…?
770 名前:nobodyさん mailto:sage [2010/01/04(月) 01:59:32 ID:???] エラーはなんて出るの?
771 名前:769 mailto:sage [2010/01/04(月) 02:12:01 ID:???] 俺に聞いてると仮定して答えるけど エラーは出てない、ポストも問題ない、ただin_reply_to_status_idが付与されないだけなんだ Basic認証の時は出来てたんだけどなぁ
772 名前:nobodyさん mailto:sage [2010/01/04(月) 03:03:11 ID:???] >>771 自分はこれで出来てるけどどうだろう $req = $to->OAuthRequest($host,array("status"=>$aaa,"in_reply_to_status_id"=>"$bbb"));
773 名前:769 mailto:sage [2010/01/04(月) 07:01:43 ID:???] "in_reply_to_status_id"=>$bbb を "in_reply_to_status_id"=>"$bbb" に変えたら出来た! 単純な話で情けないな…。>>772 ありがとう
774 名前:nobodyさん mailto:sage [2010/01/04(月) 09:56:27 ID:???] なんだそりゃ。型によって処理分けたりしてるんかね
775 名前:nobodyさん mailto:sage [2010/01/04(月) 10:13:46 ID:???] sutatusは基本文字列だから通ってもidは基本数値型だから蹴るみたいな? どっちにしろ送るときゃ文字列なのにおかしなことをしてるな。 しかも黙って蹴ってるってのがなんだかやな感じだな。
776 名前:nobodyさん mailto:sage [2010/01/04(月) 10:48:00 ID:???] >>767 land.toとかだと〜.jpじゃないけど消されるよね 単純に〜.jpで弾いてるわけだもないのかな?
777 名前:nobodyさん mailto:sage [2010/01/04(月) 11:43:15 ID:???] FileQでcron設定してみたんだがリプライしても沈黙したまんまだ。 手動なら動くということはファイル自体は問題ないんだよな…? なにがあかんの……
778 名前:nobodyさん mailto:sage [2010/01/04(月) 13:20:42 ID:???] cronjob.deって、登録申込したあとメール来るのにどれくらいかかる? 1日とか待たなきゃいけないのかな… 全然来ないのでちゃんと申込出来てるのかわかんなくなって来た
779 名前:nobodyさん mailto:sage [2010/01/04(月) 16:20:35 ID:???] >>778 メールはすぐ来た。が、その後すぐアカウントロックされてしまった。 cron-jobでロックされた人が流れてるからかもしれん >776 自分は.comドメインだけど鯖がロリポ 鯖IPかアクセスしたIPで日本かどうか判断してるのかも
780 名前:778 mailto:sage [2010/01/04(月) 17:00:18 ID:???] >>779 違うメアドで登録してみたら今度はすぐに来た 今のところアカロックはされてないみたいだけど cron-job.orgのときみたいにログイン出来なくなっちゃったの?
781 名前:nobodyさん mailto:sage [2010/01/04(月) 19:08:24 ID:???] Gmailで登録してるけどcron-job.orgもcronjob.deも垢消されてないぞ ただもうcron-job.orgは設定するそばから消えるけど >>777 コマンド欄にURLそのまま打ち込んでないか? ちょっと上の方見て来い
782 名前:nobodyさん mailto:sage [2010/01/04(月) 19:46:04 ID:???] cron-job、ログインできないのにちゃんと回ってるみたいでTL反応とかし続けてる… 同じ状況の奴いる?
783 名前:nobodyさん mailto:sage [2010/01/04(月) 19:51:34 ID:???] >>648 >>649 あなた方のやり取りなかったら、ゴール目前で諦めてた。ありがとう。
784 名前:nobodyさん mailto:sage [2010/01/04(月) 19:53:07 ID:???] phpだけじゃマルコフ無理なん
785 名前:nobodyさん mailto:sage [2010/01/04(月) 20:57:33 ID:???] FileQで外部サイトのphp回せる? curl使えない?何のこと?とか思ってたらリプライ用のファイルも回せないってことなんだよな? お金払っちゃったぜ/(^O^)\
786 名前:nobodyさん mailto:sage [2010/01/04(月) 22:02:45 ID:???] >>782 うちのとこもそう。 まったくいじれないのにそのまま動いてるから移行もできない状態… とりあえず自然にオフになるの待ってる。
787 名前:nobodyさん mailto:sage [2010/01/04(月) 22:06:20 ID:???] cron-job.org設定ではerfolgreichってなっているけれど動いてない。 誰か助けて
788 名前:nobodyさん mailto:sage [2010/01/04(月) 22:24:40 ID:???] >>345 >>352 は俺です。 >>769 掘り返してくれてありがとう >>772 ありがとう出来たよ! 型が違うのかと思ってintvalかませたりとかは試してたんだけど単純な話は単純な話だったんだな…
789 名前:nobodyさん mailto:sage [2010/01/04(月) 22:27:08 ID:???] botみかけたけれどcron-job.org今調子わるいのか?
790 名前:nobodyさん mailto:sage [2010/01/04(月) 22:29:00 ID:???] むしろ今のcron-job.orgは絶好調
791 名前:nobodyさん mailto:sage [2010/01/04(月) 22:31:20 ID:???] >>790 それはギャグで言っているのか?
792 名前:nobodyさん mailto:sage [2010/01/04(月) 22:57:17 ID:???] うちのは問題なしだけど、蹴られないうちにファイル名変えようかな…botていうフォルダだから 向こうに用途悟られて消されかねないし
793 名前:779 mailto:sage [2010/01/04(月) 23:07:46 ID:???] 自分はcron-jobはログインできるんだけど 2つ動かしてたのがどうしても1つしか設定できなくなった それで.deでアカウント作ったけど速攻でロックされた deで表示された文を翻訳すると再登録するな+問題あると訴えるみたいな感じだったから それはねーおwと思いつつ再登録してない 他にもcronサービスあるから皆が上手く分散できるといいんだが…
794 名前:nobodyさん mailto:sage [2010/01/04(月) 23:27:24 ID:???] cronも大事なんだが、リプライのOAuth化で躓いてる… 色々削ったり位置を変えてみたけどお手上げだ
795 名前:nobodyさん mailto:sage [2010/01/04(月) 23:30:47 ID:???] >>794 あーおなじ 定時ポストのみ対応できてつまずいた
796 名前:nobodyさん mailto:sage [2010/01/04(月) 23:48:55 ID:???] 定時postとリプライはOAuth対応出来たけどTLに反応が上手くいかん まあそれ以前にcron探しでbot止まってるから意味ないけどな…
797 名前:nobodyさん mailto:sage [2010/01/05(火) 00:18:46 ID:???] あいまいでよくわからんが具体的にどの辺でつまってんだ?
798 名前:nobodyさん mailto:sage [2010/01/05(火) 00:25:47 ID:???] webcron.orgからFileQにしてみたが、 ここは凄いな。1分間隔で動くし1年で1000円ぐらいだし cronの使い方がよくわからなかったが、 >>744 >>745 の書き込みですんなりできた。
799 名前:nobodyさん mailto:sage [2010/01/05(火) 00:36:34 ID:???] >>797 795だけど私は実行してもエラー出ないけどリプライをしてくれない状態 自分で組んだのですがAPIでは動いてくれているので、恐らく組み込みがうまくできていないのではないかと…
800 名前:nobodyさん mailto:sage [2010/01/05(火) 00:47:23 ID:???] >>797 794です。自分も>>799 と同じくエラーが出ずAPIの状態… curlを削ってもいいと聞いたので少しずつ削ってその都度試してみたけど駄目だった
801 名前:nobodyさん mailto:sage [2010/01/05(火) 00:47:51 ID:???] FileQいいなと思うけどcurlが駄目ってとこで引っかかるのが辛いな
802 名前:nobodyさん mailto:sage [2010/01/05(火) 01:37:59 ID:???] curlだけじゃなく他にもダメなのありそうだしな。
803 名前:nobodyさん mailto:sage [2010/01/05(火) 01:38:48 ID:???] OAuthは認証した後はbasic認証後と同じようにAPIに投げればいいのかな
804 名前:nobodyさん mailto:sage [2010/01/05(火) 03:15:16 ID:???] リプライとかTLはポスト部分だけOAuthに投げてそれ以外は以前のままで使ってる
805 名前:nobodyさん mailto:sage [2010/01/05(火) 04:34:41 ID:???] SDNさんのOAuthでのAPI偽装スクリプト使わせてもらおうと思ったんだけど PHPでOAuthを使う準備の所で、test.php叩いても真っ白い画面でソースも何も出てこないエラーになる 使ってる鯖はステップサーバーでPHP5、対応してないスクリプトなのかと思ったけど 他の同じような環境の鯖で叩くと ・ソ Parse error: syntax error, unexpected T_STRING, expecting T_OLD_FUNCTION or T_FUNCTION or T_VAR or '}' in /usr/home/akairin5/public_html/twitterOAuth.php on line 21 というエラーが帰ってくる しかし特に閉じ忘れなども無い気がするんだけど…… 誰か同じようなエラーで対応した人いませんですか 色々と考えたけど、自分の経験値では完全に詰みました……
806 名前:nobodyさん mailto:sage [2010/01/05(火) 04:35:41 ID:???] ふああああああああああああああああああああああああorz しくじったアカウント消し忘れたorz うう、見なかったことにorz でも助言お願いしますorz
807 名前:nobodyさん mailto:sage [2010/01/05(火) 04:50:40 ID:???] ここはうっかりさんが多いインターネットですね
808 名前:nobodyさん mailto:sage [2010/01/05(火) 09:46:47 ID:???] >>805 どんまいとしか言えないwww けど自分も真っ白のページが出てくることがたまにある
809 名前:nobodyさん mailto:sage [2010/01/05(火) 10:34:19 ID:???] >>805 文字コード違うとか?
810 名前:805 mailto:sage [2010/01/05(火) 11:35:24 ID:???] どんまいありがとうございますorz >>809 最初にDLしたものをそのままUPしたらだめだったので、 文字コードをUTF-8、改行コードも念のためLF固定にして再UPしたんだけどダメで、 更に.htaccess置いてサーバーの方で改行コードを固定してもダメでした。 SDNさんのHP注意書きの様に、スクリプトのバージョン違いかとも思って 2度ほど該当バージョンの物をDLし直したんですがダメでした。 白くなるエラーは私も何度か遭遇して、その度に閉じ忘れとかが原因な事が多かったので 今回もそうなのかなぁと思ったのですが…… 配布されているものに間違いがあるとは見た限り思えなくて… ステップサーバーのPHP注意に、白くなるエラーは、PHP5に対応してないスクリプトの可能性アリ というのがあったので、疑っても見ましたが、それも無いと思いますし…… 謎です とりあえず、自分でも、OAuth調べ中ですが、お心当たりある方居ましたら ご助言お願いしますorz
811 名前:nobodyさん mailto:sage [2010/01/05(火) 12:04:38 ID:???] うちのOAuthはよくサスペンドにされるんだけど…なんか問題あんのかなあ
812 名前:nobodyさん mailto:sage [2010/01/05(火) 14:17:40 ID:???] ウチはSDNさんのところを参考に 定期発言もリプライも全部OAuth認証に変えてみたけど、設置もその後も順調だ やっぱりサーバーとかの環境によってだいぶ差があるんだな
813 名前:nobodyさん mailto:sage [2010/01/05(火) 19:05:30 ID:???] >>782 ノシ
814 名前:nobodyさん mailto:sage [2010/01/05(火) 21:16:43 ID:???] こんなとこ見つけたんだけど、使ってる人いる? ttps://mywebcron-com.loopiasecure.com/
815 名前:nobodyさん mailto:sage [2010/01/05(火) 22:09:45 ID:???] >>814 cron-job.orgがダメになってそこに移った @ページだとほとんど動かなかったから、他の鯖に変えたら動きだした たまに起動しないけど無料なら想定の範囲内だと思う
816 名前:nobodyさん mailto:sage [2010/01/05(火) 22:23:38 ID:???] あんまり広まるとまた規制されそうだが… SetCronJobでぐぐると幸せになれるかもしれない ところで、bardothodolさんのスクリプトが元のリプライソースでcurl使わずにOAuth化できますか? 2つあるpost関数のうち下方にあるcurlは削れてちゃんとクライアント名が変わったんだけど、 上の関数と$usernameと$passwordを削ったらpostできなかったんで、OAuth化できたのかできてないのか分からない状態です こんな状態だけどクライアント名変えるだけでいいっていうならソースとか晒すけど… FileQを使いたいので curl使わずにOAuth化できればいいな どなたかご助言願います
817 名前:nobodyさん mailto:sage [2010/01/05(火) 22:36:06 ID:???] あと少しで完成なんだけどTLに反応するやつだけ上手くいかない… $oyasumi = array("台詞1","台詞2","台詞3"); $tadaima = array("台詞1","台詞2","台詞3"); if($reply_name != $username){ if( !preg_match ( "/@[a-zA-Z0-9-_]{3,}/", $var ) ){ if(preg_match( "/おやすむ|おやすみなさい|おやすみます|寝る|寝ます/u", $var )){ $key = array_rand($oyasumi); $post = $oyasumi[$key]; $message = "@".$reply_name." ".$post; tweet($message ,$username,$password); } if(preg_match( "/ただいま|今.*帰ってき/u", $var )){ $key = array_rand($tadaima); $post = $oyasumi[$key]; $message = "@".$reply_name." ".$post; tweet($message ,$username,$password); } ここで下の反応語句いれても上ので反応してしまう 色々なところで調べたりいじったりしたんだけどちょっと症状が違うのか上手いこといかない 馬鹿らしいこと聞いているとは思うんですが手がつけれないので… 誰かわかる方いたらお願いします
818 名前:nobodyさん mailto:sage [2010/01/05(火) 22:56:20 ID:???] >>817 中カッコが足りなくて閉じ切ってないのでなんともいえない。 しいていえばpreg_matchがおかしいんじゃない? あとはちゃんとマッチしてるか確認するために if($reply_name != $username){ if( !preg_match ( "/@[a-zA-Z0-9-_]{3,}/", $var ) ){ if(preg_match( "/おやすむ|おやすみなさい|おやすみます|寝る|寝ます/u", $var )){ echo "oyasumi <br>"; $key = array_rand($oyasumi); $post = $oyasumi[$key]; $message = "@".$reply_name." ".$post; echo "$post $message<br>"; tweet($message ,$username,$password); } if(preg_match( "/ただいま|今.*帰ってき/u", $var )){ echo "tadaima <br>"; $key = array_rand($tadaima); $post = $oyasumi[$key]; $message = "@".$reply_name." ".$post; echo "$post $message<br>"; tweet($message ,$username,$password); } こんな感じでecho入れてブラウザ上で動かしてちゃんと反応するか調べる。ちゃんと動いていれば oyasumi 台詞1 @reply_name 台詞1 みたいに出力されるはず
819 名前:nobodyさん mailto:sage [2010/01/05(火) 22:56:35 ID:???] twitterOAuth.php自体にcurlが使われてるからSDNさんのとこの方法でOAuthにするとFileQでは動かせなくなっちゃうのかな… FileQにみんなでcurl使えるように嘆願するか?w それとスレチだけどなんで日本には外国みたいなwebcronサービスがないんだろ お金かかってもいいからあったら便利なのに
820 名前:nobodyさん mailto:sage [2010/01/05(火) 23:02:52 ID:???] >>817 「ただいま」の $post = $oyasumi[$key]; 「おやすみ(oyasumi)」になってるよ あと、 $oyasumi = array("台詞1","台詞2","台詞3"); $tadaima = array("台詞1","台詞2","台詞3"); if($reply_name != $username){ if( !preg_match ( "/@[a-zA-Z0-9-_]{3,}/", $var ) ){ if(preg_match( "/おやすむ|おやすみ|おやすみます|寝る|寝ます/u", $var )){ $key = array_rand($oyasumi); $post = $oyasumi[$key]; $message = "@".$reply_name." ".$post; tweet($message ,$username,$password); } if(preg_match( "/ただいま|今.*帰ってき/u", $var )){ $key = array_rand($tadaima); $post = $tadaima[$key]; $message = "@".$reply_name." ".$post; tweet($message ,$username,$password); } } } $i--; } ↑閉じ方をこうしてみた。 直るかどうかはこの前後のソース次第かもしれないけど…
821 名前:nobodyさん mailto:sage [2010/01/05(火) 23:06:38 ID:???] >818 早速ありがとう! ソース変なところからだった…ごめんなさい。 $i = count($XML)-1; $j = 0; while($i >= $j) { $var = $XML->status[$i]->text; $reply_name = $XML->status[$i]->user->screen_name; $name = $XML->status[$i]->user->name; 省略(さっきのソース) } } $i--; } 長いから省略しました。 これで閉じ切ってるかな…? とりあえず教えてもらった方法やってまた頑張ってみます!
822 名前:nobodyさん mailto:sage [2010/01/05(火) 23:11:35 ID:???] >820 うわっ!本当だ…すっごい恥ずかしいこれ そこ直したら戻った気がする。一応返してきたからこれで様子見ます! 本当ありがとう…
823 名前:nobodyさん mailto:sage [2010/01/05(火) 23:18:50 ID:???] >>819 リプライソースからcurlを消せばいいと思ってた… そうか twitterOAuth.php自体にcurlがあったorz 5分間隔でいいならSet〜とかでいけるけど、やっぱ5分だと取得漏れが多い気がする そしてwebcronでリプライ動かしたら破産する 自分で設定するしかないか
824 名前:nobodyさん mailto:sage [2010/01/05(火) 23:22:23 ID:???] >>728 あたりが安定した国内のcronサービスを作ってくれる とかいう夢を一瞬見た 無料は申し訳ないからできればカンパとかしたい
825 名前:nobodyさん mailto:sage [2010/01/05(火) 23:22:50 ID:???] >>823 GAEは?
826 名前:nobodyさん mailto:sage [2010/01/05(火) 23:30:51 ID:???] ググッたらこんなんあったけど、まだ試してない ttp://blog.makotokw.com/2010/01/03/oauth%E5%AF%BE%E5%BF%9C%E3%80%81curl%E3%81%AA%E3%81%97%E3%81%A7%E5%8B%95%E3%81%8Fphp-twitter-library-php-twient%E3%82%92%E5%85%AC%E9%96%8B/
827 名前:nobodyさん mailto:sage [2010/01/05(火) 23:37:52 ID:???] >>825 GAEにしようとしたんだが、Google App Engine Launcherを起動すると See the logfire 'C:\〜GoogleAppEngineLauncher.exe.log' for details というエラーが出るから積んだよ 再インストールしてもエラー中のlogを消してもだめだった 問題は山積みだ…
828 名前:nobodyさん mailto:sage [2010/01/05(火) 23:54:54 ID:???] logの中身みたの?
829 名前:nobodyさん mailto:sage [2010/01/06(水) 01:25:16 ID:???] >>828 logの中はこんな感じのが何行か… Traceback (most recent call last): File "GoogleAppEngineLauncher.py", line 42, in <module> File "wx\_core.pyc", line 7913, in __init__ File "wx\_core.pyc", line 7487, in _BootstrapApp File "launcher\app.pyc", line 53, in OnInit File "launcher\app.pyc", line 97, in _CreateModels File "launcher\maintable.pyc", line 35, in __init__ File "launcher\maintable.pyc", line 86, in _LoadProjects File "launcher\project.pyc", line 63, in ProjectWithConfigParser File "launcher\project.pyc", line 260, in _LoadFromConfigParser File "ConfigParser.pyc", line 520, in get ConfigParser.NoOptionError: No option 'name' in section: '1' さっぱりなのでweb上のcronに頼ることにするよ 聞いてくれてありがとう
830 名前:nobodyさん mailto:sage [2010/01/06(水) 15:02:29 ID:???] オプションのnameがないんじゃね?
831 名前:DAWNTO_Windy-melt ◆Windy/f9HNwg mailto:sage [2010/01/06(水) 15:53:39 ID:???] >>824 わざわざありがとうございます。 本格的に設計開始しましたが、あったらうれしい機能など教えていただけると開発が早く進みます
832 名前:nobodyさん mailto:sage [2010/01/06(水) 20:41:01 ID:???] >>831 乙 横レスだけど cronjobみたいなシンプルなコンパネがあるとうれしいな
833 名前:nobodyさん mailto:sage [2010/01/07(木) 02:21:36 ID:???] >>831 楽しみにしてます かなりのユーザーがいくと思うので負担が大きいかもしれませんが… cron-job.orgのようにCtrlで時間を細かく選択できたら便利かと思います 時間は1〜2分間隔希望です
834 名前:nobodyさん mailto:sage [2010/01/07(木) 02:37:41 ID:???] >>831 もし有料にする場合は、銀行振込にも対応してほしい。 クレカ無いから…。
835 名前:nobodyさん mailto:sage [2010/01/07(木) 09:20:32 ID:???] この流れはひどい
836 名前:nobodyさん mailto:sage [2010/01/07(木) 10:59:33 ID:???] bot製作とは程遠いな
837 名前:nobodyさん mailto:sage [2010/01/07(木) 12:01:35 ID:???] ド素人の質問ですみません。 Kotobuki Lab.さんのページを参考にしてGAEでcronを実行したいのですが プロジェクト名すら作成例と同じにして丸コピしているのに、うまくいきません。 同じページを参考にしてうまくいった方はいますか? 変えているのはtestcronServlet.javaの11行目、testcronServletをTestcronServlet にしたのと、botのURLだけです。 現在Logsでは2分おきにWarning No handlers matched this URL.が出っ放し、 Cron Jobsでも常にon time failedとなっています。←これがどういう状態なのかもいまいちつかめてません… ぐぐったら海外で同じ状態のひとを見つけたのですが、具体的な解答はなされていないようなので、 どうか助言をお願いします。
838 名前:nobodyさん mailto:sage [2010/01/07(木) 13:07:48 ID:???] >>837 そのページ見てGAEにチャレンジしたけどうまくいったよ ○○Serblet.javaのファイル名は頭1文字目が大文字じゃないと上手くいかなかった気がする
839 名前:nobodyさん mailto:sage [2010/01/07(木) 13:08:57 ID:???] スペルミスってた Ser「b」letじゃなくてSer「v」letね…
840 名前:nobodyさん mailto:sage [2010/01/07(木) 14:39:50 ID:???] >>837 Warning No handlers matched this URL. ってことはURLが間違ってるって事じゃないのかな アドレス間違ってるかもしくはGAEからのアクセス弾いちゃってるとかじゃない?
841 名前:nobodyさん mailto:sage [2010/01/07(木) 15:21:15 ID:???] >>837 >>840 プログラムのURLが合ってても、cron.xmlの方で指定間違えてたら Warning No handlers matched this URL.って出るよ >>837 はもう一度パス見直してみ
842 名前:nobodyさん mailto:sage [2010/01/07(木) 23:18:40 ID:???] >>814 全然動かないんだが...
843 名前:nobodyさん mailto:sage [2010/01/07(木) 23:26:01 ID:???] FileQとphpだけで人間によく間違えられるbot作った俺が通りますよー
844 名前:nobodyさん mailto:sage [2010/01/07(木) 23:57:56 ID:???] >>843 自慢したいだけなら二度と来ないでください
845 名前:nobodyさん mailto:sage [2010/01/08(金) 00:42:38 ID:???] >>844 リプライ返しはあいさつに対してのみ行う場合なら人間っぽいbot簡単に作れるよー。 まず「つぶやき収集bot」を作って、あらゆるツイートを収集し、リプライツイートや時々内容のツイートを取り除きテキストファイルに順に格納していく。 時々内容のツイートを取り除く方法は、まずニュースサイトの記事をyahooの形態素解析APIを使って名詞を抜き出し辞書を作っておく。 そして「つぶやき収集bot」が収集したツイートも形態素解析し名詞を抜き出し、あらかじめ作った辞書を検索しその名詞が見つかればそのツイートは取り除く。 あとはテキストファイルに格納したツイートを適当に抜き出ししゃべらせる。
846 名前:nobodyさん mailto:sage [2010/01/08(金) 00:47:33 ID:???] 問題は人間の質問に答えられるbotをどう作るかだろう。 あるいは人間とマトモな会話ができるbot。 これはかなり時間がかかりそうだ。
847 名前:nobodyさん mailto:sage [2010/01/08(金) 01:51:52 ID:???] 手間をかけずに楽しめるbotを作る方がおもしろい。
848 名前:nobodyさん mailto:sage [2010/01/08(金) 02:14:44 ID:???] 自分に向けられた発言への類推は難しいよな。 品詞ごとに分けておおまかな意味を推測させようかと考えてはみたが >>846 マトモに会話してるように見えるbotなら人工無脳にいくつかあるけど あれらを今から作るってのは手間だしマルコフ連鎖で繋げてそれっぽく見せるのがせいぜいだろうな。 辞書登録してやるとどうしても反応できるワードには限りがあるし。 本気で知能やろうとするとと個人でやるには大変だ。
849 名前:nobodyさん mailto:sage [2010/01/08(金) 02:48:09 ID:???] さくらサーバーでTLに反応するPHPのcron動かしてる人っていますか? リプライとかは平気なのにTL反応のcronだけ削除されてしまいます 中身は銀さんのをほぼ丸写ししただけ。なにが悪いんだろう?
850 名前:nobodyさん mailto:sage [2010/01/08(金) 04:10:34 ID:???] >>849 cronの実行間隔が短すぎるんじゃねーの?
851 名前:nobodyさん mailto:sage [2010/01/08(金) 04:35:57 ID:???] >>850 リプライは3分おきで動いてるのにTLは10分にしても消されました もっと長くすれば大丈夫かもしれないけどTL反応の間隔が10分以上では遅すぎるし・・・
852 名前:nobodyさん mailto:sage [2010/01/08(金) 04:58:44 ID:???] さくらに聞けよ
853 名前:nobodyさん mailto:sage [2010/01/08(金) 05:32:19 ID:???] >>851 周期が1時間以内だと、消される方が正常 3分で消えないっておかしいな
854 名前:nobodyさん mailto:sage [2010/01/08(金) 06:00:29 ID:???] >>853 そうなのか・・・じゃあさくらサーバー使ってる人でもcronは別な所で動かしてるってことなんですかね? リプライは平気なのにTLはダメっていうのが不思議だけど、諦めて他の方法で動かすことにします
855 名前:nobodyさん mailto:sage [2010/01/08(金) 08:05:52 ID:???] >>848 俺の目標は、ある人が人間と思ってフォローした人たちが全員botだった、という状況を作ることなのだよ。
856 名前:nobodyさん mailto:sage [2010/01/08(金) 08:14:21 ID:???] 遅くなりましたが>>837 です >>841 さんのいうcron.xmlでの指定ミスが原因だったようで、urlのところを直したら すんなり動いてくれました。web.xmlからURLを確認する過程自体をすっとばしていたという、 なんともお粗末な理由でした… 助言をくださった方、ありがとうございます。botが動いて感激です。
857 名前:nobodyさん mailto:sage [2010/01/08(金) 10:56:08 ID:???] cron-job.orgからGAEに変えたんだけど、 GAEのログにファビコンが無いっていうエラーが出まくる 何かファイル追加してファビコンを指定すればいいらしいんだけど 具体的な方法がわからない…どこかに参考になるサイトとかないかな?
858 名前:nobodyさん mailto:sage [2010/01/08(金) 12:15:40 ID:???] >>854 さくらだけど消されてないよ。 GAEで動かしてるからかな? >>857 ブラウザでアクセスするのやめる
859 名前:nobodyさん mailto:sage [2010/01/08(金) 12:18:38 ID:???] あ、すまん。 さくらの人が消されたのはcronの方か。 勘違いしてた
860 名前:nobodyさん [2010/01/08(金) 17:10:10 ID:voJUVX7V] ごめん、OAuthの話に戻るんだけどさ SDNさんを参考にして、定時はいけたんだけどリプライとTLがいまいちなんだ。 エラーも出ないでクライアント名とかリプライ元つきで返してくれているんだけど、 なんか叩くとめっちゃ返してくる… 前に答えたやつにも重複して返すし、tmpがうまく読めてないんかな。 初心者ですまない…元々銀次さんの所のコピペに頼りきりだったからどうしてすれば良いかわからないんだ。 教えてくれると凄く幸せになれるんだが…
861 名前:nobodyさん mailto:sage [2010/01/08(金) 17:41:13 ID:???] >>860 銀さんとこのリプライソースでいいんだな? リプライソースの中の $ch = curl_init(); (中略) curl_close($ch); を全部消して、function tweetをSDNさんとこのソースに tweetの引数は$message以外を削除、って感じで行けると思う もちろん細かいところは適宜修正してくれ
862 名前:nobodyさん [2010/01/08(金) 17:57:17 ID:voJUVX7V] >>861 ありがと。 でもごめん、その通りにしたら <?xml version="1.0" encoding="UTF-8" ?> - <hash> <request>/statuses/update.xml</request> <error>Incorrect signature</error> </hash> て@ページでエラーでたんだけどorz function tweetの中が間違ってるんかな。 それともrequire_onceの場所がおかしいとか…? もう訳わからんよ…細かいところの修正が出来てないからかな。 頭悪くてごめんな。 一回貼ったほうがわかりやすい?
863 名前:nobodyさん mailto:sage [2010/01/08(金) 18:02:23 ID:???] >>862 見た方が早いことは早いかも
864 名前:nobodyさん mailto:sage [2010/01/08(金) 18:13:36 ID:???] >>862 あーごめん $ch = curl_init(); (中略) curl_close($ch); は消さなくてもいいや(OAuth認証でTL取得しない場合は) 消した場合(OAuth認証でTLを取得する場合)は $XML = simplexml_load_string($result); のところも変えないと駄目
865 名前:nobodyさん [2010/01/08(金) 18:32:53 ID:voJUVX7V] >>864 お、ごめん長くて貼れなくて苦戦してた… $XML = simplexml_load_string($result); の部分なんだけど、ごめんどういじれば良い?
866 名前:nobodyさん mailto:sage [2010/01/08(金) 18:44:15 ID:???] SDNさんとこのをそのまま使うんならこんな感じかな。ソース汚いけど if(!empty($line)){ $last_id = $line; }else{ $cnt = "1"; } $consumer_key = "consumer_key"; // Consumer keyの値 $consumer_secret = "consumer_secret"; // Consumer secretの値 $access_token = "access_token"; // Access Tokenの値 $access_token_secret = "access_token_secret"; // Access Token Secretの値 // OAuthオブジェクト生成 $to = new TwitterOAuth($consumer_key,$consumer_secret,$access_token,$access_token_secret); // TwitterからGETする if(($cnt != null)&&($last_id != null)){ $req = $to->OAuthRequest($host,array("count"=>$pcount,"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"); } $XML = simplexml_load_string($req);
867 名前:nobodyさん mailto:sage [2010/01/08(金) 18:45:34 ID:???] うおっと、またミスった $pcountになってるところは$cntで…orz
868 名前:nobodyさん [2010/01/08(金) 20:09:05 ID:voJUVX7V] >>867 うわーごめん、何かほんと頭悪いみたい。 TLとかリプライいじってみたけど、返事しないわ…orz そもそも基本的なこと間違えてる気がしてならない… ちょっと基本的な事勉強してくるわ、協力してくれてありがと。
869 名前:nobodyさん mailto:sage [2010/01/08(金) 23:45:40 ID:???] 銀次さんのとこの方法は重くなるからcronに向かないな。 さくらで勝手に削除されたのもそのせいだと思う 問題はその重いスクリプトを多くの人が参考にしてるってことだ
870 名前:nobodyさん mailto:sage [2010/01/09(土) 00:01:26 ID:???] 自分でOAuthの実装してたんだけど、 アクセストークンと認証トークンの取得までいけた。 で、APIアクセスしようとおもったら Incorrect signatureっていわれた これってoauth_signatureの作り方が間違ってるのかな?
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を超えました。 もう書けないので、新しいスレッドを立ててくださいです。。。