*

Twitterで自動フォロー返しをするPHPコード

公開日: : サーバ運用, 未分類 ,

この記事の所要時間:約4分37秒

Apple信者の毒舌な妹botで使用している自動フォロー返しのコードをメモ。前提は

GithubのTwitter API 1.1 実行回数制限をみると、フォロー回数には一応制限はないみたいですが、とりあえず一回あたり最大30回までとした。

<?php
print date('Y-m-d H:i:s ');
// twitteroauth.phpを読み込む。
require_once("twitteroauth-master/twitteroauth/twitteroauth.php");
// dev.twitter.comで見る。
$consumer_key = "*******************";
$consumer_secret = "*****************************************";
$access_token = "*****************************************";
$access_token_secret = "*****************************************";
// OAuthオブジェクト生成
$to = new TwitterOAuth(
$consumer_key,
$consumer_secret,
$access_token,
$access_token_secret);
// フォロワーのIDを読み込み
$followers = $to->get('followers/ids', array('cursor' => -1));
// フォローしているアカウントのIDを読み込み
$friends = $to->get('friends/ids', array('cursor' => -1));
$counter = 0;
// フォロワーをフォローしていなかったらフォローする
foreach ( $followers->ids as $i => $id) {
if (empty($friends->ids) or !in_array($id, $friends->ids)) {
$req = $to->post('friendships/create', array('user_id' => $id));
if ($req) $counter = $counter +1;
}
if ($counter ==30) break;
}
print "Auto followed $counter user(s). \n";
// $result = json_decode($req);
// echo "<pre>";
// var_dump($result);
?>

あとはこれをcronに登録する。12時間ごと、一日に2回、8:24と20:24に実行。ログもちゃんとファイルに吐くように。

# crontab -e
(エディタ内)
24 8,20 * * * /usr/bin/php /usr/share/php/auto_follow.php 1 >> /var/log/twitterbot.log

followers/idsfriends/idsの扱いさえわかっていればなんてことはないはずだが、かき集めた情報をassembleしただけなので細かいところがおかしいかもしれない。とりあえず今のところは問題なく動作しているのでよしとする。

[amazonjs asin=”4877832432″ locale=”JP” title=”Twitter APIリファレンスガイドブック―Twitterアプリを開発する”]

関連記事

no image

/var/log/clamav/freshclam.logの所有権がなぜか変わってしまう問題

深夜3時ごろに、Cron Daemonからこういうメールが送られてくる。 ERROR: P

記事を読む

メールサーバが少しできた。

いよっしゃああああああ!!!! 受信だけは問題なくできるようになりました。受信だけです

記事を読む

no image

自前のDropbox、ownCloudをインストールしてみる

自前のサーバを用意したら、ファイルサーバを作ってみたいと思うもの。 そこでなんと、ownClo

記事を読む

no image

Mac不安ちゃんの単行本がiBookStoreで販売開始してた。

Mac Fanで大人気連載中のMac不安ちゃんの単行本が、いつのまにかiBook Storeで配信開

記事を読む

no image

玄人志向のHDDケースを買った。

  先日、ふとしたきっかけで500GBのSATAのHDDが手に入ったので、HDDケー

記事を読む

no image

/tmpパーティションの領域の拡大をしてみる

今回拡大するのは/tmpパーティション。学校のデータベースの講義でDB2 express-cを使うか

記事を読む

ApacheにDigest認証を設定する方法

私は自鯖でownCloud、phpMyAdmin、Cactiを使っているのですが、外部に外部

記事を読む

zip

懐かしきストレージZIPを実家からもらって写真を撮った

実家から昔使っていたZIPを持ってきたので、一応写真をとっておくことにしました。 ZIPとはフ

記事を読む

no image

Postfixのroot宛のメールを全て特定のユーザに

はじめての英語論文もいちおう書き上がったので、サーバいじりを再開。 /etc/aliase

記事を読む

no image

メールでログを届けてくれるlogwatchをインストール

logwatchとは/var/logの内容を1日に一回メールで送ってくれるもの。 これがなかなかけ

記事を読む

ブログを移行しました

新しいブログはこちら http://queryok.ikuwow.co

ChefとAnsibleの比較 〜Ansibleはじめました〜

今まで個人のMacの環境構築には、Brewfileなるものを作成してい

no image
モチベ低い大学院生でも院進学で得られたもの

つい今月の頭に修士論文を提出して、長いプレッシャーから解放されました。

Apple Thunderbolt Displayを使って30分で理解した利点3つ

今まで研究室ではMac ProとDellのちゃちな21インチモニタで作

ニコニコ動画の動画上部のニュースを非表示にするSafari機能拡張

作りました。 HideNicoVideoNews http:/

→もっと見る

  • follow us in feedly
PAGE TOP ↑