使用Python 3.4加载到tkinter时出现错误

使用Python 3.4加载到tkinter时出现错误,python,python-3.x,tkinter,python-imaging-library,pillow,Python,Python 3.x,Tkinter,Python Imaging Library,Pillow,我正在从服务器加载一个图像,当我在数据上使用时,我不断地得到这个错误 这是我的密码: import tkinter as tk from PIL import ImageTk root = tk.Tk() import urllib.request URL = "https://encrypted-tbn2.gstatic.com/images?q=tbn:ANd9GcSm7eLMSp4NbjGwkjU3rPokWaQI6224lQCR1qIIGIfldm4M0TgY0JKTGQLQ" u =

我正在从服务器加载一个图像,当我在数据上使用时,我不断地得到这个错误

这是我的密码:

import tkinter as tk
from PIL import ImageTk
root = tk.Tk()
import urllib.request
URL = "https://encrypted-tbn2.gstatic.com/images?q=tbn:ANd9GcSm7eLMSp4NbjGwkjU3rPokWaQI6224lQCR1qIIGIfldm4M0TgY0JKTGQLQ"
u = urllib.request.urlopen(URL)
raw_data = u.read()
u.close()
import base64
b64_data = base64.encodestring(raw_data)
image = ImageTk.PhotoImage(data=b64_data)
label = tk.Label(image=image)
label.pack()
我得到这个错误:

Traceback (most recent call last):
   File "C:/testt.py", line 11, in <module>
image = ImageTk.PhotoImage(data=b64_data)
   File "C:\Python34\lib\site-packages\PIL\ImageTk.py", line 88, in __init__
image = Image.open(BytesIO(kw["data"]))
   File "C:\Python34\lib\site-packages\PIL\Image.py", line 2287, in open
   % (filename if filename else fp))
OSError: cannot identify image file <_io.BytesIO object at 0x0000000003152048>
回溯(最近一次呼叫最后一次):
文件“C:/testt.py”,第11行,在
image=ImageTk.PhotoImage(数据=b64_数据)
文件“C:\Python34\lib\site packages\PIL\ImageTk.py”,第88行,在\uuu init中__
image=image.open(字节数(kw[“数据”]))
打开文件“C:\Python34\lib\site packages\PIL\Image.py”,第2287行
%(如果文件名为fp,则为文件名)
OSError:无法识别图像文件

如果删除了部分代码,则代码可以正常工作。不需要base64编码:

import tkinter as tk
from PIL import ImageTk
import urllib.request

root = tk.Tk()

URL = "https://encrypted-tbn2.gstatic.com/images?q=tbn:ANd9GcSm7eLMSp4NbjGwkjU3rPokWaQI6224lQCR1qIIGIfldm4M0TgY0JKTGQLQ"
u = urllib.request.urlopen(URL)
raw_data = u.read()
u.close()

image = ImageTk.PhotoImage(data=raw_data)
label = tk.Label(image=image)
label.pack()
tk.mainloop()
结果:


您发布的代码将不会run@PadraicCunningham嗯,我更新了我的代码,我想在复制代码时出现了一些错误,对此我很抱歉