post Image
(初心者向け)Flickr Apiを使って画像を引っ張ってくる(1)

~API Documentationの中身を見る編~

自分向けメモな意味合いを含めて、画像たくさん使って説明します。
最終的にやりたいことを画像をひっぱってくることですが、それをするにはいくつかのステップを踏む必要があります。
すごく単純にまとめてしまうと、

  • apiKeyを使って、request用URLを作成
  • 帰ってきたresponseであるjsonファイルを見て、必要な情報だけを指定する。
  • 指定した情報をメモリに保存。
  • 表示する。

1. api登録

まずはフリッカーのapiサイトでyahoo.comのアカウントを取得して、apikeyをゲットしてください。
Screen Shot 2017-07-05 at 7.06.59 PM.png

無事ログインできたら、こんな画面になるので、apikeyはこちらでGetできる。
Screen Shot 2017-07-05 at 7.11.55 PM.png

2. requestを送るためのURLを作成する

A. URLってなんやねん

こんな感じのURLです。▲▲▲▲▲▲▲はapiKey

 https://api.flickr.com/services/rest?api_key=▲▲▲▲▲▲▲▲(method=flickr.interestingness.getList&format=json&nojsoncallback=1&extras=url_h,date_taken

URLを分解してみてみましょう。
Screen Shot 2017-07-06 at 11.43.51 AM.png

① Rest でリクエストを送るためのフォーマット(urlの冒頭)

ドキュメント:https://www.flickr.com/services/api/request.rest.html

② 上記で取得したApiキー
③ どういった画像が欲しいか指定する。上の場合、 “interestingness” = 面白い という意味なので、興味深い画像が帰ってくる感じ

ドキュメント:https://www.flickr.com/services/api/flickr.interestingness.getList.html
ちなみに、他のメソッドが使いたい場合は、トップページにあるAPI Methods一覧を見るといいですよ〜。

④ データのフォーマットを指定する。この場合JSON。指定しなければ、デフォルトでxmlが帰ってくる
⑤ nojsoncallバックを指定する
⑥ 帰ってくるデータの中に、画像のurlと撮った日付を含める

METHODがflickr.interestingness.getListの場合、画像URLと撮った日付が帰ってこないので、EXTRASで指定する必要がある。

B. どんなJSONデータが帰ってくるの?

こんなです。(firefox)
画像URLだけ別タブで開いて見て、ちゃんと欲しい画像が表示されれば、成功!
Screen Shot 2017-07-05 at 7.28.14 PM.png

C. API ExplorerでURLのテストしてみる

URLを直打ちしてテストしてもいいのですが、面倒!
なので、Flickrが提供しているApi Explorerを使おう。
https://www.flickr.com/services/api/explore/flickr.interestingness.getList

このように入力すれば、Bの画像と同じ結果が返ってくるはず。
Screen Shot 2017-07-06 at 12.13.18 PM.png

じゃ早速(やっと)コードを書いていきましょう、それは次号で!

え、待てないんだけど、という人は完成をどうぞ。
https://github.com/Saayaman/FlickrApi


『 Swift 』Article List
Category List

Eye Catch Image
Read More

Androidに関する現役のエンジニアのノウハウ・トレンドのトピックなど技術的な情報を提供しています。コード・プログラムの丁寧な解説をはじめ、初心者にもわかりやすいように写真や動画を多く使用しています。

Eye Catch Image
Read More

AWSに関する現役のエンジニアのノウハウ・トレンドのトピックなど技術的な情報を提供しています。コード・プログラムの丁寧な解説をはじめ、初心者にもわかりやすいように写真や動画を多く使用しています。

Eye Catch Image
Read More

Bitcoinに関する現役のエンジニアのノウハウ・トレンドのトピックなど技術的な情報を提供しています。コード・プログラムの丁寧な解説をはじめ、初心者にもわかりやすいように写真や動画を多く使用しています。

Eye Catch Image
Read More

