Tenho uma lista com vários milhões de nomes de lugares que vêm dos perfis do Flickr. Os usuários forneceram esses nomes de local como texto livre; portanto, eles ficam assim:
Roma, Italy
Kennesaw, USA
Saginaw, MI
Rucker, Missouri, USA
Melbourne, Australia
Madrid, Spain
live in Sarnia / work in London, Canada
Valladolid, España
Italia
West Hollywood, United States
Eu quero desambiguar esses nomes de lugares. Estou ciente de que, em alguns casos, não há nenhuma solução direta para essa solução, mas estou disposto a viver com alguma falsa desambiguação e com "sem resposta" para alguns dos lugares. Se um nome de local corresponder ao nome de várias cidades, desejo atribuir esse local à maior cidade à qual ele corresponder.
A API do localizador de local do Yahoo seria uma boa solução para esse problema, mas eu precisaria fazer muitas chamadas de API para passar pela minha lista, então eu gostaria de uma solução local (por exemplo, uma que não dependa de uma API remota) . Alguém conhece alguma biblioteca python que faça esse tipo de coisa ou qualquer outra solução local?
(Eu também fiz essa pergunta no stackoverflow .)