Php 谷歌地图HTTP请求或API

Php 谷歌地图HTTP请求或API,php,api,google-maps,maps,Php,Api,Google Maps,Maps,我想使用谷歌地图获取从一个地点到另一个地点的驾驶时间信息 我在这个网站上找到了另一篇精彩的帖子 虽然上面的链接是基于地理编码,我想使用邮政编码,如果可能的话 但我真的很喜欢通过php调用来获取时间,因为这一次是在后台计算出来的,而不是为了客户展示。我可以通过HTTP请求执行此类请求吗?例如 邮政编码:98010 邮政编码:98011 只需发出此HTTP请求: http://maps.google.com/maps?saddr=98010&daddr=98011&output=ht

我想使用谷歌地图获取从一个地点到另一个地点的驾驶时间信息

我在这个网站上找到了另一篇精彩的帖子

虽然上面的链接是基于地理编码,我想使用邮政编码,如果可能的话

但我真的很喜欢通过php调用来获取时间,因为这一次是在后台计算出来的,而不是为了客户展示。我可以通过HTTP请求执行此类请求吗?

例如

邮政编码:98010

邮政编码:98011

只需发出此HTTP请求:

http://maps.google.com/maps?saddr=98010&daddr=98011&output=html&oi=nojs
然后使用
class=dditd
id=dditd
解析
div
的响应,从该div中可以提取所需的所有信息(距离、旅行时间、交通中的旅行时间(仅有时给定)。这可以通过正则表达式或XPath或任何您想要的方式完成

一旦获得信息,您仍然必须将“文本表示”(例如50分钟/1小时12分钟/1天1小时/…)转换为一个数字(如DB字段所需)

示例上述查询的div外观

<div class=dditd id=dditd>
  <div>
     <b>38.1&#160;mi</b>
     &#8211; about
     <b>53 mins</b>
     <span class=traffictime>
       &nbsp;(up to 1 hour 30 mins in traffic)
     </span>
  </div>
</div>

38.1和160;英里
&#关于
53分钟
(交通流量最多1小时30分钟)
但请记住,给定的时间并不准确,因为邮政编码可能是一个相当大的地理区域,我不知道谷歌从哪个点开始真正测量时间

因此,给定的时间可能会根据实际起点和终点的不同而有所不同

邮政编码:98010

邮政编码:98011

只需发出此HTTP请求:

http://maps.google.com/maps?saddr=98010&daddr=98011&output=html&oi=nojs
然后使用
class=dditd
id=dditd
解析
div
的响应,从该div中可以提取所需的所有信息(距离、旅行时间、交通中的旅行时间(仅有时给定)。这可以通过正则表达式或XPath或任何您想要的方式完成

一旦获得信息,您仍然必须将“文本表示”(例如50分钟/1小时12分钟/1天1小时/…)转换为一个数字(如DB字段所需)

示例上述查询的div外观

<div class=dditd id=dditd>
  <div>
     <b>38.1&#160;mi</b>
     &#8211; about
     <b>53 mins</b>
     <span class=traffictime>
       &nbsp;(up to 1 hour 30 mins in traffic)
     </span>
  </div>
</div>

38.1和160;英里
&#关于
53分钟
(交通流量最多1小时30分钟)
但请记住,给定的时间并不准确,因为邮政编码可能是一个相当大的地理区域,我不知道谷歌从哪个点开始真正测量时间


因此,给定的时间可能会根据实际出发点和目的点的不同而有所不同。

请注意,像这样攻击谷歌地图是违反谷歌条款的。因为它是API不受支持的一部分,谷歌很可能会在没有任何警告的情况下改变事情,从而打破这一策略。他们在过去的几年中做出了改变at破解了其他类似的黑客攻击。请注意,像这样破解谷歌地图是违反谷歌条款的。由于它是API不受支持的一部分,谷歌很可能会在没有任何警告的情况下改变事情,从而打破这一策略。他们在过去做出了一些改变,从而破解了其他类似的黑客攻击。