2014-11-25 3 views
1

Я пытаюсь использовать службу API Google Direction. Мои адреса находятся на китайском, а не на английском. Если я укажу URL прямо в браузере, Google вернет китайские адреса. Однако, если я включу URL-адрес в программу Python, Google переведет китайские адреса на английский язык.API-интерфейс Google: не переводить адреса на английский язык

В следующей таблице перечислены переменные a, b, c и d - это четыре китайских адреса.

from urllib.parse import quote 
from urllib.request import urlopen 
import json 

url = 'http://maps.googleapis.com/maps/api/directions/json?' 
a = '台中市霧峰區吉峰東路168號' 
b = '桃園機場' 
c = '台中市中區自由路一段1號' 
d = '台中市大里區國光路一段1號' 
url = (url + 
     'origin=' + quote(a) + 
     '&destination=' + quote(b) + 
     '&waypoints=optimize:true|' + quote(c) + '|' + quote(d) + '&sensor=false') 

print(url) 
direction = urlopen(url).read().decode('utf-8') 

Адреса в direction все переведены на английский язык адреса. Как я могу запретить Google переводить адреса?

ответ

1

Вы можете использовать параметр language.

См. documentation.

req_url = ("{}origin={}&destination={}&waypoints=optimize:true|{}|{}" 
       "&sensor=false&language=zh-TW".format(
        url, quote(a), quote(b), quote(c), quote(d))) 

print(req_url) 
direction = urlopen(req_url).read().decode('utf-8') 


with open('result.txt', 'w') as ii: 
    ii.write(direction.encode('utf-8')) 
+1

Отлично, спасибо большое. –