[新手上路]批处理新手入门导读[视频教程]批处理基础视频教程[视频教程]VBS基础视频教程[批处理精品]批处理版照片整理器
[批处理精品]纯批处理备份&还原驱动[批处理精品]CMD命令50条不能说的秘密[在线下载]第三方命令行工具[在线帮助]VBScript / JScript 在线参考
返回列表 发帖

[文本处理] 批处理混编javascript获取在线图片网址百度文字识别高精度OCR

本帖最后由 kaze 于 2019-4-2 13:32 编辑

大家可以参照此帖看看百度ocr的要求等详细解释,
http://www.bathome.net/viewthread.php?tid=48390&highlight=ocr
但是本代码并非来源于以上贴子,有心人肯定能够猜到本代码是干啥的了,但是是属于不能明说的一类了。(这里的网址隐藏了真实意图)
源代码并非批处理,也是用的百度普通ocr,现在提出要求,使用百度ocr高精度识别,把在线图片base64编码、去掉编码头后再进行urlencode。
这一步我是怎么也搞不定了,希望有兴趣的高手能够实现,谢谢。
  1. /*&cls
  2. @echo off
  3. title 取图片信息
  4. echo 取图片信息
  5. cd /d "%~dp0"
  6. cscript -nologo -e:jscript "%~f0"
  7. pause&exit /b
  8. */
  9. var fso=new ActiveXObject('Scripting.FileSystemObject');
  10. var http=new ActiveXObject('MSXML2.XMLHTTP');
  11. var m=0;
  12. var img_url_list='';
  13. var img_url_list=gettext('http://open.iciba.com/dsapi/').match(/fenxiang_img\":\"(http.+)\"\}/m)[1].replace(/\\/g,'');
  14. var num=img_url_list.match(/\d{4}(-\d\d){2}/m)[0];
  15. var client_id="你的百度文字识别的id";
  16. var client_secret="你的百度文字识别的Secret Key";
  17. var access_token=get_access_token(client_id,client_secret);
  18. var list=send_Pic2word_request(img_url_list,access_token);
  19. WSH.echo(num+'\r\n'+img_url_list+'\r\n'+list);
  20. //var f=fso.CreateTextFile('X:/ssr.txt', 2, true);
  21. //f.Write(num+'\r\n'+list);
  22. //f.Close();
  23. WSH.Quit();
  24. function gettext(url){
  25.     var text='';
  26.     http.open('Get', url, false)
  27.     http.send();
  28.     if (http.status == 200 ) {text=http.responseText;
  29.     return text;}
  30.     else {m++;WSH.echo(m);
  31.     gettext(url);
  32. }
  33. }
  34. function get_access_token(client_id,client_secret){
  35.     host = 'https://aip.baidubce.com/oauth/2.0/token?grant_type=client_credentials&client_id='+client_id+'&client_secret='+client_secret
  36.     http.open('Post', host, false)
  37.     http.send();
  38.     if (http.status == 200) {content = http.responseText;
  39.     var json=eval('('+content+')');
  40.     return json['access_token'];
  41.     }
  42. }
  43. function send_Pic2word_request(img_url_list,access_token){
  44.     host="https://aip.baidubce.com/rest/2.0/ocr/v1/general_basic?access_token="+access_token+"&url="+img_url_list;
  45.     http.open('Post', host, false)
  46.     http.send();
  47.     content = http.responseText;
  48.     WSH.echo(content);
  49.     if (content){
  50.     var json1=eval('('+content+')');
  51.     var n=json1.words_result_num;
  52.     var wr=json1.words_result
  53.     var test1=wr[0].words;
  54.     var test2=wr[1].words;
  55.     var list=test1+'\r\n'+test2+'\r\n';  
  56.     return list;
  57.     }
  58. }
复制代码

有没有人能够给个大概解答啊,抄了一段代码https://www.cnblogs.com/tugenhua0707/p/4666076.html
,提示document未定义,new Image()也提示出错

var img = "https://img.alicdn.com/bao/uploaded/TB1qimQIpXXXXXbXFXXSutbFXXX.jpg";
function getBase64Image(img) {
    var canvas = document.createElement("canvas");
    canvas.width = img.width;
    canvas.height = img.height;
    var ctx = canvas.getContext("2d");
    ctx.drawImage(img, 0, 0, img.width, img.height);
    var ext = img.src.substring(img.src.lastIndexOf(".")+1).toLowerCase();
    var dataURL = canvas.toDataURL("image/"+ext);
    return dataURL;
}
var image = new Image();
image.crossOrigin = '';
image.src = img;
image.onload = function(){
    var base64 = getBase64Image(image);
    console.log(base64);
}

TOP

我来水一贴安慰下lz

TOP

好寂寞的境地

TOP

返回列表