Google方向API:不将地址翻译成英文

时间:2014-11-25 10:47:52

标签: python google-direction

我正在尝试使用Google Direction API服务。我的地址是中文,不是英文。如果我直接在浏览器中输入网址,Google会返回中文地址。但是,如果我在Python程序中包含URL,Google会将中文地址翻译成英文。

在下文中,变量abcd是四个中文地址。

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 个答案:

答案 0 :(得分: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'))