python通过Tkinter显示网络图片,,''' tk_image


''' tk_image_view_url_io.pydisplay an image from a URL using Tkinter, PIL and data_streamtested with Python27 and Python33  by  vegaseat  01mar2013'''import io# allows for image formats other than giffrom PIL import Image, ImageTktry:    # Python2    import Tkinter as tk    from urllib2 import urlopenexcept ImportError:    # Python3    import tkinter as tk    from urllib.request import urlopenroot = tk.Tk()# find yourself a picture on an internet web page you like# (right click on the picture, under properties copy the address)#url = "http://www.google.com/intl/en/images/logo.gif"# or use image previously downloaded to tinypic.com#url = "http://i48.tinypic.com/w6sjn6.jpg"url = "http://i50.tinypic.com/34g8vo5.jpg"image_bytes = urlopen(url).read()# internal data filedata_stream = io.BytesIO(image_bytes)# open as a PIL image objectpil_image = Image.open(data_stream)# optionally show image info# get the size of the imagew, h = pil_image.size# split off image file namefname = url.split('/')[-1]sf = "{} ({}x{})".format(fname, w, h)root.title(sf)# convert PIL image object to Tkinter PhotoImage objecttk_image = ImageTk.PhotoImage(pil_image)# put the image on a typical widgetlabel = tk.Label(root, image=tk_image, bg='brown')label.pack(padx=5, pady=5)root.mainloop()

评论关闭