プログラミングを始める10の理由 このページをアンテナに追加 RSSフィード

2008 | 03 | 04 | 05 | 06 | 07 | 08 | 09 | 10 | 11 | 12 |
2009 | 01 | 02 | 03 | 04 | 05 | 06 | 07 | 08 | 09 | 10 | 11 | 12 |
2010 | 01 | 02 | 03 | 04 | 05 | 06 | 07 | 08 | 09 | 10 | 11 |
2011 | 01 | 02 | 05 | 06 | 07 | 08 |
2012 | 01 | 05 | 09 | 10 |
2013 | 08 |

twiiter bot掲示板◎botスクリプトのサポートや疑問、改造や雑談など(閲覧のみ)

[広告]

2013-08-05 引っ越します このエントリーを含むブックマーク

お久しぶりです。

突然ですがこちらのブログ更新停止にして、新たなブログ移転しようと思っています。

webサービスフォローもそちらで。

最近phpモチベーションも下がり気味で刺激がないため、移転という考えを実行したい所存です。今まで閲覧やコメントくださった方ありがとうございました。

コメント中途半端に返せず申し訳ありません。

近日移転urlを載せます。

トラックバック - http://d.hatena.ne.jp/bardothodol/20130805

2012-10-13

[][][]twitterAPI1.1の返信対応について twitterAPI1.1の返信対応についてを含むブックマーク

どうも、前の記事の続きです。

今回は返信部分とその他プロフィール画像の変更APIについて書きます

10月11日ごろに現行1のAPI文法なども変わったようです。

xmlを使用している場合urlapiバージョンを明記していないと取れないとか。

この機会に1.1対応してしまいましょう。

まず、返信部分の対応です。

以前のプログラムでは

$host = "http://twitter.com/statuses/mentions.xml";    //返信一覧
//を、下記に変更
$host = "https://api.twitter.com/1.1/statuses/mentions_timeline.json";    //返信一覧

これでxmljsonにしますjson形式なのでパースの文法も変えます

//XML文字列をオブジェクトに代入する 
$XML = simplexml_load_string($req);

//を、下記に変更
//json文字列をオブジェクトに代入する 
$JSON = json_decode($req);

スクリプトの$XMLの部分を置換で$JSONに全て変更して下さい。

json_decodeの関数が使えるのはphp5以降です。出来ない場合はご確認を。

そして次に、ややこしいところですが

$XML->status[$i]->text;
//が、
$JSON[$i]->text;

になります。statusの項目が無くなったというわけです。すべて書き直して下さい。

これも置換で->statusを削除すればいいですね。

最後に、変更があった部分です。

今まで発言postに付与されたidを取得し、そこから既に処理済みの項目を取捨選択していたのですが、変更があり、idという項目とid_strという項目にわかれたようです。

メンションの発言を取るオプション引数、since_idはid_strを使います

//最終発言リプライのidを保存してる部分。先頭を調べて…
$string = $XML->status[0]->id;
//下記に変更
//最終発言リプライのidを保存してる部分。先頭を調べて…
$string = $JSON[0]->id_str;

これで正しいidが取得されるはずです。

以上で返信部分が今まで通り再現されると思われます

id部分は特に暴走と繋がりやすいのでバックアップ等を取りつつ慎重に作業して下さい。

ちなみに画像変更の関数urlを帰るだけでOKです。

https://api.twitter.com/1.1/account/update_profile_image.json

いかがでしたでしょうか。みなさん楽しいbotライフを。

プラムプラム 2012/10/15 03:19 いつもお世話になっております。新しいソースの公開ありがとうございます!
早速対応させようと書き換えたのですが、
「$string = $JSON[0]->id_str;」の行で「Fatal error: Cannot use object of type stdClass as array」というエラーが出てしまいます。
バックアップを取りながら少しずつ書き進め試していたのですが、
どうしてもこの行になるとエラーが出てしまい、困っています。
もし対処法などありましたら教えていただけると幸いです。

AdAd 2013/01/11 15:28 はじめまして、いつも新しい刺激をありがとうございます。
さてこちらのソースですが、私もプラムさんと同じ事が起こってしまいます。もしも対処法などありましたらご教授願います。

プラムプラム 2013/01/24 08:39 ご無沙汰しております、先日改めてやり直してみたところ上手く動くようになりましたお騒がせしました!
全く参考にならなくて申し訳ないですがAdさんもがんばってくださいませ…!
ですが今度はリプライ元が参照できなくなってしまい困っています。
対処法など分かる方いらっしゃったら教えてくださると幸いです。
よろしくお願いします。

もしもし 2013/02/06 19:28 はじめまして。いつも参考にさせていただいております。
私はタイムライン反応の方法を参考にリプライ反応の方でも

