首页 新闻 会员 周边 捐助

验证码识别问题

0
悬赏园豆:50 [已解决问题] 解决于 2017-04-05 13:01

需要做一个系统工具,抓取一些数据,遇到了验证码问题:

 

如何获得网页中验证码图片的内容。

 

想法:

1、通过验证码图片地址,读取URL,然后从浏览器缓存读取缓存文件

      问题:缓存读取有权限限制,不可行

2、通过mshtml获取验证码图片的一个内存拷贝并放置在剪切板

  问题:容易把剪切板弄脏,而且,关键是你刚放进去,又被别的地方冲突了,还不能并发

3、网络有说拦截wininet来实现流的拦截

  问题:一直没有解决,说是IE11无效,偏偏我的就是IE11,也需要考虑IE11

4、向通过WebClient或WebRequest来下载验证码图片

  问题:没办法与内嵌的WebBrowser共享会话(尝试过修改COOKIE,没达成目的)

5、mshtml有Render接口,不知道有没有类似的接口通过mshtml获得img对象的内存流

  问题:mshtml文档参考几乎为零

 

请问:

  有什么好的办法能解决?

 

谢谢!

519740105的主页 519740105 | 大侠五级 | 园豆:5810
提问于:2017-03-30 09:24
< >
分享
最佳答案
0

通过2解决。剪切板做一个并发控制和重试机制。基本能用了。 

收获园豆:20
czd890 | 专家六级 |园豆:14488 | 2017-03-30 12:22
其他回答(2)
0

我使用的是4,以及js获取base64

收获园豆:15
花飘水流兮 | 园豆:13615 (专家六级) | 2017-03-30 12:47
0

直接get验证码的url就行了,有的需要cookie,就提交cookie,解决不了可以发出你验证码的URL

收获园豆:15
兰冰点点 | 园豆:401 (菜鸟二级) | 2017-04-01 17:58
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册