有没有办法(任何API或任何网址)找到lat,只需传递区号(邮政编码)吗?
答案 0 :(得分:3)
您只需要使用此信息的数据库; here's a free one.
答案 1 :(得分:3)
Google Maps Geocoder将仅搜索邮政编码。
以下是一个示例:(以及fiddle可以看到它正常工作)
var geocoder;
function initialize() {
geocoder = new google.maps.Geocoder();
}
function codeAddress() {
var address = document.getElementById("address").value;
geocoder.geocode({
'address': address
}, function(results, status) {
if (status == google.maps.GeocoderStatus.OK) {
$('#coord').val(results[0].geometry.location);
} else {
alert("Geocode was not successful for the following reason: "
+ status);
}
});
}
Google的免费版API在批量地理编码方面具有限制性。如果您需要对大量数据进行地理编码,则可能需要查看地理编码服务,例如:USC's geocoding service。
答案 2 :(得分:1)
您可以尝试使用yahoo geoplanet数据集。它包括全球地理编码的zipcodes和其他一些东西。该数据集的主要问题是它不再被维护,因此可能缺少较新的邮政编码。
否则,您确实可以使用地理编码器。谷歌,Navteq和雅虎有这样的API虽然我不知道他们是否可以只对邮政编码进行地理编码。