使用Tesseract OCR将URL添加为查询参数

时间:2019-05-04 05:22:26

标签: javascript php jquery ajax

我正在使用tesseract ocr,它运行良好。但是我的问题是我可以使用网址作为参数运行tesseract吗?

我正在做以下事情

localhost/test.html/?othersite.com/image/image2.jpg 

用于演示的某些图像网址:

 1. https://i.imgur.com/leBXjxq.png
 2. https://i.imgur.com/7u9LyF6.png

处理结果后,它将出现在text-area框中。

这是一个代码:

<html>
  <head>
     <title>Tesseract-JS Demo</title>
  </head>
  <body>
     <input type="text" id="url" placeholder="Image URL" />

     <!--<div id="ocr_results"> </div>-->
     <div id="ocr_status"> </div>
     <div>
        <label>Filed1
        <label>
           <textarea id="txt" ></textarea>
     </div>


  </body>

 <script src='https://cdn.rawgit.com/naptha/tesseract.js
 /1.0.10/dist/tesseract.js'></script>
  <script 

  src="https://cdnjs.cloudflare.com/ajax/
  libs/jquery/3.3.1/jquery.min.js"></script>
  <script>
  function runOCR(url) {
  Tesseract.recognize(url)
  .then(function(result) {
  document.getElementById("txt")
  .innerHTML = result.text;
  document.getElementById('txt').focus();

  }).progress(function(result) {
  document.getElementById("ocr_status")
  .innerText = result["status"] + " (" +
  (result["progress"] * 100) + "%)";
  });
  }
  document.getElementById("url")
  .addEventListener("change", function(e) {
  var url = document.getElementById("url").value;
  runOCR(url);

  });


 </script>

1 个答案:

答案 0 :(得分:4)

您可以进行localhost/test.html?image=https://i.imgur.com/leBXjxq.png

您可以像这样从JavaScript中的URL获取图像:

const urlParams = new URLSearchParams(window.location.search);
const myImage = urlParams.get('image');

myImage 变量将为:“ https://i.imgur.com/leBXjxq.png”,然后可以将其传递给OCR方法。

示例代码将为:

const urlParams = new URLSearchParams(window.location.search);
const myImage = urlParams.get('image');
if (myImage) {
    runOCR(myImage);
}

这是链接,其中包含更新的代码:https://gist.github.com/kolarski/0bc2a3feb02adb1b63016d0d78b3653c