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);
}
});
}
# 1 楼答案
您可以尝试使用yahoo geoplanet数据集。它包括全世界的地理编码Zipcode和其他一些东西。这个数据集的主要问题是它不再被维护,因此可能会丢失较新的postalcodes
否则,你可以使用地理编码器。谷歌、Navteq和雅虎都有这样的API,但我不知道他们是否可以只对邮政编码进行地理编码
# 2 楼答案
谷歌地图地理编码器将只在zipcode上搜索
下面是一个例子:(和一个fiddle看到它工作)
谷歌的免费API版本在批量地理编码方面有限制。如果你需要对大量数据进行地理编码,你可能需要研究一个地理编码服务,比如:USC's geocoding service
# 3 楼答案
你只需要使用这个信息的数据库here's a free one.