从 Python 中的 URL 读取图像数据
使用本地文件时,读取图像数据非常简单。然而,当处理远程 URL 时,过程变得更加复杂。在本文中,我们将探讨如何使用 Python 高效地读取和操作 URL 中的图像数据。
最初尝试使用 urlopen(url) 直接打开图像对象,但由于缺少eek() 功能而失败。此外,尝试使用 urlopen(url).read() 打开图像也会遇到问题。
为了解决这个问题,Python 3 利用 BytesIO 类提供了更优雅的解决方案:
from PIL import Image import requests from io import BytesIO response = requests.get(url) img = Image.open(BytesIO(response.content))
这种方法消除了对中间临时文件的需要,简化了流程并提高了效率。 requests 库用于检索图像数据,而 BytesIO 提供类文件对象的内存中表示。这使得 PIL 能够直接操作内存中的图像数据,绕过本地文件存储的需要。
以上是如何在 Python 中从 URL 读取图像数据?的详细内容。更多信息请关注PHP中文网其他相关文章!