PHP / MySQL大学坐标列表

时间:2012-10-09 07:41:40

标签: php mysql coordinates

我正在尝试获取用户的坐标,并获取该地区最近的大学的简短列表。

所以我最初的想法是用很多大学和坐标来填充我自己的MySQL,所以我可以使用搜索算法将最近的少数几所大学与我数据库中的数据相匹配。

这样做是否切合实际?为了查找所有大学的列表,我查看了:this question,当我去the site时,似乎文件导出为.uid?我不知道如何处理这件事。另外,如果我有大学名单,我怎样才能得到它们的坐标?地理编码器会工作吗?如果有可能我也想要一份高中名单,但暂时忽略这一点。

你怎么看?我错过了什么吗?有没有更有效的方法来获得最近的大学列表给用户?

4 个答案:

答案 0 :(得分:3)

如果您拥有所有大学的地址列表,则可以使用Google地理编码API https://developers.google.com/maps/documentation/geocoding/来检索坐标。您可以编写一个脚本,用信息填充数据库表。

编辑:

我找到了这个网站:http://www.a2zcolleges.com/address_phone/addressindex.htm,也许它可能会有帮助。

答案 1 :(得分:0)

您是否尝试过查看Google Maps API?也许你可以搜索大学,然后解析结果。

看起来你可以Place Search,然后使用大学的Place Type

答案 2 :(得分:0)

你可以只用大学所在城市的纬度/经度来逃避,或者这是一个+/-一英里或两个重要的本地搜索? Maxmind提供免费的城市协调数据库,您可以根据城市的大学列表进行交叉参考

Maxmind world cities

修改

以下是美国邮政编码长/拉特坐标的列表,您可以使用该坐标与我在上面评论中发布的大学地址csv数据库链接进行交叉引用。如果您需要国际邮政编码,他们在maxmind邮政编码部分有几个很好的链接

US Zip Codes

答案 3 :(得分:0)

Google Geocoding API具有使用限制,我相信。我已经通过两种方式检索了大学的地理坐标。第一个是复杂的,只为后代提到。

(1)这种方式使用了一个非常迂回的过程,涉及OpenRefine(http://openrefine.org/) - 以前的Google Refine。它需要在您的计算机(Windows,Mac,Linux)上运行Java。但是因为这很复杂,我要说的是你需要:

  • (a)在OpenRefine中添加dbpedia.org对帐服务;
  • (b)使用架构在您的学院列表上运行对帐 DBO:大学;
  • (c)从已对帐列中检索dbpedia网址;
  • (d)将网址转换为.json版本;
  • (e)运行"获取网址"使用.json网址;
  • (f)使用GREL函数解析坐标的结果 内置(或Jython)。

你可以看到它是多么迂回,但它适合我,因为我每天都使用OpenRefine。

(2)较不迂回的路线是使用您的学院列表直接在dbpedia.org上运行SPARQL查询。但是,SPARQL是一种后天的品味,可能会混淆语法。在做正确的事情之前,我必须做很多阅读和命中测试。

现在,只是为了完全统一,dbpedia.org是wikipedia.org的结构化等价物。你可能会嘲笑这一点,但是当涉及到大学/大学入学时,一些基本信息通常非常准确 - 包括地理坐标,既定日期,地点,网站等。