当前位置: 首页 > news >正文

个人网站icp备案wordpress 小程序 插件

个人网站icp备案,wordpress 小程序 插件,邯郸oa办公系统,注册会计师考试科目项目上移植了研发部的产品,文档不全,项目上验证码功能无法关闭,又要做接口/性能测试,开发不配合(作为测试多么无奈),此方法识别命中率不高,仅作借鉴。 版本JDK11 import io.restass…

项目上移植了研发部的产品,文档不全,项目上验证码功能无法关闭,又要做接口/性能测试,开发不配合(作为测试多么无奈),此方法识别命中率不高,仅作借鉴。
版本JDK11

import io.restassured.response.Response;
import net.sourceforge.tess4j.Tesseract;import javax.imageio.ImageIO;
import java.awt.*;
import java.awt.image.BufferedImage;
import java.io.File;
import java.io.FileOutputStream;
import java.io.OutputStream;
import java.util.Base64;
import java.util.HashMap;
import java.util.Map;import static io.restassured.RestAssured.given;public class ImageCodeTess {/*** urlInfo基本信息* */public static String getUrl(String prototype,String host,String port,String uri){UrlInfo urlInfo = new UrlInfo();urlInfo.setPrototype(prototype);urlInfo.setHost(host);urlInfo.setPost(port);urlInfo.setUri(uri);return urlInfo.toString();}/*** 获取验证码的响应map* */public static Map<String,String> getImageBase64Map(String url){Map<String,String> map = new HashMap<>();Response response = given().when().get(url).then().extract().response();map.put("imageContent",response.jsonPath().get("imageContent"));# 登录接口要用到deviceId,和imageContent是绑定的map.put("deviceId",response.jsonPath().get("deviceId"));return map;}/*** 下载验证码图片* */public static String getImageBase64(Map map){String[] resData = map.get("imageContent").toString().split(";");String base64Image = resData[2];String imageStr = base64Image.substring(base64Image.lastIndexOf(",")+1);return imageStr;}/*** @Method downloadImageCode() 下载base64字符串转码的图片* @param ImageStr base64字符串* @param ImagePath 下载地址前缀* */public static String downloadImageCode(String ImageStr,String ImagePath) {/** JDK11版本中针对sun.misc.BASE64Encoder 使用方法进行了修改升级.* jdk8中:*   BASE64Decoder decoder = new BASE64Decoder();*   byte[] bytes = decoder.decodeBuffer(str);* JDK11中变更为:java.util.Base64*   Base64.Decoder decoder = Base64.getMimeDecoder();*   byte[] bytes = decoder.decode(str);* */Base64.Decoder decoder = Base64.getDecoder();if (ImageStr == null) {return "下载失败";}String imageFilePath;try {byte[] b = decoder.decode(ImageStr);for (int i = 0; i < b.length; ++i) {if (b[i] < 0) {b[i] += 256;}}int rdm = (int) Math.random()*100;imageFilePath = ImagePath + System.currentTimeMillis() + rdm + ".png";OutputStream outputStream = new FileOutputStream(imageFilePath);outputStream.write(b);outputStream.flush();outputStream.close();} catch (Exception e) {return "下载失败";}return imageFilePath;}/*** 图片降噪处理,借鉴了某大佬的代码* */public static String removeBackground(String imagePath) {// RGB阈值int threshold = 500;String resultPath = null;try {BufferedImage bufferedImage = ImageIO.read(new File(imagePath));int width = bufferedImage.getWidth();int height = bufferedImage.getHeight();for (int x = 0; x < width; x++) {for (int y = 0; y < height; y++) {Color color = new Color(bufferedImage.getRGB(x, y));/*System.out.println("red:" + color.getRed() + ";green:" + color.getGreen() + ";blue:" + color.getBlue());*/int num = color.getRed() + color.getGreen() + color.getBlue();if (num >= threshold) {bufferedImage.setRGB(x, y, Color.WHITE.getRGB());}}}for (int i = 0; i < width; i++) {Color color1 = new Color(bufferedImage.getRGB(i, 1));int num1 = color1.getRed() + color1.getGreen() + color1.getBlue();for (int x = 0; x < width; x++) {for (int y = 0; y < height; y++) {Color color = new Color(bufferedImage.getRGB(x, y));int num = color.getRed() + color.getGreen() + color.getBlue();if (num == num1) {bufferedImage.setRGB(x, y, Color.WHITE.getRGB());} else {bufferedImage.setRGB(x, y, Color.BLACK.getRGB());}}}}resultPath = imagePath.substring(0, imagePath.lastIndexOf(".")) + "_1.png";File file = new File(resultPath);ImageIO.write(bufferedImage, "png", file);} catch (Exception e) {e.printStackTrace();}return resultPath.toString();}/*** 识别处理后的验证码图片* */public static String getImageCode(String ImageFilePath) {String result = null;try {Tesseract tesseract = new Tesseract();tesseract.setDatapath("C:/Program Files/Tesseract-OCR/tessdata");tesseract.setLanguage("eng");result = tesseract.doOCR(new File(ImageFilePath));} catch (Exception e) {e.printStackTrace();}return result;}
}
http://www.dtcms.com/a/576447.html

相关文章:

  • 怎么做自己下单的网站小程序代做
  • 杭州网站建设页面国内做网站用的程序
  • 三网合一网站源码下载泰安住房和城乡建设局网站
  • 官方网站开发招标须知wordpress用还得shopif好用
  • 江苏省 建设 注册中心网站首页成都高薪南网站建设
  • 统一门户网站wordpress开启评论
  • 湖南网站建设seo建门户网站需要多少钱
  • 多人在线协作网站开发如何汉化wordpress主题
  • 做头像的网站空白广州市网站建设价格
  • 重庆是哪个省免费关键词优化工具
  • 网站开发的公司排名如何开网店需要多少资金
  • 天津建设局网站首页网站放到云服务器上怎么做
  • 如何推广网站会员注册玉林城乡住房建设厅网站
  • 建立网站编程wordpress进入数据库
  • 百度网盘 做网站图床奢侈品网站怎么做tuig优化
  • 做网站 备案软件开发平台是什么
  • 网站制作课程介绍简单网页
  • 想建个板栗网站怎么做网站效果图用什么软件做
  • 建设网站虚拟现实技术如何建设与维护网站
  • wordpress页头图片比例网站群站优化
  • 网站快照时间626969com域名信息查询
  • 武进附近做网站的公司有哪些国外wordpress商城
  • 加强网站信息建设设计公司取名字大全集
  • 廊坊微信网站建设比亚迪新能源汽车车型
  • 一般的网站需要多大的空间广告公司网站设计方案
  • 营销成功案例网站企业营销推广方案
  • 如何做发卡网站wordpress更改固定连接后404
  • 网页制作与网站建设技术大全pdf外贸网站代运营
  • 实木餐桌椅网站建设进一步加大网站集约化建设力度
  • 伊牡丹江市春市网站建设上海网站推广公司