我正在寻找一种方法来获取美国任何区号+前缀陆线电话的经纬度坐标。有谁知道可用于执行此操作的数据提供者或服务?
编辑: 我知道手机或 VOIP 线路的位置可能无法进行地理编码,这对我来说很好。我只对POTS电话号码感兴趣。虽然,如果能够根据前缀识别电话服务的类型会很好(如果这可能的话)。
有一些网站可以做到这一点,例如http://www.thedirectory.org [编辑:链接现在不好]。我不知道他们是否有任何你可以使用的 RESTful api,尽管我猜你总是可以对它们进行屏幕截图。据推测,他们使用的原始数据应该是您可以自己获得的东西,可能来自电话公司。
我找到了一些价格合理的选项:
服务对象DOTS GeoPhone [edit: link is no good now] web 服务应该可以很好地解决问题。它甚至似乎提供了我希望的“电话服务类型”信息。
AreaCodeWorld™ 白金版[edit: link is no good now] 是一种数据库产品,可以一次性购买或通过年度订阅购买。数据规范包括所有北美区号和前缀以及纬度和经度坐标。
使用 Google Geocoding API 和 allareacodes.com 上的列表,我为一个黑客项目创建了这个 json:
http://pintweets.com/area_codes.json [编辑:链接现在不好]
显然,这不是法庭可接受的证据,但它应该适用于某些目的。
[EveryoneAPI][1] [编辑:链接现在转到不相关的新站点] 将完全符合您的要求。
您可以通过在 HTTP 请求中添加“data=location”来将查询限制为仅限位置,您将得到如下信息:
"location": {
"city": "Birmingham",
"geo": {
"latitude": "33.51685254860801",
"longitude": "-86.81075983815001"
},
"state": "AL",
"zip": "35203"
}
免责声明:我是 Telo 的 CEO。[1]:https ://www.everyoneapi.com/
邮政编码有公开可用的地理编码数据(尽管它们给出的位置是相应邮局的地理编码),因此您可以通过这种方式建立对应关系(尽管您必须或多或少随机选择特定的邮政编码,因为邮编比区号多)。
但是会有一些内置错误。有些号码(例如 800 个号码)没有设计特定的位置。与手机号码相同。在任何情况下,在纽约,都有以与位于纽约的电话号码相同的区号开头的小区号码(例如 718、212)。我不确定运营商是否需要以与客户账单地址相对应的方式提供这些号码,因此您可能会遇到这样的情况:大多数 212 号码是纽约市,但有些是手机在威奇托。