我需要从使用msa和msid的谷歌地图网址中提取lat长数据

时间:2015-03-29 22:49:28

标签: google-maps google-maps-api-3 google-maps-api-2

当包装一些网页时,我得到了这样的iframe:

<iframe width="870" height="480" frameborder="0" scrolling="no" marginheight="0" marginwidth="0" src="http://maps.google.com/maps/ms?msa=0&amp;hl=pt-BR&amp;ie=UTF8&amp;vpsrc=0&amp;msid=206481929558161217795.0004aa2b76eb8211ac517&amp;z=17&amp;output=embed"></iframe>

代码的重要部分是网址:

http://maps.google.com/maps/ms?msa=0&hl=pt-BR&ie=UTF8&vpsrc=0&msid=206481929558161217795.0004aa2b76eb8211ac517&z=17&output=embed

问题是:

如何从此谷歌地图网址获取纬度和经度数据?

1 个答案:

答案 0 :(得分:0)

纬度和经度不可用作该网址的一部分。如果从该地图下载KML,解压缩生成的KMZ文件并查看其中包含的KML,您将看到(显示标记的坐标):

<?xml version='1.0' encoding='UTF-8'?>
<kml xmlns='http://www.opengis.net/kml/2.2'>
    <Document>
        <name>Untitled layer</name>
        <Placemark>
            <styleUrl>#icon-22</styleUrl>
            <name>Residencial Buena Vista</name>
            <ExtendedData>
            </ExtendedData>
            <Point>
                <coordinates>-49.281449,-16.689937,0.0</coordinates>
            </Point>
        </Placemark>
        <Style id='icon-22'>
            <IconStyle>
                <scale>1.1</scale>
                <Icon>
                    <href>http://www.gstatic.com/mapspro/images/stock/22-blue-dot.png</href>
                </Icon>
                <hotSpot x='16' y='31' xunits='pixels' yunits='insetPixels'>
                </hotSpot>
            </IconStyle>
        </Style>
    </Document>
</kml>

&#13;
&#13;
var geocoder;
var map;

function initialize() {
  var myOptions = {
    center: {
      lat: 0,
      lng: 0
    },
    zoom: 2,
    mapTypeId: google.maps.MapTypeId.ROADMAP
  };
  var map = new google.maps.Map(document.getElementById("map_canvas"), myOptions);

  var geoXml = new geoXML3.parser({
    map: map,
    singleInfoWindow: false
  });
  geoXml.parseKmlString(kmlData);
}
google.maps.event.addDomListener(window, "load", initialize);

var kmlData = '<kml><Style id="icon-22"><IconStyle><scale>1.1</scale><Icon><href>http://www.gstatic.com/mapspro/images/stock/22-blue-dot.png</href></Icon><hotSpot x="16" y="31" xunits="pixels" yunits="insetPixels"></hotSpot></IconStyle></Style><Placemark><styleUrl>#icon-22</styleUrl><name>Residencial Buena Vista</name><Point><coordinates>-49.281449,-16.689937,0.0</coordinates></Point></Placemark></kml>';
&#13;
html,
body,
#map_canvas {
  height: 100%;
  width: 100%;
  margin: 0px;
  padding: 0px
}
&#13;
<script src="https://maps.googleapis.com/maps/api/js"></script>
<script src="https://geoxml3.googlecode.com/svn/branches/polys/geoxml3.js"></script>
<div id="map_canvas" style="border: 2px solid #3872ac;"></div>
&#13;
&#13;
&#13;