python使用Tkinter显示网络图片的方法
程序员文章站
2023-11-26 13:50:28
本文实例讲述了python使用Tkinter显示网络图片的方法。分享给大家供大家参考。具体实现方法如下:
''' tk_image_view_url_io.py...
本文实例讲述了python使用Tkinter显示网络图片的方法。分享给大家供大家参考。具体实现方法如下:
''' tk_image_view_url_io.py display an image from a URL using Tkinter, PIL and data_stream tested with Python27 and Python33 by vegaseat 01mar2013 ''' import io # allows for image formats other than gif from PIL import Image, ImageTk try: # Python2 import Tkinter as tk from urllib2 import urlopen except ImportError: # Python3 import tkinter as tk from urllib.request import urlopen root = 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 file data_stream = io.BytesIO(image_bytes) # open as a PIL image object pil_image = Image.open(data_stream) # optionally show image info # get the size of the image w, h = pil_image.size # split off image file name fname = url.split('/')[-1] sf = "{} ({}x{})".format(fname, w, h) root.title(sf) # convert PIL image object to Tkinter PhotoImage object tk_image = ImageTk.PhotoImage(pil_image) # put the image on a typical widget label = tk.Label(root, image=tk_image, bg='brown') label.pack(padx=5, pady=5) root.mainloop()
希望本文所述对大家的Python程序设计有所帮助。
上一篇: 讲解Python中的递归函数
下一篇: python求斐波那契数列示例分享