最近问答类APP很火,例如冲顶大会
百万英雄
芝士超人
等
网上的各种搜题辅助程序也很多, 作为程序员,当然也凑波热闹自己搞了一个.
环境 Python3
+ google OCR
其中图片的截取利用了macOS + iOS
的配合
采用的大致原理是手机连上Mac
,通过自带的QuickTime
实时显示手机屏幕,具体做法
可以百度怎么用 Quick Time Player 为 iPhone 录制屏幕
这个搜题辅助其实可以用在任意答题类APP上,调整截图坐标是识别的关键
步骤如下
- 安装google的文字识别引擎
brew install tesseract
- 下载中文语言识别包
- 找到语言包
chi_sim.traineddata
- 下载下来后放到,这里是
Mac
上的路径
/usr/local/Cellar/tesseract/3.05.01/share/tessdata/
- 安装python依赖库
pip3 install -r requirements.txt
- 自行修改代码中的屏幕截图区域Frame
#由于每个人屏幕尺寸不同需要自行修改截图Frame "x, y, w, h "
#冲顶大会截图坐标
cddh_ques_loca = "70, 150, 310, 120"
cddh_answer_one_loca = "100, 275, 270, 35"
cddh_answer_two_loca = "100, 330, 270, 35"
cddh_answer_thr_loca = "100, 376, 270, 35"
- 运行程序
python3 KnMoney.py
识别效果
- OCR毕竟比不上接口直接拿数据,会存在一定误差,发现识别不准是可以自行调节图像处理参数
#处理图像
enh_con = ImageEnhance.Contrast(image)
#对比度,锐度,亮度
contrast = 2.0
sharpness = 5.0
brightness = 5.0
- 这是截图后识别成文字的效果
- 这是丢进百度搜索的效果
感谢
- 部分代码出自TopSup