You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何无需保存和打开图片即可使用mss与pytesseract?

优化后的无文件读写版本代码

没问题!咱们直接跳过保存图片到本地这一步,直接把mss捕获的图像数据传给Tesseract处理,这样既高效又能满足你的需求。修改后的代码如下:

from PIL import Image
import pytesseract
import mss

with mss.mss() as sct:
    # 定义要捕获的屏幕区域
    monitor = {'top': 171, 'left': 1090, 'width': 40, 'height': 17}
    # 直接捕获目标区域的图像数据
    sct_img = sct.grab(monitor)
    # 将mss的截图数据直接转换为PIL Image对象,无需保存到本地文件
    pil_img = Image.frombytes('RGB', sct_img.size, sct_img.rgb)
    # 直接使用PIL图像进行OCR识别
    text = pytesseract.image_to_string(pil_img)
    print(text)

关键改动说明:

  • 移除了所有本地文件读写相关的代码(比如mss.tools.to_png和Image.open('capture.png')),避免了不必要的磁盘IO操作
  • 利用Image.frombytes()方法,直接把mss捕获的RGB数据和尺寸转换成PIL图像对象,实现数据在内存中的直接流转
  • 整个流程完全在内存中完成,速度更快,也不会生成临时文件

内容的提问来源于stack exchange,提问作者Siewdass Sf

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.29 07:57:14