python使用Tkinter显示网络图片的方法


Posted in Python onApril 24, 2015

本文实例讲述了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的Tornado框架实现数据可视化的教程
May 02 Python
浅谈Python中的数据类型
May 05 Python
python实用代码片段收集贴
Jun 03 Python
python网络爬虫学习笔记(1)
Apr 09 Python
django反向解析和正向解析的方式
Jun 05 Python
Selenium定时刷新网页的实现代码
Oct 31 Python
pycharm debug功能实现跳到循环末尾的方法
Nov 29 Python
python学习--使用QQ邮箱发送邮件代码实例
Apr 16 Python
基于django和dropzone.js实现上传文件
Nov 24 Python
Python用户自定义异常的实现
Dec 25 Python
基于Python的EasyGUI学习实践
May 07 Python
pyqt5打包成exe可执行文件的方法
May 14 Python
Python中最常用的操作列表的几种方法归纳
Apr 24 #Python
在Python中使用lambda高效操作列表的教程
Apr 24 #Python
使用Python的判断语句模拟三目运算
Apr 24 #Python
Python的字典和列表的使用中一些需要注意的地方
Apr 24 #Python
整理Python最基本的操作字典的方法
Apr 24 #Python
编写Python脚本使得web页面上的代码高亮显示
Apr 24 #Python
Python UnicodeEncodeError: 'gbk' codec can't encode character 解决方法
Apr 24 #Python
You might like
php将access数据库转换到mysql数据库的方法
2014/12/24 PHP
php中session_id()函数详细介绍,会话id生成过程及session id长度
2015/09/23 PHP
CI(Codeigniter)的Setting增强配置类实例
2016/01/06 PHP
php is_executable判断给定文件名是否可执行实例
2016/09/26 PHP
php封装的图片(缩略图)处理类完整实例
2016/10/19 PHP
PHP实现的mysql操作类【MySQL与MySQLi方式】
2017/10/07 PHP
php使用fputcsv实现大数据的导出操作详解
2020/02/27 PHP
js弹出层之1:JQuery.Boxy (二)
2011/10/06 Javascript
js动态移动滚动条至底部示例代码
2014/04/24 Javascript
2则自己编写的jQuery特效分享
2015/02/26 Javascript
js实现发送验证码后的倒计时功能
2015/05/28 Javascript
Jquery解析json字符串及json数组的方法
2015/05/29 Javascript
怎么通过onclick事件获取js函数返回值(代码少)
2015/07/28 Javascript
three.js中文文档学习之如何本地运行详解
2017/11/20 Javascript
JS实现的JSON序列化操作简单示例
2018/07/02 Javascript
Nodejs环境实现socket通信过程解析
2020/07/03 NodeJs
构建一个JavaScript插件系统
2020/10/20 Javascript
[02:15]你好,这就是DOTA!
2015/08/05 DOTA
Python 条件判断的缩写方法
2008/09/06 Python
利用Python中的mock库对Python代码进行模拟测试
2015/04/16 Python
Python实现的使用telnet登陆聊天室实例
2015/06/17 Python
centos6.7安装python2.7.11的具体方法
2017/01/16 Python
Django数据库表反向生成实例解析
2018/02/06 Python
利用Pyhton中的requests包进行网页访问测试的方法
2018/12/26 Python
python 实现将多条曲线画在一幅图上的方法
2019/07/07 Python
python3 中时间戳、时间、日期的转换和加减操作
2020/07/14 Python
解决python3中os.popen()出错的问题
2020/11/19 Python
HTML5中Canvas与SVG的画图原理比较
2013/01/16 HTML / CSS
HTML5制作酷炫音频播放器插件图文教程
2014/12/30 HTML / CSS
怎样填写就业意向
2014/04/02 职场文书
最美乡村医生事迹材料
2014/06/02 职场文书
公务员中国梦演讲稿
2014/08/19 职场文书
教师文明餐桌光盘行动倡议书
2015/04/28 职场文书
运动会运动员赞词
2015/07/22 职场文书
golang switch语句的灵活写法介绍
2021/05/06 Golang
Win11安全功能升级:内置防网络钓鱼功能
2022/04/08 数码科技