最近由于需要所以玩了玩数据采集,当然是使用火车头采集器做的采集,测试了一下京东,把京东手机频道全部采集了一遍,共得到700多个手机,包括内容介绍和图片等内容,其中有一个问题是,京东的价格是使用图片形式来表现的,这样也就避免了被别人复制识别的问题,但却苦了我,价格采集一堆图片下来有何用呢,当然要把这一堆价格的图片识别成数字了。
网上搜索了一下,虽然很多采集器都卖钱,甚至方法也卖钱,更不用说价格的图片识别了,但正好搜索到人家提供了图片识别的源码。简单看了一下,代码中只能够识别一个图片,同时还是通过网址获得的图片,而我的图片已经采集到本地了,于是乎简单改了一下,弄了个批量识别本地图片的,换了几行代码而已,更加简单。
先说说使用方法:下载完我的文件包后,解压缩得到三个python的主文件,以及test目录和input.txt的文本文件,三个python文件是主程序,test目录下放了四张测试用的图片,input.txt文件存放了这四张测试图片的文件名。如果你下载了京东的价格图片,那么只需要将图片放到test目录下,并把所有图片的文件名放到input.txt就可以了。好了,接下来运行360buy.py吧,等待提示OK后就表示处理完毕了。结果已经存放到了output.txt文件中了,内容如下:
39900;gp127011,3.png
127500;gp139749,3.png
24900;gp414814,3.png
449900;gp519798,3.png
39900即表示399.00元,后期再简单处理一下就OK了。至此京东商品价格图片识别就圆满完成了。我的700多张照片,处理下来也就十来分钟的时间,不过挺耗费CPU的。
补充一句:你要先安装python和PIL模块。
下载地址:http://sharesh.googlecode.com/files/recognition-JDprice-picture.zip
欢迎做进一步交流。
RoverTang@罗孚传说
E-mail:65985498[at]qq.com
微博/微信:rovertang