使用Google Roads API抓取道路信息(java实现)

Google Roads API提供了强大的道路获取接口,用户只需调用相应的API就可以获取相应区域的道路坐标以及道路的限速信息。具体的调用方法如下:

https://roads.googleapis.com/v1/snapToRoads?path=-35.27801,149.12958|-35.28032,149.12907|-35.28099,149.12929|-35.28144,149.12984|-35.28194,149.13003|-35.28282,149.12956|-35.28302,149.12881|-35.28473,149.12836        &interpolate=true        &key=API_KEY

其中以“|”分割开的是经纬度坐标,如果将interpolate设置为true,则会返回平滑的路线信息。key的值需要替换为用户自己申请的key值。普通开发者每天可以执行上述查询2500次。Java调用Roads API的代码如下:

StringBuffer document = new StringBuffer();
        try {
            String str_url = "https://roads.googleapis.com/v1/snapToRoads?path=-35.27801,149.12958|-35.28032,149.12907|-35.28099,149.12929|-35.28144,149.12984|-35.28194,149.13003|-35.28282,149.12956|-35.28302,149.12881|-35.28473,149.12836&interpolate=true&key=YourKeyHere";
            URL url = new URL(str_url);//远程url
            URLConnection conn = url.openConnection();
            BufferedReader reader = new BufferedReader(new InputStreamReader(conn.getInputStream()));
            String line = null;
            int line_number = 0;
            while ((line = reader.readLine()) != null) {
                line_number += 1;
                if (line.startsWith("        \"latitude\": ")) {
                    line = line.replaceAll("        \"latitude\": ", "");
                    document.append(line + " ");
                    System.out.print(line);
                }
                if (line.startsWith("        \"longitude\": ")) {
                    line = line.replaceAll("        \"longitude\": ", "");
                    document.append(line + " ");
                    System.out.println(line);
                }
            }
            if (line_number < 20) {
                System.out.println("error");
            }
            reader.close();
        } catch (MalformedURLException e) {
            e.printStackTrace();
        } catch (IOException e) {
            e.printStackTrace();
        }

查询后的结果如下图所示:

版权声明:本文为博主原创文章,未经博主允许不得转载。

时间: 2024-10-11 13:12:37

使用Google Roads API抓取道路信息(java实现)的相关文章

Google 地图 API V3 针对移动设备进行开发

针对移动设备进行开发 Google Maps API v3 旨在实现快速加载,并可在移动设备上稳定运行.尤其是,我们已专注于针对 Android 和 iOS 手机等先进的移动设备进行开发.与桌面计算机上的传统浏览器相比,移动设备的屏幕较小.而且,移动设备通常具备独有的特定行为(例如“双指张合缩放”).如果您想让自己的应用在移动设备上稳定运行,建议您执行以下操作: 将包含您地图的 <div> 的宽度属性和高度属性都设为 100%.不过请注意,在一些旧版的桌面浏览器上使用这些值无法获得良好的显示效

Google Maps API V3 之绘图库 信息窗口

绘图库 本文档中的概念仅适用于 google.maps.drawing 库中提供的地图项.默认情况下,系统在加载 Maps JavaScript API 时不会加载该库,您必须使用 libraries 引导程序参数进行明确指定. http://maps.googleapis.com/maps/api/js?sensor=false&libraries=drawing DrawingManager 类提供了一个图形界面,以供用户在地图上绘制多边形.矩形.折线.圆形和标记.DrawingManage

Google Maps API V3 之 路线服务

概述 您可以使用 DirectionsService 对象计算路线(使用各种交通方式).此对象与 Google Maps API 路线服务进行通信,该服务会接收路线请求并返回计算的结果.您可以自行处理这些路线结果,也可以使用 DirectionsRenderer 对象呈现这些结果. 您可以通过文本字符串(例如,“伊利诺斯州芝加哥市”或“澳大利亚新南威尔士州达尔文市”)或 LatLng 值的形式来指定路线的起点和终点.路线服务可以使用一系列路标返回多段路线.路线可以显示为一条在地图上绘制路线的折线

[转]使用Google地图API搜索功能

使用Google地图API搜索功能 由于工作关系,最近这两天研究了下Google地图API,要实现地图位置搜索功能,显示搜索结果并能在地图上标记下来,刚开始还考虑使用51ditu,出于搜索关键字分词等方面考虑,最后还是决定使用Google地图,一直也都是那么的崇拜谷歌的大神,这次就来体验一翻~ 在Google地图标记定位到一点 刚开始是实现在Google地图上定位一点的功能,API接口里GMap2类有一个setCenter(center:GLatLng, zoom?:Number, type?:

【JAVA系列】Google爬虫如何抓取JavaScript的?

公众号:SAP Technical 本文作者:matinal 原文出处:http://www.cnblogs.com/SAPmatinal/ 原文链接:[JAVA系列]Google爬虫如何抓取JavaScript的? 前言部分 大家可以关注我的公众号,公众号里的排版更好,阅读更舒适. 正文部分 我们测试了谷歌爬虫是如何抓取 JavaScript,下面就是我们从中学习到的知识. 认为 Google 不能处理 JavaScript ?再想想吧.Audette Audette 分享了一系列测试结果,他

如何将经纬度利用Google Map API显示C# VS2005 Sample Code

原文 如何将经纬度利用Google Map API显示C# VS2005 Sample Code 日前写了一篇如何用GPS抓取目前所在,并回传至资料库储存,这篇将会利用这些回报的资料,将它显示在地图上,这个做法有两种,最简单的就是直接传值到Google Maps上. 举例来说,当我们知道经纬度后,只要将数据套到以下网址即可. http://maps.google.com/maps?q=25.048346%2c121.516396 在参数q=后面,就可以加上经纬度了. 25.048346是Lati

Google 地图 API for Android

原文:Introduction to Google Maps API for Android 作者:Eunice Obugyei 译者:kmyhy 从健康类 app Runkeeper 到游戏 app 精灵宝可梦,位置服务对现代 app 来说越来越重要. 在本文中,我们将创建一个 app,名字就叫做 City Guide.这个 app 允许用户搜索一个地点,使用 Google 地图显示这个地点的位置并监听用户的位置改变. 我们将学习如何使用 Google 地图 API for Android,G

【转】Android Google Map API使用的八个步骤

Android Google Map API使用的八个步骤 本系列教程将分为两部分,第一部分是指导用户使用Mapview控件进行编程,其中包括了如何获得Google Map API,如何使用该API进行简单的开发,如何获得用户当前所在的位置.第二部分则包括如何在地图上,用第三方的组件库,实现气球式显示若干指定位置的功能. 步骤1 创建新的Android 工程 首先打开eclipse新建立一个Android 工程,其中相关参数设置如下: Project name:MallFinder Build 

Android Google Maps API 网络服务用于网络定位、计算路线、获取经纬度、获取详细地址等

---恢复内容开始--- extends:http://blog.csdn.net/h7870181/article/details/12505883 Google Maps API 网络服务 官网地址 : https://developers.google.com/maps/documentation/webservices/?hl=zh-cn 其实就是一些接口,供我们调用,如: 1.根据地址获取经纬度 http://maps.google.com/maps/api/geocode/json?