首页 文章

如何获取谷歌 Map 查询字符串的Lat / Lng?

提问于
浏览
2

我有这个链接:

http://www.google.com/maps?cid=0,0,612446611849848549&f=q&source=embed&hl=en&geocode=&q=Универзална+Сала+&sll=,&&ie=UTF8&hq=&hnear=Универзална+Сала+&ll=,&z=15&iwloc=near

我想要的是检索精确定位的Lat Lng . 我已经尝试使用地理编码API:

http://maps.googleapis.com/maps/api/geocode/xml?q=Универзална+Сала+&sensor=false

但我没有得到任何结果,因为精确指的是一个地方,而不是一个地址 .

如何根据链接获取精确定位的Lat Lng? (我需要通过代码,因为我正在抓一个网站)

1 回答

  • 0

    您可以从此链接的响应中获取Lat Lng信息 . 此链接的响应将是谷歌 Map 的html文件 . 位置信息写在html里面的javascript代码中 . 您可以在javascript代码中找到“viewport:{center:{lat:xxx,lng:xxx}}”模式 . 例如,我发现链接的lat和lng是41.999227和21.416496,这是 Map 的中心以及精确定位的地方 . 或者,如果您有多个结果,则可以找到标记位置:

    Map 中心信息代码:

    viewport: {
        center: {
           lat: 41.999227,
           lng: 21.416496
        },
        span: {
            lat: 0.006295,
            lng: 0.006295
        },
        zoom: 15,
        mapType: 'm',
        source: 0
    },
    ...
    

    标记代码:

    markers: [{
        id: 'A',
        cid: '612446611849848549',
        latlng: {
            lat: 41.999227,
            lng: 21.416496
        },
        ...
    

    在这种情况下, Map 中心和标记具有相同的latlng信息 .

相关问题