答案 0 :(得分:5)
看看GeoNames。您可以下载(几乎)他们拥有的所有内容并创建您自己的本地数据库,或者您可以使用他们的REST Webservice API。作为额外的奖励,他们甚至已经制作了client libraries。
答案 1 :(得分:0)
如果您只是希望用户能够选择位置,则可以使用基于搜索的界面,例如OSM Nominatim。您可以下载数据并自行安装,或者只使用他们的Web服务(根据使用限制)。实际上,您可以下载Nominatim数据库并编写不同的API以使用菜单向下钻取。