我是一个非常新手的程序员,所以请保持温和。
我尝试做的是根据Google地图导出的坐标从Google地图/地点中提取formatted_phone_number和网站的位置。从Google地图导出的KML文件仅包含位置名称及其纬度和经度。
我指的是Google Places API - Place Details。 这是Sheet,其中包含我想要获取电话号码和网站的餐馆坐标。然后将此列表作为csv文件导入Insightly。
我发现这个google工作表脚本可以根据地理编码获取地址,该地址有效:
var geocoder = Maps.newGeocoder(),
cache = CacheService.getScriptCache();
function reverseGeocodeLatLngTest() {
Logger.log(reverseGeocodeLatLng(51.70055389, 5.318333149));
}
function reverseGeocodeLatLng(latitude, longitude) {
// var latitude = 51.69048,
// longitude = 5.29362,
var cacheKey = latitude + "+" + longitude,
cached = cache.get(cacheKey);
if(cached !== null) {
return JSON.parse(cached);
}
Utilities.sleep(2000);
var result = geocoder.reverseGeocode(latitude, longitude),
//First response is the most specific
response = result.results[0];
if(response === undefined) {
return "??";
}
function g(fieldName) {
for (var i = 0; i < response.address_components.length; i++) {
if(response.address_components[i].types.indexOf(fieldName) != -1) {
return response.address_components[i];
}
}
return {"long_name": "??"};
}
rValue = [[g("route").long_name, g("street_number").long_name, g("postal_code").long_name, g("locality").long_name, g('country').long_name, g('website').long_name]];
cache.put(cacheKey, JSON.stringify(rValue));
return rValue;
}
&#13;
我认为脚本应该与此接近,以获取每个位置的位置详细信息。
感谢您的帮助。
答案 0 :(得分:1)
我只是为此目的整理了一些东西-将电话号码添加到我有公司名称和地址的列表中。
您将需要一个Google API密钥。它是免费的,只需几分钟即可完成设置。
希望这会有所帮助!
src