【发布时间】:2015-09-06 23:09:33
【问题描述】:
我目前在尝试从 api 获取请求将数据写入文件时遇到问题。错误是以下消息:“UnicodeEncodeError: 'ascii' codec can't encode character u'\xe2' in position 1: ordinal not in range(128)”
我知道这意味着我必须将文本从 ascii 转换为 utf-8,但我不知道该怎么做。这是我到目前为止的代码
import urllib2
import json
def moviesearch(query):
title = query
api_key = ""
f = open('movie_ID_name.txt', 'w')
for i in range(1,15,1):
api_key = "http://api.themoviedb.org/3/search/movie?api_key=b4a53d5c860f2d09852271d1278bec89&query="+title+"&page="+str(i)
json_obj = urllib2.urlopen(api_key)
json_obj.encode('utf-8')
data = json.load(json_obj)
for item in data['results']:
f.write("<"+str(item['id'])+", "+str(item['title'])+'>\n')
f.close()
moviesearch("life")
当我运行它时,我收到以下错误:AttributeError: addinfourl instance has no attribute 'encode'
我能做些什么来解决这个问题? 提前致谢!
【问题讨论】: