我正在嘗試編寫地理編碼腳本。有一個丹麥語(官方和免費)的網絡服務,我在URL中輸入地址,並獲取包含所有必需信息的json文件。使用Python進行編碼 - 將非英文字符轉換爲URL
我找不到正確的方式來翻譯我的丹麥字符(æ,ø,å),當他們進入一個URL。 在這個例子中,我包含了兩個不同的網址(包含地址信息)。 其中一條街道是'Byvej',效果很好,我得到了我期望在IDLE中打印的結果。 (我也可以獲得經緯度)。
另一方面,街道是'Bispegårdsvej'沒有提供任何空閒。返回的列表是空的。 該網址在瀏覽器中正常工作,我知道,我需要添加一些東西到腳本中,我找不到任何有效的東西。
我使用的ActivePython 2.7.2.5 感謝, 湯米
# -*- coding: cp1252 -*-
import urllib2
import json
#url='http://geo.oiorest.dk/adresser.json?postnr=4682&vejnavn=Byvej&husnr=31'
url='http://geo.oiorest.dk/adresser.json?postnr=4320&vejnavn=Bispegårdsvej&husnr=2'
try:
data = urllib2.urlopen(url).read()
adresser = json.loads(data)
for adresse in adresser:
print "%s %s, %s %s" % \
(adresse['vejnavn']['navn'],
adresse['husnr'],
adresse['postnummer']['nr'],
adresse['postnummer']['navn'])
except urllib2.HTTPError, e:
print "HTTP error: %d" % e.code
except urllib2.URLError, e:
print "Network error: %s" % e.reason.args[1]