Python 是否有类似于 PHP 中 getimagesize 的函数?
我搜索了一段时间,有一个函数调用 get_image_dimensions(),但是,据我了解,它适用于下载的或本地的图像。那么,有没有像 PHP 中的 getimagesize 这样的函数或解决方案,我们可以通过 URL 而不是本地路径来获取图像的尺寸?
I have search for a while, and there is a function call get_image_dimensions(), however, as to my understanding, it works for the images which are downloaded or say local. So, any functions or solution like getimagesize in PHP, that we can just get the dimension of an image via URL, instead of path to local?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
使用Python图像库(PIL)
如果你有一个url,通过urlopen打开它并将文件对象传递给Image.open
Using the python image library (PIL)
If you have an url, open it via urlopen and pass the file object to Image.open
PHP 可以像打开文件一样打开 URL。这可能是一个福音(如您的情况),也可能是一个祸根(如远程文件包含漏洞)。
Python 选择明确表示文件就是文件,远程资源(例如 URL)就是远程资源。
如果您需要一些实用程序函数来从远程资源获取图像大小,您可能需要为本地资源编写一个包装器。通常只需要读取大约 4096 字节即可确定图像大小。
是的,需要做更多的工作,但是没有 PHP 那样的魔力。
PHP can open a URL as it does a file. This could be a boon (as in your case), or a bane (as in remote file inclusion vulnerability).
Python opts to be explicit in that a file is a file, and a remote resource (URL, for example), is a remote one.
If you need some utility function to get image size from a remote resource, you probably need to write a wrapper to the local one. Usually you only need to read about 4096 bytes to determine the image size.
A little more work, yes, but there's no magic like in PHP.