1.WEB网站为了防止客户机恶意攻击,加入验证码功能
2.selenium处理验证码时常用的方法是通过cooike,对于一般网站验证码识别难度不大,可以使用第三方平台验证码接口,以去哪儿网为例,验证码为图片,我们只要把图片保存下来
调用第三方平台。
http://wiki.ruokuai.com/ 下载java接口文档,直接调用以下接口
public static String createByPost(String username, String password, String typeid, String timeout, String softid, String softkey, String filePath) { String result = ""; String param = String.format( "username=%s&password=%s&typeid=%s&timeout=%s&softid=%s&softkey=%s", username, password, typeid, timeout, softid, softkey); try { File f = new File(filePath); if (null != f) { int size = (int) f.length(); byte[] data = new byte[size]; FileInputStream fis = new FileInputStream(f); fis.read(data, 0, size); if(null != fis) fis.close(); if (data.length > 0) result = RuoKuai.httpPostImage("http://api.ruokuai.com/create.txt", param, data); } } catch(Exception e) { result = "未知问题"; } return result; }
例:
先对验证码进行截图,保存到项目路径下
获取ER7C便是验证码