如何超清截屏?

2023-06-21 15:18:59 +08:00
 clockzhong

最近在用 Pyautogui + opencv 做一个自动化脚本,在识别桌面上的图标时总是识别不准。感觉微信和 windows 原生截屏都压缩严重(截屏部分已经很精准了,基本没有冗余空白区域),有没有什么工具或者方法让截屏不被压缩或者有没有比 pyautogui 更好的解决方案? location = pyautogui.locateCenterOnScreen(img, confidence=0.9)

2369 次点击
所在节点    Python
6 条回复
qq78660651
2023-06-21 17:35:35 +08:00
网易的 airtest ?
clockzhong
2023-06-21 17:39:03 +08:00
@qq78660651 看起来好像不错,去试试先,谢谢
JimmyB
2023-06-21 17:52:15 +08:00
你是用 mac 吗
zhengsidao
2023-06-21 17:54:31 +08:00
Snipaste 这个不管是 win 还是 mac 都非常好用,很清晰
liantian
2023-06-25 02:24:07 +08:00
penll
2023-06-25 10:33:42 +08:00
import mss
from PIL import Image
import os

class CaptureHelper:

def screenshot(self, screen_idex, target_path = "_temp_capture_target_window.png"):
with mss.mss() as sct:
target_monitor = sct.monitors[screen_idex + 1]

root_path = 'TODO:获取保存路径'
save_path = os.path.join(root_path, "_temp", target_path)

img = sct.grab(target_monitor)
pil_image = Image.frombytes("RGB", img.size, img.bgra, "raw", "BGRX")
pil_image.save(save_path)# cv2.imwrite(save_path, img) opencv 不支持中文路径

return save_path



--------------
我这边简单写的。支持多显示器。
注意:opencv 的保持不支持中文路径,所以,用 pillow 的保存

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://ex.noerr.eu.org/t/950657

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX