【问题标题】:How to tell a null image from a valid image?如何从有效图像中区分空图像?
【发布时间】:2021-03-24 16:09:49
【问题描述】:

我测试一个代码,其输出之一是图像。 我需要确保图像具有有效的输出,但如果它是 NULL,我似乎无法从检查部分的有效图像中分辨出来。

我能说的唯一区别是一个名为 src 的字段,其中空图像可能如下所示:

<img src=data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAjwAAAGQCAIAAAAlWy3FAAAABmJLR0QA/wD/AP+gvaeTAAAF+klEQVR4nO3VQQ0AIBDAMMC/58MCP7KkVbDf9swsACg4vwMA4JVpAZBhWgBkmBYAGaYFQIZpAZBhWgBkmBYAGaYFQIZpAZBhWgBkmBYAGaYFQIZpAZBhWgBkmBYAGaYFQIZpAZBhWgBkmBYAGaYFQIZpAZBhWgBkmBYAGaYFQIZpAZBhWgBkmBYAGaYFQIZpAZBhWgBkmBYAGaYFQIZpAZBhWgBkmBYAGaYFQIZpAZBhWgBkmBYAGaYFQIZpAZBhWgBkmBYAGaYFQIZpAZBhWgBkmBYAGaYFQIZpAZBhWgBkmBYAGaYFQIZpAZBhWgBkmBYAGaYFQIZpAZBhWgBkmBYAGaYFQIZpAZBhWgBkmBYAGaYFQIZpAZBhWgBkmBYAGaYFQIZpAZBhWgBkmBYAGaYFQIZpAZBhWgBkmBYAGaYFQIZpAZBhWgBkmBYAGaYFQIZpAZBhWgBkmBYAGaYFQIZpAZBhWgBkmBYAGaYFQIZpAZBhWgBkmBYAGaYFQIZpAZBhWgBkmBYAGaYFQIZpAZBhWgBkmBYAGaYFQIZpAZBhWgBkmBYAGaYFQIZpAZBhWgBkmBYAGaYFQIZpAZBhWgBkmBYAGaYFQIZpAZBhWgBkmBYAGaYFQIZpAZBhWgBkmBYAGaYFQIZpAZBhWgBkmBYAGaYFQIZpAZBhWgBkmBYAGaYFQIZpAZBhWgBkmBYAGaYFQIZpAZBhWgBkmBYAGaYFQIZpAZBhWgBkmBYAGaYFQIZpAZBhWgBkmBYAGaYFQIZpAZBhWgBkmBYAGaYFQIZpAZBhWgBkmBYAGaYFQIZpAZBhWgBkmBYAGaYFQIZpAZBhWgBkmBYAGaYFQIZpAZBhWgBkmBYAGaYFQIZpAZBhWgBkmBYAGaYFQIZpAZBhWgBkmBYAGaYFQIZpAZBhWgBkmBYAGaYFQIZpAZBhWgBkmBYAGaYFQIZpAZBhWgBkmBYAGaYFQIZpAZBhWgBkmBYAGaYFQIZpAZBhWgBkmBYAGaYFQIZpAZBhWgBkmBYAGaYFQIZpAZBhWgBkmBYAGaYFQIZpAZBhWgBkmBYAGaYFQIZpAZBhWgBkmBYAGaYFQIZpAZBhWgBkmBYAGaYFQIZpAZBhWgBkmBYAGaYFQIZpAZBhWgBkmBYAGaYFQIZpAZBhWgBkmBYAGaYFQIZpAZBhWgBkmBYAGaYFQIZpAZBhWgBkmBYAGaYFQIZpAZBhWgBkmBYAGaYFQIZpAZBhWgBkmBYAGaYFQIZpAZBhWgBkmBYAGaYFQIZpAZBhWgBkmBYAGaYFQIZpAZBhWgBkmBYAGaYFQIZpAZBhWgBkmBYAGaYFQIZpAZBhWgBkmBYAGaYFQIZpAZBhWgBkmBYAGaYFQIZpAZBhWgBkmBYAGaYFQIZpAZBhWgBkmBYAGaYFQIZpAZBhWgBkmBYAGaYFQIZpAZBhWgBkmBYAGaYFQIZpAZBhWgBkmBYAGaYFQIZpAZBhWgBkmBYAGaYFQIZpAZBhWgBkmBYAGaYFQIZpAZBhWgBkmBYAGaYFQIZpAZBhWgBkmBYAGaYFQIZpAZBhWgBkmBYAGaYFQIZpAZBhWgBkmBYAGaYFQIZpAZBhWgBkmBYAGaYFQIZpAZBhWgBkmBYAGaYFQIZpAZBhWgBkmBYAGaYFQIZpAZBhWgBkmBYAGaYFQIZpAZBhWgBkmBYAGaYFQIZpAZBhWgBkmBYAGaYFQIZpAZBhWgBkmBYAGaYFQIZpAZBhWgBkmBYAGaYFQIZpAZBhWgBkmBYAGaYFQIZpAZBhWgBkmBYAGaYFQIZpAZBhWgBkmBYAGaYFQIZpAZBhWgBkmBYAGaYFQIZpAZBhWgBkmBYAGaYFQIZpAZBhWgBkmBYAGaYFQIZpAZBhWgBkmBYAGaYFQIZpAZBhWgBkmBYAGaYFQIZpAZBhWgBkmBYAGaYFQIZpAZBhWgBkmBYAGaYFQIZpAZBhWgBkmBYAGaYFQIZpAZBhWgBkmBYAGaYFQIZpAZBhWgBkmBYAGaYFQIZpAZBhWgBkmBYAGaYFQIZpAZBhWgBkXCWIBh2WAyGkAAAAAElFTkSuQmCC width="572" height="400">

而对于有效图像,src 字段要长得多。 是否有 python 命令通过链接分析图像以查看它是否太...“白色”?

另外,我确实注意到在我刚刚在这里引用的字段中有一个重复的子字符串“pAZBhWgBkmBYAGaYFQIZ”。这很重要吗?

【问题讨论】:

  • 更大的问题是 src methinks 周围缺少引号...您可以从 base64 文本创建图像对象并检查各种内容。 (大小可能是一个很好的指标...但 null 很容易捕捉)
  • 按照大多数标准,这是一张“有效”的图片;您如何准确定义“空图像”?

标签: python html selenium src


【解决方案1】:

如果您只想检查图像当前是否存在于特定 URL,有一种非常简单的方法来检查。

from urllib.request import urlopen
import requests
image_formats = ("image/png", "image/jpeg", "image/gif")
url = "http://localhost/img.png"
site = urlopen(url)
meta = site.info()  # get header of the http request
if meta["content-type"] in image_formats:  
    print("it is an image")

更多此类解决方案/替代方案可以在check if a URL to an image is up and exists in Python中找到

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-07-10
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多