我正在尝试从链接中删除图片并将其放入图像文件中。请求响应返回一个字节流。所以我正在使用 decode('utf-8') 转换为 unicode 流但是,我面临以下错误:
打印(信息.解码(('utf-8')))
UnicodeDecodeError: 'utf-8' 编解码器无法解码位置 0 中的字节 0xff:起始字节无效
from urllib import request
img = request.urlopen('http://www.py4inf.com/cover.jpg')
fhand = open('cover.jpg', 'w')
size = 0
while True:
info = img.read(100000)
if len(info) < 1 : break
size = size + len(info)
print (info.decode(('utf-8')))
fhand.write(info.decode(('utf-8')))
print (size,'characters copied.')
fhand.close()
请让我知道我该如何继续。谢谢。
最佳答案
文件应以二进制模式打开,然后您可以逐字节复制流。由于 shutil
已经有一个方便的辅助实用程序,您可以
import shutil
import os
from urllib import request
img = request.urlopen('http://www.py4inf.com/cover.jpg')
with open('cover.jpg', 'wb') as fhand:
shutil.copyfileobj(img, fhand)
print(os.stat('cover.jpg').st_size, 'characters copied')
关于python - Unicode解码错误: 'utf-8' codec can't decode byte 0xff in position 0: invalid start byte,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35184692/