如何使用Python确定基于城市的地区,国家和大陆?

时间:2011-01-30 18:59:23

标签: python

所以,我列出了一系列城市和州/地区组合(其中一些城市没有成对的州/地区),我想用这些来填补国家,大陆,(和州) /未提供的地区)信息。在多个地区适合的地方,我愿意接受其中的任何一个,尽管最大的地区是最好的。什么是最简单的Python库,让我这样做?

一个例子:给定“伊斯坦布尔”,我想要的是:

{istanbul, istanbul province, turkey, europe}

3 个答案:

答案 0 :(得分:5)

感谢Kimvais和Lennart Regebro,我已经想出了一个非常简单的方法来做我想做的事情,我想在这里为其他遇到同样问题的人发布基本步骤。

  1. 安装geopy(http://code.google.com/p/geopy/
  2. 使用以下内容:

    from geopy import geocoders
    
    gn = geocoders.Google()
    place, (lat, lng) = gn.geocode("istanbul")
    print place
    
  3. 这打印:Istanbul/Istanbul Province, Turkey,这很棒,而且正是我想要的(没有大陆部分,但只有一个国家/大陆组合列表我自己很容易做到(是的我知道)土耳其位于两个不同的大陆。我很高兴将它放在一个用于我的目的,因为它对我来说无关紧要。)

    无论如何,希望这会帮助有同样问题的人。

答案 1 :(得分:2)

我想geopygeonames接口可能很有用

答案 2 :(得分:1)

你根本不需要任何图书馆。您需要的是地理位置列表。如果您没有在线地理定位服务,您可以使用,这将为您做这些事情,可通过http(因此urllib)访问。您可能需要一个库来解释响应,例如,可以是XML。