有什么办法可以将Google我的地图中的数据层作为JSON访问?基本上我想要通过选择"打开数据表"获得相同的数据。当然还有坐标。
答案 0 :(得分:2)
在我看来,MyMaps仅支持将数据导出为KML。我有一个tool将导入KML并将其导出为JSON(而不是GeoJSON),您应该可以编写一些代码进行翻译。
我使用this MyMap创建了this
还有一些工具(通过快速搜索找到):
答案 1 :(得分:1)
我用过togeojson。这是代码。
var fs = require("fs");
var request = require("request");
var tj = require('togeojson');
var jsdom = require('jsdom').jsdom;
var requestOptions = {
headers: {'user-agent': 'node.js'}
, followRedirect: true
, followAllRedirects: true
};
function retrieveTrack(track, trackUrl) {
console.log("Retrieving track " + track + " from " + trackUrl);
request(trackUrl, requestOptions, function (error, response, body) {
console.log("Response:" + response.statusCode);
if (!error && response.statusCode == 200) {
fs.writeFile(track + ".kml", body, function(err) {
if(err) {
return console.log(err);
}
console.log("Track retrieved: " + track);
});
convertTrack(track);
}
});
}
function convertTrack(track) {
fs.readFile(getKmlPath(track), function (error, data) {
var json = tj.kml(jsdom(data));
fs.writeFile(track + ".json", JSON.stringify(json, null, "\t"), function(err) {
if(err) {
return console.log(err);
}
console.log("Track converted: " + track);
});
});
}