gpt4 book ai didi

python - 如何显示来自网络的图像?

转载 作者:太空狗 更新时间:2023-10-29 22:04:28 26 4
gpt4 key购买 nike

我用 python 编写了这个简单的脚本:

import gtk

window = gtk.Window()
window.set_size_request(800, 700)

window.show()
gtk.main()

现在我想在此窗口中加载来自网络(而不是来 self 的 PC)的图像,如下所示:

http://www.dailygalaxy.com/photos/uncategorized/2007/05/05/planet_x.jpg

我该怎么做?

附言我不想下载图像!我只想从 URL 加载图像。

最佳答案

这从 url 下载图像,但将数据写入 gtk.gdk.Pixbuf而不是文件:

import pygtk
pygtk.require('2.0')
import gtk
import urllib2

class MainWin:

def destroy(self, widget, data=None):
print "destroy signal occurred"
gtk.main_quit()

def __init__(self):
self.window = gtk.Window(gtk.WINDOW_TOPLEVEL)
self.window.connect("destroy", self.destroy)
self.window.set_border_width(10)
self.image=gtk.Image()
response=urllib2.urlopen(
'http://www.dailygalaxy.com/photos/uncategorized/2007/05/05/planet_x.jpg')
loader=gtk.gdk.PixbufLoader()
loader.write(response.read())
loader.close()
self.image.set_from_pixbuf(loader.get_pixbuf())
# This does the same thing, but by saving to a file
# fname='/tmp/planet_x.jpg'
# with open(fname,'w') as f:
# f.write(response.read())
# self.image.set_from_file(fname)
self.window.add(self.image)
self.image.show()
self.window.show()

def main(self):
gtk.main()

if __name__ == "__main__":
MainWin().main()

关于python - 如何显示来自网络的图像?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3962180/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com