フォロワーから友利奈緒を探す

2015/09/04DevelopmentTwitter, Visual Basic

プログラミング生放送勉強会 第35回@株式会社 DMM.com ラボ で、LT(ライトニングトーク)を私もしました。その内容です。

プログラミング生放送が、プログラミング(生放送)しないのは、東レ(旧 東洋レーヨン)がレーヨンを生産していないのと同じ! と勉強会のはじめに説明しましたが、ひさしぶりに、プログラミング生放送(Live Coding)を行いました。

フォロワーから友利奈緒を探す

TV アニメ「Charlotte」の「友利奈緒」を Twitter フォロワーから探します。@MysticDoll さんとのネタかぶりで、自分も笑ってしまった。

ソースコード

会場で書いたコードです(少しコメント追記等しています)。.NET の Twitter ライブラリー「CoreTweet」を使って、自分のフォロワーの ID を取得し、順にユーザー情報を取得し、名前から友利奈緒を探します。最後に、結果をツイートします。

Module Module1
Sub Main()
#Region "keys"
Dim consumerKey = "***"
Dim consumerSecret = "***"
Dim accessToken = "***"
Dim accessSecret = "***"
#End Region
Dim tokens = CoreTweet.Tokens.Create(consumerKey, consumerSecret, accessToken, accessSecret)
' API GET followers/ids (5000人までフォロワーの ID を取得)
Dim idsResult = tokens.Followers.Ids(New Dictionary(Of String, Object) From {
{"screen_name", "jz5"}})
Dim count = 0
For i = 0 To Math.Floor(idsResult.Count / 100)
Dim ids = idsResult.Skip(i * 100).Take(100)
' API GET users/lookup (100人ごとにユーザー情報を取得)
Dim lookupResult = tokens.Users.Lookup(New Dictionary(Of String, Object) From {
{"user_id", ids}})
For Each u In lookupResult
If u.Name.Contains("友利奈緒") Then ' 友利奈緒を探す
count += 1
Console.WriteLine("{0} {1}", u.ScreenName, u.Name)
End If
Next
Next
tokens.Statuses.Update(String.Format("フォロワーに友利奈緒を{0}人見つけました #pronama", count))
End Sub
End Module

view raw
Main.vb
hosted with ❤ by GitHub

実行中の様子。

結果

ありがとうございました。

追記: Web サービス化しました。