if( !preg_match ("/RT|QT|via|#|#|定期|自動|拡散|http/", $var)){

といった風にリプライでも!preg_matchでRTなどに反応させないようにしていたのですが、
こちらの方法でAPI1.1に書き換えるとこの!preg_matchの行でエラーが起きてしまいます。
この!preg_matchをやめるべきなのでしょうか?それとも対処方法があるのでしょうか。
PHPのバージョンは5.3です。

2012-09-23

[][]twitterAPI1.1に伴うスクリプトの変更と、サービスの今後について twitterAPI1.1に伴うスクリプトの変更と、サービスの今後についてを含むブックマーク

皆様もご存知の通り、twitterAPIが1.1のバージョンアップに伴い、既存api2013年3月5日に終了することが決定しました。

Twitter Japan Blog | Twitter Blogs

私が今まで公開したbotスクリプトに関しましても例外ではありませんので、使っている皆さんのためにも改修方法をアップしていきたいと思います

TLの取得などを行っていない場合、一ヶ所書き換えるだけで対応が終了します

$req = $to->OAuthRequest("https://twitter.com/statuses/update.xml","POST",array("status"=>$message));
//のURL、https://twitter.com/statuses/update.xml部分を
$req = $to->OAuthRequest("https://api.twitter.com/1.1/statuses/update.json","POST",array("status"=>$message));
//1.1対応のURLに書き換えるだけ

これで投稿するだけのbot対応出来ます

TL反応やリプライ反応につきましては解析にxmlを使っているため、もう少し処理が必要です。追々、書いて行きたいと思います

そしてもうひとつ自分のやっているwebサービス「ついめ〜じ」なのですが、API変更に伴い終了させることに決めました。

勝手でな判断ですみません。もちろんすぐにというわけでなく終了時期は来年1月程度を予定していて、それまでにちゃんとアナウンスしたいと思います

プログラムを改修して続けてもいいのですが、twitter社が今回のAPI変更でこのような使い方(ユーザーが自由にクライアントアプリ作成する事)を好ましく思われていないことで終了する気持ちになりました。

重かったり、色々とご迷惑おかけしたり、最近チューニングもせず放置状態だったのもあり(すみません

しか勉強になりました。使用して下さった方々、ありがとうございました。

トラックバック - http://d.hatena.ne.jp/bardothodol/20120923

2012-05-26

[]10分でできないと恥ずかしいプログラムphpでやってみた 10分でできないと恥ずかしいプログラムをphpでやってみたを含むブックマーク

お久しぶりです。最近Unityブログばっかりでこちらが全然更新できていませんでした。

反省

さて、twitterでこんな話題があったので挑戦してみました

10分で出来ないと恥しいプログラムに挑戦してみた(Haskellで)

phpで挑戦。もっとスマートなやり方があるでしょうし、配れない時の処理の無駄加減とかがひどいですが、1時間くらいで出来たのでご容赦を。

<?php

$q1 = deal(3, "123123123");
print_r($q1);

$q2 = deal(4, "123123123");
print_r($q2);

$q3 = deal(6, "012345012345012345");
print_r($q3);

$q4 = deal(4,"111122223333");
print_r($q4);

$q5 = deal(1,"012345012345012345");
print_r($q5);

$q6 = deal(6,"01234");
print_r($q6);

$q7 = deal(2,"");
print_r($q7);

function deal( $player, $card ){
	
	$result = floor(strlen($card) / $player);
	
	$surplus = strlen($card) % $player;
	
	if($surplus != 0){
		$maxlen =  strlen($card) - $surplus;
	}else{
		$maxlen = strlen($card);
		}
			
	$array = array();
	$cnt = 0;
	
	for ($i = 0; $i < $maxlen; $i++ ){
		if($cnt == $player){
			$cnt = 0;
		}
			$number = (string)$array[$cnt];
			$number .= substr($card,$i,1);
			$array[$cnt] = $number;
			$cnt++;
		}
		
	if(strlen($card) < $player){
		
		$array = array();
		
		for ($i = 0; $i < $player; $i++ ){
			$array[$i] = "";
			}		
	}		
		
	return $array;	
		
}

?>

結果

Array
(
    [0] => 111
    [1] => 222
    [2] => 333
)
Array
(
    [0] => 12
    [1] => 23
    [2] => 31
    [3] => 12
)
Array
(
    [0] => 000
    [1] => 111
    [2] => 222
    [3] => 333
    [4] => 444
    [5] => 555
)
Array
(
    [0] => 123
    [1] => 123
    [2] => 123
    [3] => 123
)
Array
(
    [0] => 012345012345012345
)
Array
(
    [0] => 
    [1] => 
    [2] => 
    [3] => 
    [4] => 
    [5] => 
)
Array
(
    [0] => 
    [1] => 
)
トラックバック - http://d.hatena.ne.jp/bardothodol/20120526

2012-01-01

[][]明けましておめでとうございますと、お知らせ 明けましておめでとうございますと、お知らせを含むブックマーク

明けましておめでとうございます。今年もよろしくお願いします

前の記事が2011年8月だから、もう長い事放置しててすみません

新年にあたり、管理していたwebサービス等の見直しや廃止を行いました。

既にアナウンスしたものも含めまとめてあります

内訳

bot掲示板スパムが増えすぎて管理しきれなくなった事、書き込み自体が少なくなった事で廃止自体を考えましたが、閲覧だけでも需要があるかと思い、スパム削除の上残しました。

初代ニコ動ジェネレータはサーバに料金振込してなかったため切れました。

QR変換サービススマホ全盛の今のご時世にガラケー壁紙変換する意味あるのか?とか考えて終了させました。

Xboxブログパーツドメイン更新を忘れて繋がらなくなってしまい、、、そのまま放置で今に至りました。利用されていた方には大変ご迷惑をおかけしました。本当に勝手ながら、そのまま終了ということにさせてください。

その他にも検討中高速道路ジェネ等

ついめ〜じの安定運営もちゃんとやりたいですが…βの域を出られてない。というか23時代アクセスしたらまだ重いんですね。

付けてもらってる皆さんのブログも重くしていると思ったら心苦しいです。

今後はブログパーツ系のサービスはもう出さないと思います。(ついめ〜じは継続ますのでご安心を)サーバの問題もありますし、入金忘れでサーバドメイン切れ等でご迷惑かけてしまう事もありそうなので。やるとしたら期間限定自分の手に負える規模のものを。半年放置とかしません。2011年仕事が忙しいとか言いつつゲームや他に逃げていたので、2012年自分の作ったもの管理をちゃんとする、を信条に頑張りたいと思います

本年もよろしくお願い致します

トラックバック - http://d.hatena.ne.jp/bardothodol/20120101

2011-08-28

[]ついめーじちょっと修正 ついめーじちょっと修正を含むブックマーク

twimg.info - 

背景色を使用しない」チェックボックスを用意しました。背景色を試したいけど2度目以降の絵が変わらないという方は、twitterの発言を更新してみてください。一度画像が出来るとキャッシュが作られるため、更新以降でないと画像が変わりません。

また、サーバが不安定な時間22時〜01時までは画像の生成ができません。

ついめーじは無駄画像生成をしないようキャッシュというものをもっています。

色を変更する指示を出しても、新しい発言がなければ古いままの画像になります。新しい色を試したい場合は一度twitterで発言をしてからお試し下さい。

ちょっとこれは管理側でやるべき機能ですかね…しょうじき不便だ。

今まで色が替えられなかったユーザー様はもう一度お試し下さい。

トラックバック - http://d.hatena.ne.jp/bardothodol/20110828

2011-07-03

[]mixamo使って自作モデルを2分でアニメーション mixamo使って自作モデルを2分でアニメーションを含むブックマーク

どうもこんにちは

ちょっとある事が衝撃的だったので、体験談とともに紹介します。

3D Animation Online Services, 3D Characters, and Character Rigging - Mixamo

mixamoというサイトなんですが、オンライン3dアニメーションを販売しているサイト

よくあるモーション屋さん…かと思ったら、なんとアップロードしたモデル適用させて売ってるという。

自分アップロードした時のムービーがありますので見て頂いたらわかると思います。

f:id:bardothodol:20110704024341j:image

3dキャラクターアニメーションを少しでもやったことある方は、モデリングの後にあるウェイト設定やボーン、リギングなどややこしい作業をご存知かと思いますが、このmixamoは全てすっとばしてリグを組みアニメーション適用させてしまうのですね…!

f:id:bardothodol:20110704024255p:image

自分のアップしたモデルアニメ適用させるのは無料です。しかし、DLしようとするとお金がかかります。(ファイル形式は汎用のfbxです)

逆に言えばアップしてブラウザ上で動かして楽しむのは無料なので、興味ある人は試してみてはいかがでしょうか。

くーちゃんくーちゃん 2011/07/12 18:09 ついめーじのベータ版を使わせていただいてるものです。今、背景色を別の色に変更したくて作り直してる最中ですが、背景色がデフォルトのまま変わりません。。どうぞよろしくお願い致します

bardothodolbardothodol 2011/07/14 10:44 ごめいわくおかけしています。背景色不具合については今週末に対応したいと思います。

トラックバック - http://d.hatena.ne.jp/bardothodol/20110703