前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >python3百度指数抓取

python3百度指数抓取

作者头像
企鹅号小编
发布2018-01-30 15:08:09
1.4K0
发布2018-01-30 15:08:09
举报
文章被收录于专栏:编程编程

分类:python

作者:TTyb文章发表于 2016-11-12

百度指数抓取,再用图像识别得到指数前言:

土福曾说,百度指数很难抓,在淘宝上面是20块1个关键字:

哥那么叼的人怎么会被他吓到,于是乎花了零零碎碎加起来大约2天半搞定,在此鄙视一下土福

安装的库很多:

谷歌图像识别tesseract-ocr

pip3 install pillow

pip3 install pyocr

selenium2.45

Chrome47.0.2526.106 m or Firebox32.0.1

chromedriver.exe

图像识别验证码请参考我的博客:

python图像识别–验证码

selenium用法请参考我的博客:

python之selenium

进入百度指数需要登陆,登陆的账号密码写在文本account里面:

万能登陆代码如下:

登陆的页面:

登陆过后需要打开新的窗口,也就是打开百度指数,并且切换窗口,在selenium用:

清空输入框,构造点击天数:

天数也就是这里:

找到图形框:

图形框就是:

根据坐标点的不同构造偏移量:

选取7天的坐标来观察:

第一个点的横坐标为1031.66666

第二个点的横坐标为1234

所以7天两个坐标之间的差为:202.33,其他的天数类似

用selenium库来模拟鼠标滑动悬浮:

但是这样子确定的点指出是在这个位置:

也就是矩形的左上角,这里是不会加载js显示弹出框的,所以要给横坐标+1:

写个按照天数的循环,让横坐标累加:

鼠标横移时会弹出框,在网址里面找到这个框:

selenium自动识别之…:

并且确定这个框的大小位置:

截取的图形为:

下面的思路就是:

将整个屏幕截图下来

打开截图用上面得到的这个坐标rangle进行裁剪

但是最后裁剪出来的是上面的那个黑框,我想要的效果是:

本次更新加入了对于关键词长度的判断,能够自动识别关键词长度而进行截取:

找到位置:

后面的完整代码是:

但是后面发现裁剪的图片太小,识别精度太低,所以需要对图片进行扩大:

原图大小请右键->属性->详细信息查看,我的是长73像素,宽29像素

最后就是图像识别

最后效果图:

https://github.com/TTyb

本文来自企鹅号 - TTyb媒体

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文来自企鹅号 - TTyb媒体

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
相关产品与服务
图像处理
图像处理基于腾讯云深度学习等人工智能技术,提供综合性的图像优化处理服务,包括图像质量评估、图像清晰度增强、图像智能裁剪等。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档