图像格式的二进制数据"/>
【Python】PIL.Image 获取图像格式的二进制数据
问题:屏幕截图进行 OCR 验证码识别需要图像格式的二进制数据,而 Image.tobyte() 获取的是无格式的二进制数据。
解决:
from io import BytesIO
import pyautogui
import ddddocrscreenshot = pyautogui.screenshot(region=[x + 0, y + 26, 100, 50])
# print(screenshot.tobytes())
# b'%\x1f\x1a%\x1f\x1a%\x1f\x1a%\x1f\x1a%\x1f\x1a%\x1f\x1a%\x1f\x1a%\x1f\x1a%\x1f...'
buffer = BytesIO()
screenshot.tobytes('raw', 'RGB')
# 以 PNG 格式保存在 buffer 中
screenshot.save(buffer, format='PNG')
# print(buffer.getvalue())
# b'\x89PNG\r\n\x1a\n\x00\x00\x00\rIHDR\x00\x00\x00d\x00\x00\x002\x08\x02\x00\x00\x00%W\...'
code = ocr.classification(buffer.getvalue())
更多推荐
【Python】PIL.Image 获取图像格式的二进制数据
发布评论