Your SlideShare is downloading. ×
第2.1回 ツイッターAPI勉強会 @ts_3156 発表資料
Upcoming SlideShare
Loading in...5
×

Thanks for flagging this SlideShare!

Oops! An error has occurred.

×

Introducing the official SlideShare app

Stunning, full-screen experience for iPhone and Android

Text the download link to your phone

Standard text messaging rates apply

第2.1回 ツイッターAPI勉強会 @ts_3156 発表資料

1,387
views

Published on

2011/12/21に行われた、「第2.1回 ツイッターAPI勉強会」での @ts_3156 の発表資料です。 …

2011/12/21に行われた、「第2.1回 ツイッターAPI勉強会」での @ts_3156 の発表資料です。

質問やご意見等がありましたら twitter @ts_3156 まで何でもご連絡ください。

Published in: Technology

0 Comments
1 Like
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total Views
1,387
On Slideshare
0
From Embeds
0
Number of Embeds
0
Actions
Shares
0
Downloads
0
Comments
0
Likes
1
Embeds 0
No embeds

Report content
Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
No notes for slide

Transcript

  • 1. 第2.1回 ツイッターAPI勉強会認証なしで使える簡単なAPI紹介 2011/12/21 @ts_3156
  • 2. 自己紹介篠原照樹(しのはらてるき)筑波大学大学院 コンピュータサイエンス専攻 修士2年卒論・修論: 共感覚えごったー : http://www.egotter.com共感覚 : http://www.synaesthesia.jpブログ : http://hivecolor.comツイッター : @ts_3156面白い人常に探してます!せっかく会ったからには何か話しましょう! 2
  • 3. 「えごったー」作ってます 3
  • 4. えごったーって何?・ツイッターのフォロー情報を可視化・アカウント名を入力するだけで使える・認証情報は不要です →誰の情報でも見れます約4000回/日くらい使われてます! 4
  • 5. 今日居るのはどんな人たち?• 31人中、22名が職業エンジニア 技能 人数 Java 5 PHP 4 Python 3 Perl 2 JavaScript 2 Android 8 iPhone 1 App Engine(GAE) 5 エンジニア 22 個人開発者 8
  • 6. 今日発表すること• 認証なしのAPIを使って、 – ツイートをHPに埋め込む方法 – ツイッター検索の結果をHPに埋め込む方法 – ツイートされた回数をHPに埋め込む方法• この場にいる人には不要な話…?
  • 7. 認証なしって具体的にどういうこと?• Oauthが不要• GETリクエストだけでOK• 返ってくるのはJSON形式 – HTMLのスクレイピングは含みません!• (追記)HTMLスクレイピングとは – HTMLデータを取得して、自分が必要な部分のみ 抜き出す技術のことです。正規の手順ではない ため、基本的にやってはいけないことです。
  • 8. 認証が不要なAPIはたくさんある• 認証が不要 – フォロー、フォロワー、ツイート、検索結果の取得• 認証が必要 – ブロックした・された、非公開ツイート、メンション一覧、 非公開リスト、リムーブした・されたの取得• 今回紹介するのは赤字の部分• (ほぼ)全部の一覧はtwitter4jのページにあります http://twitter4j.org/en/api-support.html
  • 9. (補足)そもそもツイッターAPIって何?• http://www.twitter.com/statuses/ user_timeline/[スクリーンネーム].json ↑こんな感じのURLにアクセスすることで簡単 にデータを取得する方法のことを『API』と呼び ます。• さらに、 – スクリーンネームとは、「@○○」のことです。
  • 10. さっそく、ツイートを埋め込むコードの 紹介をします!
  • 11. ツイートを埋め込んだ結果を 先にお見せします
  • 12. ツイート埋め込み結果 拡大版
  • 13. ツイッター公式の埋め込みガジェット は自由にデザインをいじれない• デザインがいじれない• 自動でスクロールされていく• 自分で埋め込んだツイートな ら、デザイン(HTMLやCSS)を 自由にいじれる!
  • 14. ツイートの取得と埋め込みコードは たったこれだけ↑基本的にはこのHTMLだけでツイートが埋め込めますtwitter.jsはこちらhttp://www.synaesthesia.jp/twitter/scripts/twitter.jsCSS、JavaScript全部のせのサンプルはこちらhttp://www.synaesthesia.jp/twitter/example.html
  • 15. ツイートの取得に使っているAPI• http://www.twitter.com/statuses/ user_timeline/[スクリーンネーム].json ?callback=[コールバック関数名]&count=[個数]• 非推奨(非公式とは違う!)なAPIなので、今後廃 止されるのかも…• 少なくとも数年は大丈夫!(私の勘)
  • 16. 実際に返ってくるJSONは読みづらい • https://twitter.com/statuses/user_timeline/ts _3156.json?count=1 の結果[{"truncated":false,"place":null,"id_str":"149382136238051328","geo":null,"favorited":false,"created_at":"Wed Dec 21 06:54:11 +00002011","retweet_count":0,"in_reply_to_screen_name":"marusankak","in_reply_to_status_id_str":"149380270754234368","user":{"contributors_enabled":false,"lang":"ja","protected":false,"profile_sidebar_border_color":"C0DEED","name":"¥u3066¥u3043¥u30fc¥u3048¥u3059","id_str":"58135830","default_profile_image":false,"default_profile":true,"created_at":"Sun Jul 19 05:52:19 +00002009","friends_count":329,"statuses_count":34358,"profile_use_background_image":true,"utc_offset":32400,"description":"¥u5927¥u5b66¥u9662¥u751f¥u3067¥u3059¥u3002¥u5171¥u611f¥u899a¥u306e¥u30b5¥u30a4¥u30c8¥u904b¥u55b6¥u3057¥u3066¥u307e¥u3059¥u3002http:¥/¥/www.synaesthesia.jp(さらに続く)…意味が分からないのでフォーマットしましょう!
  • 17. フォーマットされたJSONは読みやすい
  • 18. JSONのフォーマットには Webサービスを使うと簡単• 「json format」で検索するとたくさん見つかる。 – 例えばこれ ↓ http://jsonformatter.curiousconcept.com/ – JSONをコピー&ペーストするだけでフォーマットし てくれます• JSONに限らず、コードを読みやすく整形する プログラムを「フォーマッター(formatter)」と言 います
  • 19. あるユーザのツイートの埋め込みは 以上で完了!続いて、ツイートの検索結果の埋め込 みです!
  • 20. ツイートの検索結果を埋め込むhttp://www.twitter.com/statuses/user_timeline/[スクリーンネーム].json?callback=[コールバック関数名]&count=[個数]使うAPIを変えるだけ!http://search.twitter.com/search.json?q=[検索語]&callback=[コールバック関数]&rpp=[結果数]
  • 21. 次は、ツイートされた回数を埋め込む 方法です!
  • 22. 回数を埋め込むってどういうこと?真ん中あたりの19って数字は、このページがツイートされた回数です。この数字をツイッターから取得して埋め込む方法を解説します
  • 23. あるURLがツイートされた回数を取得 するあれこれ• API – http://urls.api.twitter.com/1/urls/count.json ?url=[対象ページのURL] &callback=[コールバック関数] &noncache= + new Date() ← これ意味ある??• 返ってくるJSON – {"count":61897,"url":"http://www.yahoo.co.jp/"}• 公式RTは1回しかカウントされないです – 公式RTを複数回として数えるには statuses/retweets/:id (要認証)を使う
  • 24. 発表は以上です。 聞いてくださってありがとうございました!
  • 25. (補足)発表当日に私が @yusukeyさんに質問した項目• Q. GAEにおいて、昔はAPI利用制限が勝手に (毎回ではないが)2万回/時になってくれてい た。最近はそれがない。何でですか? – A. よく分かりません…。• あるツイートを公式RTしたユーザの一覧を取 得するにはどうすればよいですか? – A. ストーリミングAPIを使うしかないです。
  • 26. 自己紹介篠原照樹(しのはらてるき)筑波大学大学院 コンピュータサイエンス専攻 修士2年卒論・修論: 共感覚えごったー : http://www.egotter.com共感覚 : http://www.synaesthesia.jpブログ : http://hivecolor.comツイッター : @ts_3156面白い人常に探してます!せっかく会ったからには何か話しましょう! 26