python2.7を使い、下記コードを入力すると「UnicodeEncodeError: 'ascii' codec can't encode characters in position 27-32: ordinal not in range(128)」というエラーが表示され、プログラムがとまります。test.txtの中身は下記にあります。対処方法を教えていただけないでしょうか。よろしくお願いします。
川口駅
赤羽駅
-- coding: utf-8 --
import requests
import json
from time import sleep
wait_time = 0.3 # (sec)
base_url = 'https://maps.googleapis.com/maps/api/geocode/json?language=ja&address={}&key=***'
headers = {'content-type': 'application/json'}
queries = []
with open(r'C:\work\test.txt', 'r') as f:
queries = f.readlines()
for q in queries:
q = q.strip()
url = base_url.format(q)
r = requests.get(url, headers=headers)
data = r.json()
if 'results' in data and len(data['results']) > 0 and 'formatted_address' in data['results'][0]:
print '{}@{}@{}@{}'.format(
q,
data['results'][0]['formatted_address'].encode('utf-8'),
data['results'][0]['geometry']['location']['lat'],
data['results'][0]['geometry']['location']['lng']
)
else:
print '{}@ @ @ '.format(q)
sleep(wait_time)
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2019/02/18 09:31
2019/02/18 12:04
2019/02/18 12:38
2019/02/18 13:32
2019/02/18 21:11
2019/02/18 23:05
2019/02/19 00:31