背景:在python+appium自动化测试中,需要OCR识别图片局部文字,如下图的报错信息识别:
实现代码:
import os
from PIL import Image
import pytesseract
def identifyingCode(startx, starty, endx, endy):
u'''获取报错截图
(startx,xstarty)---------------------------------
| 要截取的图片范围 |
| |
---------------------------------- (endx,endy)
'''
imGetScreen = Image.open(os.getcwd() + '\error.jpg') # 打开图片
box = (startx, starty, endx, endy)
imIndentigy = imGetScreen.crop(box) # 图片裁剪
imIndentigy.save(os.getcwd() + '\test.png',dpi=(300.0,300.0)) # 保存裁剪图片
text = pytesseract.image_to_string(Image.open(r'D:Projectjade-mastertest.png'), lang='chi_sim')
print(text)
if __name__=="__main__":
identifyingCode(60,923,1020,1357) #左上角及右下角坐标
运行结果:



