背景
最近朋友在网上做数据爬取的时候遇到一个反爬虫技术,某网站将部分文字转化为表情图片进行展示,我们通过html无法爬取到完整的文字内容,取而代之的是一些特殊的空字符,让人很是郁闷。后面我想到了能不能通过OCR(Optical Character Recognition)技术来破解这个问题。网上查了一些资料发现这个的确是简单可行的,话不多说,我给大家一步一步演示如何使用OCR完成图片转文字
安装Tesseract-OCR
运行以下两条命令在linux(Red Hat)安装Tesseract-OCR,其他操作系统安装命令请参考https://github.com/tesseract-ocr/tesseract/wiki
yum install tesseract
yum install tesseract-langpack-deu
Tesseract安装完成后运行 tesseract -v 将显示版本信息,意味着安装成功
Tesseract命令实现图片转文字
我们先准备一个用于带有文字的图片,比如就截取这篇文章的标题
在图片保存的文件目录中,执行如下命令
tesseract ocr_test.png result
cat result
我们这儿看到大部分英文都正确识别到了,但是中文完全没有识别到,这是因为我们没有指定中文数据包,我们可以在这个地址中下载中文数据包chi_sim.tra