使用python从文本文件在线搜索,检查名称是否为特定国家的城市

2024-10-01 00:25:38 发布

您现在位置:Python中文网/ 问答频道 /正文

所以我有一个很大的地理位置列表,可能是某个国家的市、县等。例如国家:土耳其,名单是:Erzurum、Eskisehir等

我想知道我是否可以把这个列表放到一个文本文件中,并使用Python在线检查这些名称,以检查它们是什么地理实体,而不是单独搜索每个术语。我该怎么做?你知道吗


Tags: 实体名称列表地理位置国家地理术语文本文件
1条回答
网友
1楼 · 发布于 2024-10-01 00:25:38

也可以使用google geocoding api。举个例子:

a.txt:

erzurum
istanbul
turkey
chicago
united states
india
kayseri
spain

代码如下:

import urllib2
import json
import time

def getEntity( entityText ):
    url = 'https://maps.googleapis.com/maps/api/geocode/json?address=%s' % urllib2.quote(entityText)

    response = urllib2.urlopen(url)
    jsonaddress = json.loads(response.read())

    time.sleep(0.2)

    if jsonaddress['status'] == 'OK':
        return jsonaddress['results'][0]['types'][0]
    else:
        return None

with open('a.txt') as f:
    for line in f:
        entityText = line.strip()
        entity = getEntity( entityText ) 
        print entityText, entity

输出:

erzurum locality
istanbul locality
turkey country
chicago locality
united states country
india country
kayseri locality
spain country

相关问题 更多 >