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 相关文章推荐
linux系统使用python获取cpu信息脚本分享
Jan 15 Python
介绍Python的Django框架中的QuerySets
Apr 20 Python
python数据结构之图深度优先和广度优先实例详解
Jul 08 Python
分享几道你可能遇到的python面试题
Jul 24 Python
python批量实现Word文件转换为PDF文件
Mar 15 Python
利用Anaconda简单安装scrapy框架的方法
Jun 13 Python
python实现两个文件夹的同步
Aug 29 Python
Python3批量移动指定文件到指定文件夹方法示例
Sep 02 Python
使用Python的Turtle绘制哆啦A梦实例
Nov 21 Python
Django使用Celery加redis执行异步任务的实例内容
Feb 20 Python
Python 线性回归分析以及评价指标详解
Apr 02 Python
用Python将库打包发布到pypi
Apr 13 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
php5 pdo新改动加载注意事项
2008/09/11 PHP
php数组函数序列之array_flip() 将数组键名与值对调
2011/11/07 PHP
使用PHP求两个文件的相对路径
2013/06/20 PHP
微信公众平台开发教程③ PHP实现微信公众号支付功能图文详解
2019/04/10 PHP
PHP常见过waf webshell以及最简单的检测方法
2019/05/21 PHP
关于javascript function对象那些迷惑分析
2011/10/24 Javascript
js获取事件源及触发该事件的对象
2013/10/24 Javascript
如何在JavaScript中实现私有属性的写类方式(二)
2013/12/04 Javascript
jQuery中:radio选择器用法实例
2015/01/03 Javascript
详解JavaScript的Date对象(制作简易钟表)
2020/04/07 Javascript
使用Browserify来实现CommonJS的浏览器加载方法
2017/05/14 Javascript
你可能不知道的前端算法之文字避让(inMap)
2018/01/12 Javascript
JS实现的简单折叠展开动画效果示例
2018/04/28 Javascript
vue 解决循环引用组件报错的问题
2018/09/06 Javascript
你应该了解的JavaScript Array.map()五种用途小结
2018/11/14 Javascript
JavaScript中callee和caller的区别与用法实例分析
2019/06/28 Javascript
在SSM框架下用laypage和ajax实现分页和数据交互的方法
2019/09/27 Javascript
微信小程序scroll-view点击项自动居中效果的实现
2020/03/25 Javascript
探索node之事件循环的实现
2020/10/30 Javascript
Webpack的Loader和Plugin的区别
2020/11/09 Javascript
[01:01:24]DOTA2上海特级锦标赛A组败者赛 EHOME VS CDEC第三局
2016/02/25 DOTA
浅谈Pycharm中的Python Console与Terminal
2019/01/17 Python
Python实现线性插值和三次样条插值的示例代码
2019/11/13 Python
pandas中ix的使用详细讲解
2020/03/09 Python
基于python实现把json数据转换成Excel表格
2020/05/07 Python
python文件及目录操作代码汇总
2020/07/08 Python
Python Matplotlib绘图基础知识代码解析
2020/08/31 Python
移动端html5 meta标签的神奇功效
2016/01/06 HTML / CSS
Nike荷兰官方网站:Nike.com (NL)
2018/04/19 全球购物
旷课检讨书2000字
2014/01/14 职场文书
学生打架检讨书大全
2014/01/23 职场文书
大学生预备党员自我评价
2015/03/04 职场文书
公司会议开幕词
2016/03/03 职场文书
jquery插件实现悬浮的菜单
2021/04/24 jQuery
python中urllib包的网络请求教程
2022/04/19 Python
Python中使用tkFileDialog实现文件选择、保存和路径选择
2022/05/20 Python