Google Maps APIで駅や場所の2点距離(km)を出力する

    >


@now_location と @APIKEY は各自で埋めてください。

# __END__
require 'net/http'
require 'json'

Encoding.default_external = 'UTF-8'

@now_location = "桜上水駅"

if @list
else
@list="
八王子駅
八王子
"
@list=@list.split("\n").compact.reject(&:empty?)
end

until @list.empty?
  # puts 1
  # @location="八王子"
  @location = @list.pop
  @APIKEY = ""

  url="https://maps.googleapis.com/maps/api/distancematrix/json?origins=#{@now_location}&destinations=#{@location}&mode=walking&language=ja&key=#{@APIKEY}"
  uri = URI(URI.encode(url))
  response = Net::HTTP.get(uri)
  data=JSON.parse(response)

  puts @location + ":" + km= data['rows'][0]['elements'][0]['distance']['text'] ;
  # puts @location + ":" + km= data['rows'][0]['elements'][0]['duration']['text'] ; # => 電車での時間ではなく、徒歩での時間?なので使えない。

end

出力例(桜上水駅からの距離)

神田駅:14.1 km
府中駅:15.1 km
八王子駅:28.8 km
飯田橋駅:11.8 km
中野駅:5.7 km
新大久保駅:8.2 km
大森駅:13.7 km
四ツ谷駅:10.0 km


お困りですか?この記事で紹介していることをマンツーマンで指導、解説、代行します。まずはお気軽にお問い合わせください。


Close Menu