作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我正在尝试使用 OpenCV 和 selenium 将 html 中的特定元素保存为图像文件。但无法保存文件。
from selenium import webdriver
import cv2
import numpy as np
browser = webdriver.Firefox()
browser.get(<URl with image>)
# Element to be saved
element = browser.find_element_by_id(<id of element>)
png = browser.get_screenshot_as_png()
location = element.location
size = element.size
nparr = np.frombuffer(png, np.uint8)
img = cv2.imdecode(nparr, cv2.IMREAD_COLOR)
left = location['x']
top = location['y']
right = location['x'] + size['width']
bottom = location['y'] + size['height']
im = img[left:right, top:bottom]
cv2.imwrite('filename.png',im)
当前运行此脚本,'filename.png'
中没有图像数据。
最佳答案
正如@Zdar 所提到的,我正在编写以下解决方案:
from selenium import webdriver
import cv2
import numpy as np
browser = webdriver.Firefox()
browser.get(<URl with image>)
# Element to be saved
element = browser.find_element_by_id(<id of element>)
png = browser.get_screenshot_as_png()
location = element.location
size = element.size
nparr = np.frombuffer(png, np.uint8)
img = cv2.imdecode(nparr, cv2.IMREAD_COLOR)
left = location['x']
top = location['y']
right = location['x'] + size['width']
bottom = location['y'] + size['height']
#im = img[left:right, top:bottom]
im = img[top:int(bottom), left:int(right)]
cv2.imwrite('filename.png',im)
关于python - 如何在 python 中保存来自 selenium 和 opencv 的部分屏幕截图,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50849686/
我是一名优秀的程序员,十分优秀!