rummelonp.comNameKazuya Takeshima Blogrummelonp.hatenablog.com Mastodon@[email protected] Twitter@rummelonp GitHub@rummelonp
マトモに使えるRPCライブラリ MessagePack-RPC for Ruby のバージョン 0.2.0 をリリースしました! 新たにコネクションプーリングの機能を追加しました。一度接続したコネクションを共有して使い回すことができます。コネクションを何度も張り直す負荷と遅延を削減でき、リソースの消費も抑えられます。 また、不意に切断されたコネクションを自動的に再接続する機能を導入し、信頼性を向上させています。 これを使って何か作ってみようと言うことで、twitterのリアルタイム検索エンジンを作ってみました。日本語を検索できないなど機能は貧弱ですが、プログラム全体がわずか140行に収まっています(クローラ27行、インデクサ48行、クラスタ管理ノード37行、検索クライアント28行)。 新しいつぶやきを受信するたびに、リアルタイムで転置インデックスを作成していきます。インデックスを作成するノ
Twitter API で つぶやきの投稿をしようとすると 401エラーが返ってくる めちゃめちゃハマッたので、覚書しておきたい。 現象: Twitter APIで「つぶやきの投稿」をしようとすると401エラーが返ってくる。パラメータなどは特におかしくないはず。 原因: Twitter側で行うApplication Settingsで「Default Access type」をRead-onlyからRead&Writeに変更しても、うまく反映されないことがある模様。 対策: http://twitter.com/apps から、アプリケーションをいったん削除して登録しなおす。(Consumer Keyなどは書き変わるので、プログラム側に改めて設定する必要がある) 英語サイトにちょっと情報があったので助かった。 → http://stackoverflow.com/questions/971
http://twitter.rubyforge.org/を利用すると,RubyからHTTPリクエストやJSON/XMLのパースを意識することなくTwitter APIにアクセスすることができる。日本語でのドキュメントはRoute 477が詳しい。 現在のTwitter APIでは自身のfriends(followingのこと)やfollowersを取得する際に"friends"や"followers"というそのまんまのAPIにアクセスする必要があるが,これらのAPIはデフォルトだとfriend/followerを直近の100件しか返してくれない。以前はこれらのAPIに"page"というパラメータがあり,これを必要な分だけインクリメントしてAPIにアクセスすることにより簡単に全件のデータを取得することができたが,現在ではパラメータ"page"は廃止され,代わりに"cursor"というパラメ
Table of Contents Open Table of Contents スクリプトを準備した経緯 Unfollowers をチェックするスクリプト SimpleTwitter Unfollowers をチェックするスクリプト スクリプトを準備した経緯 Twitter を始めて早 2 ヶ月が経とうとしている。 「Google Reader なんかもういらない!」(Rest in Peace, RSS)という記事に触発されて始めてみたのだが、自分自身には相変わらず Google Reader は必需品だ。。(用途の棲み分けはできている) ただ、これまで触れ合うことはなかった方々と触れ合えたり、Google Reader と合わせて貴重な情報源となっており、今では Twitter も必需品だ。 そんな中、「Twitter で Unfollowers (アンフォローをした方)を調べるには
http://shokai.mag.keio.ac.jp/block_nowbots/から使える。 (8月15日:URL変更しました) とりあえずSinatraとOAuthの組み合わせを試してみたかったので、DBは使わないものを作りたかった。取得したOAuthのtokenなどはその場で捨てている。blockコマンドを送る権限だけを一時的に委譲してもらう。 以下技術的なことのメモ。 ■OAuthアプリの登録 まずhttp://twitter.com/oauth_clientsでアプリを登録し、consumer keyとconsumer secretを取得する。 で、下のコード中のCONSUMER_KEY, CONSUMER_SECRETを書き換える。 ■必要なライブラリ 必要なgemをインストールする。最新版にした。 sudo gem install oauth twitter sinatr
RubyのTwitterClientでクライアントアプリケーション名 (Tweenとかtwhirlとか)を表示したかったので調査しました。 方法は色んなサイトに既に書かれているのですが callbackするしないでよくわからなかった部分を整理してみました。 OAuthの仕組みなどはここでは書きません。 昔はメールで申請すればアプリケーション名を登録して貰えたみたいですが 最近は (1)Twitterアプリケーション登録画面から登録 (2)OAuthの認証を通す (3)OAuth認証後のTwitterAPIでstatusのPOST アプリケーション名が表示できるようになってました。 以下実際に表示するまでの流れです。 (1)Twitterアプリケーション登録 ここ→ http://twitter.com/oauth_clients からTwi
im.kayac.comというカヤックのサービスがあるんですが、これを使うとIMとかにHTTPとかメール経由で通知することができて、iPhoneにも対応したのでtwitterでリプライがあったら通知するスクリプト書いてみました。 #!/usr/bin/env perl use strict; use warnings; use AnyEvent::Twitter::Stream; use AnyEvent::HTTP; use HTTP::Request::Common; my $done = AnyEvent->condvar; my $streamer = AnyEvent::Twitter::Stream->new( username => 'twitter_username', password => 'twitter_password', method => 'filter',
前回 今回はfollowしてくれてる人に自動でfollow返しをする関数を作ります。 自分がfollowしてる人とfollowされてる人の配列を作って 引くとfollow返しすべき人の配列が出来ます。 今回はボット用なので、 自分がfollowしてる数 < followされてる数 の場合しか考慮してません — # 自動follow返し def auto_follow(base) # friendsを取得 friends = Array.new base.friends.each{ |f| friends << f.id } # followersを取得 followers = Array.new base.followers.each{ |f| followers << f.id } # friendsとfollowersの差を取ってfollow返し targets = Array.new
どうやらTwitterにおけるBot作成のノウハウ?にある程度需要がありそうなので、久しぶりの更新です。ちなみに「簡単に誰にでもできる」系の記事ではありません。が、やること自体は単純です。 Twitter上でのBotに必要な要件はだいたい以下のようなものが考えられます(もちろん細かくいえばこれ以外にもあるでしょうが) 1、特定の文字列をランダムに投稿 2、自分のタイムライン、あるいはパブリックタイムライン中の特定の言葉に反応してリプライ 3、自分に対するリプライ中の特定の言葉に反応してリプライ 4、フォローしてくれた人にフォロー返し 5、リムーブした人へのリムーブ返し 個人的には、2と3を分ける必要はないかなあと思っています。というのは、自分のタイムラインには自分へのリプライも含まれているので。ただ、著名なカイジBotのように「リプライでジャンケンを挑まれたらその結果を返す」というような機
Twitterのおかげで、それまではごく一部の人しか知らなかったbotというものが、だいぶん身近で親しみやすいものになったと思うんだけど、 こうなったらもっと気軽に誰でもbotを作れるようになったら楽しいんじゃないか。プログラミングができない人でも一人一botくらい持つ勢いで。 ということでこの記事を書いてみました。
この記事はめちゃくちゃ古いです.別の方法で,oAuthに対応したbotを作ってください.google:twitter bot oAuth 今日はTwitterの簡単なbotを作ってみます。 作るもの 現在のUNIXタイムを配信する、unixtimebotを作ります。 既に完成したものが以下のURLで動いています(飽きたら配信が止まるかもしれません)。 http://twitter.com/unixtimebot あなたはこのbotをfollowすることによって、常にUNIXタイムを意識しながら暮らすことができます。 方針 Rubyを使います。 直接TwitterのAPIを叩くのではなく、RubyGemsからライブラリを取ってきてそれを使ってアクセスします。 Twitterにアクセスできるgem Twitterにアクセスするためのgemは、ちょっと探しただけで、これだけありました。 Twit
つくってみたはいいけど、amachangさんとかHamachiya2さんとかdankogaiさんとか、上位にきそうな人が上位に来たので面白くなかった。 Rubyならこんなに短くかけるよ!とか、やればいいと思う。 import java.io.*; import java.net.*; import java.util.*; import javax.xml.bind.*; import javax.xml.bind.annotation.*; public class Recommender { /** キャッシュ置き場 */ static String path = "C:\\User\\kishida\\twitterfriends\\"; /** ユーザーデータを読み込み */ static Users getUsers(String name){ try { String file
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く