質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
87.20%
Ruby

Rubyはプログラミング言語のひとつで、オープンソース、オブジェクト指向のプログラミング開発に対応しています。

解決済

Google Maps Direction APIから得たjsonデータをhashに変換したい

coffeeET
coffeeET

総合スコア0

Ruby

Rubyはプログラミング言語のひとつで、オープンソース、オブジェクト指向のプログラミング開発に対応しています。

1回答

0評価

0クリップ

1020閲覧

投稿2018/06/19 07:40

ruby上でGoogle Maps Direction APIを叩き,経路情報を取得し,徒歩での移動時間を取得したいと考えています.
そこで,下のコードでjsonをhashにparseしましたが,深い箇所がparse出来ず,参照出来なくて困っています.
legs以下の値をruby上で取得する方法をご教授願えると幸いです.

ruby

# APIから得たjsonデータをhashにparse data = JSON.parse(response.body) puts data["routes"] puts data["routes"]["legs"] # Error : no implicit conversion of String into Integer

ruby

# parse後 "geocoded_waypoints"=>[ { "geocoder_status"=>"OK", "place_id"=>"ChIJC6fjlY3mAGARSshZ6CLIrhs", "types"=>[ "establishment", "point_of_interest", "train_station", "transit_station" ] }, { "geocoder_status"=>"OK", "place_id"=>"ChIJ67mcWJLmAGARrUf0FlFtm7w", "types"=>[ "department_store", "establishment", "point_of_interest", "store" ] } ], "routes"=>[ { "bounds"=>{ "northeast"=>{ "lat"=>34.7029859, "lng"=>135.4985137 }, "southwest"=>{ "lat"=>34.7023575, "lng"=>135.4959768 } }, "copyrights"=>"地図データ ©2018 Google, ZENRIN", "legs"=>[ { "distance"=>{ "text"=>"0.3 km", "value"=>343 }, "duration"=>{ "text"=>"5分", "value"=>303

json

{ "geocoded_waypoints": [ { "geocoder_status": "OK", "place_id": "ChIJC6fjlY3mAGARSshZ6CLIrhs", "types": [ "establishment", "point_of_interest", "train_station", "transit_station" ] }, { "geocoder_status": "OK", "place_id": "ChIJ67mcWJLmAGARrUf0FlFtm7w", "types": [ "department_store", "establishment", "point_of_interest", "store" ] } ], "routes": [ { "bounds": { "northeast": { "lat": 34.7029859, "lng": 135.4985137 }, "southwest": { "lat": 34.7023575, "lng": 135.4959768 } }, "copyrights": "地図データ ©2018 Google, ZENRIN", "legs": [ { "distance": { "text": "0.3 km", "value": 343 }, "duration": { "text": "5分", "value": 303 }, 〜以下略〜

良い質問の評価を上げる

以下のような質問は評価を上げましょう

  • 質問内容が明確
  • 自分も答えを知りたい
  • 質問者以外のユーザにも役立つ

評価が高い質問は、TOPページの「注目」タブのフィードに表示されやすくなります。

気になる質問をクリップする

クリップした質問は、後からいつでもマイページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

teratailでは下記のような質問を「具体的に困っていることがない質問」、「サイトポリシーに違反する質問」と定義し、推奨していません。

  • プログラミングに関係のない質問
  • やってほしいことだけを記載した丸投げの質問
  • 問題・課題が含まれていない質問
  • 意図的に内容が抹消された質問
  • 過去に投稿した質問と同じ内容の質問
  • 広告と受け取られるような投稿

評価を下げると、トップページの「アクティブ」「注目」タブのフィードに表示されにくくなります。

まだ回答がついていません

会員登録して回答してみよう

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
87.20%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問

同じタグがついた質問を見る

Ruby

Rubyはプログラミング言語のひとつで、オープンソース、オブジェクト指向のプログラミング開発に対応しています。