做了一个多月的JAVA爬虫爬取百度指数的项目,发现出现了很多问题,总结如下:
抓取百度指数的整体思路:
1、首先得模拟登陆百度账号(用selenium+PhantomJS模拟登陆百度,获取cookie)
2、由于有该死的验证码,因此我们要绕过验证码,保存cookie模拟登陆(绕过万恶的验证码)
3、然后模拟登陆以后,程序截取屏幕保存到本地图片。(屏幕截屏)
4、读取本地图片。(读取图片)
5、找到搜索指数所在区域,裁剪图片。(裁剪图片)
6、下面就是进行图像识别,或者说验证码识别了。(去灰度化,二值化,图像识别)
问题一:百度指数具体的数字竟然是图片!!!每一个数字竟然都是一个图片!显然,常规的思路已经无法驾驭百度指数了
解决思路: 采用Python的图像识别包来识别并爬取百度指数