CentOSに関する現役のエンジニアのノウハウ・トレンドのトピックなど技術的な情報を提供しています。コード・プログラムの丁寧な解説をはじめ、初心者にもわかりやすいように写真や動画を多く使用しています。

Eye Catch Image
Read More

dockerに関する現役のエンジニアのノウハウ・トレンドのトピックなど技術的な情報を提供しています。コード・プログラムの丁寧な解説をはじめ、初心者にもわかりやすいように写真や動画を多く使用しています。

Eye Catch Image
Read More

GitHubに関する現役のエンジニアのノウハウ・トレンドのトピックなど技術的な情報を提供しています。コード・プログラムの丁寧な解説をはじめ、初心者にもわかりやすいように写真や動画を多く使用しています。

Eye Catch Image
Read More

Goに関する現役のエンジニアのノウハウ・トレンドのトピックなど技術的な情報を提供しています。コード・プログラムの丁寧な解説をはじめ、初心者にもわかりやすいように写真や動画を多く使用しています。

Eye Catch Image
Read More

Javaに関する現役のエンジニアのノウハウ・トレンドのトピックなど技術的な情報を提供しています。コード・プログラムの丁寧な解説をはじめ、初心者にもわかりやすいように写真や動画を多く使用しています。

Eye Catch Image
Read More

JavaScriptに関する現役のエンジニアのノウハウ・トレンドのトピックなど技術的な情報を提供しています。コード・プログラムの丁寧な解説をはじめ、初心者にもわかりやすいように写真や動画を多く使用しています。

Eye Catch Image
Read More

Laravelに関する現役のエンジニアのノウハウ・トレンドのトピックなど技術的な情報を提供しています。コード・プログラムの丁寧な解説をはじめ、初心者にもわかりやすいように写真や動画を多く使用しています。

Eye Catch Image
Read More

Pythonに関する現役のエンジニアのノウハウ・トレンドのトピックなど技術的な情報を提供しています。コード・プログラムの丁寧な解説をはじめ、初心者にもわかりやすいように写真や動画を多く使用しています。

Eye Catch Image
Read More

Rubyに関する現役のエンジニアのノウハウ・トレンドのトピックなど技術的な情報を提供しています。コード・プログラムの丁寧な解説をはじめ、初心者にもわかりやすいように写真や動画を多く使用しています。

Eye Catch Image
Read More

Scalaに関する現役のエンジニアのノウハウ・トレンドのトピックなど技術的な情報を提供しています。コード・プログラムの丁寧な解説をはじめ、初心者にもわかりやすいように写真や動画を多く使用しています。

Eye Catch Image
Read More

Swiftに関する現役のエンジニアのノウハウ・トレンドのトピックなど技術的な情報を提供しています。コード・プログラムの丁寧な解説をはじめ、初心者にもわかりやすいように写真や動画を多く使用しています。

Eye Catch Image
Read More

Unityに関する現役のエンジニアのノウハウ・トレンドのトピックなど技術的な情報を提供しています。コード・プログラムの丁寧な解説をはじめ、初心者にもわかりやすいように写真や動画を多く使用しています。

Eye Catch Image
Read More

Vue.jsに関する現役のエンジニアのノウハウ・トレンドのトピックなど技術的な情報を提供しています。コード・プログラムの丁寧な解説をはじめ、初心者にもわかりやすいように写真や動画を多く使用しています。

Eye Catch Image
Read More

Wordpressに関する現役のエンジニアのノウハウ・トレンドのトピックなど技術的な情報を提供しています。コード・プログラムの丁寧な解説をはじめ、初心者にもわかりやすいように写真や動画を多く使用しています。

Eye Catch Image
Read More

機械学習に関する現役のエンジニアのノウハウ・トレンドのトピックなど技術的な情報を提供しています。コード・プログラムの丁寧な解説をはじめ、初心者にもわかりやすいように写真や動画を多く使用しています。