# PyQt5加载网络图片
import sys
from PyQt5.QtWidgets import QApplication
from PyQt5.QtWidgets import (QWidget, QLabel, QVBoxLayout)
from PyQt5.QtGui import QPixmap
class webImg:
pass
if __name__ == '__main__':
app = QApplication(sys.argv)
import requests
url='http://XXXXX/XXX.jpg'
req = requests.get(url) # 发送图片请求
code_pic = req.content #直接存入内存
print(type(code_pic)) # 查看返回类型<class 'bytes'>
print(dir(req)) # dir函数传入数据类型返回该数据类型的所有内置方法
#思考一下,是否可以直接调用本地png?
#具体如下:
# with open('code_pic.png',mode='wb') as f: # 保存到硬盘
# f.write(code_pic)
# with open('code_pic.png',mode='rb') as f: # 读取到内存
# code_pic = f.read()
photo = QPixmap() #定义photo为pixmap类
# photo.loadFromData(req.content, "JPG")
photo.loadFromData(code_pic) # 把二进制转换成qpixmap
label= QLabel()
label.setPixmap(photo) #这里直接调用qpixmap
widget = QWidget()
layout =QVBoxLayout()
widget.setLayout(layout)
layout.addWidget(label)
widget.show()
sys.exit(app.exec_())
PyQt5 直接调用网络图片插入界面