【发布时间】:2019-09-27 00:12:56
【问题描述】:
我想在 python 中使用 selenium 逐像素比较两个图像(.png 格式)。或者我怎么能用枕头库来做呢。
我有一个基本图像,我通过截取网页的屏幕截图来获得比较图像。我想比较这两个图像并断言它们是相等的。我该怎么做。
以下是我尝试过的:
def assert_images_are_equal(base_image, compare_image):
with open(base_image, 'rb') as f1, open(compare_image, 'rb') as f2:
base_image_contents = f1.read()
compare_image_contents = f2.read()
assert base_image_contents == compare_image_contents
但这并不总是有效。我想逐像素比较。有人可以使用枕头库或 PIL 以外的任何其他库来帮助我吗?谢谢。
【问题讨论】:
-
PIL 和枕头有一个共同的祖先。如果你想要枕头,为什么要标记硒?你能看看标签吗?
-
我认为你想从根本上解决整个问题。你确定两张图片的分辨率一样吗?您对绝对相似性感兴趣吗?或者如果它们有些相似,您会感兴趣吗?
-
我是编程新手。我想断言两个图像是相等的,并且我在 python 中使用带有 selenium 的机器人框架。我如何断言两个图像相等...确定图像是否相似的最常见方法是什么。谢谢
-
不使用python,只使用selenium grid你可以做到这一点吗?如果你有兴趣我可以分享工具
-
您可以使用基于 ImageMagick 的 Python Wand。它具有用于两个图像的逐像素匹配的比较功能。或者使用 OpenCV 模板匹配。
标签: python python-imaging-library