diff options
| author | Arpit Chakladar <54011232+arpitchakladar@users.noreply.github.com> | 2025-06-13 18:55:27 +0530 |
|---|---|---|
| committer | Arpit Chakladar <54011232+arpitchakladar@users.noreply.github.com> | 2025-06-13 18:55:27 +0530 |
| commit | 64e38ab240a1ca3427592eb80f2cef57fddbdafe (patch) | |
| tree | e9fcb0e797a1106e48b6ee716426970cf48b8251 | |
| parent | 00e5ea80b1b0ba37ac4b5dc7b10ae6eac26aa1af (diff) | |
| download | banglar-bhumi-utils-64e38ab240a1ca3427592eb80f2cef57fddbdafe.tar.gz banglar-bhumi-utils-64e38ab240a1ca3427592eb80f2cef57fddbdafe.zip | |
Sending OCR request along with captcha image data to the background script.
| -rw-r--r-- | src/background/run-ocr.ts | 18 | ||||
| -rw-r--r-- | src/scripts/login/index.ts | 3 |
2 files changed, 14 insertions, 7 deletions
diff --git a/src/background/run-ocr.ts b/src/background/run-ocr.ts index d61e71a..f6d1339 100644 --- a/src/background/run-ocr.ts +++ b/src/background/run-ocr.ts @@ -1,7 +1,15 @@ -chrome.runtime.onMessage.addListener(async (message, sender, sendResponse) => { - if (message.type === "ping") { - console.log("Received ping from content script"); - console.log(message.data); - sendResponse({ text: "pong" }); +import Tesseract from "tesseract.js"; + +chrome.runtime.onMessage.addListener((message, sender, sendResponse) => { + if (message.type === "OCR") { + (async () => { + const { data: { text, confidence } } = await Tesseract.recognize(message.dataURL, "eng+osd", { + logger: m => console.log(m), + }); + sendResponse({ text, confidence }); + })(); + return true; } + + return false; }); diff --git a/src/scripts/login/index.ts b/src/scripts/login/index.ts index dacc90a..b7e0a73 100644 --- a/src/scripts/login/index.ts +++ b/src/scripts/login/index.ts @@ -1,4 +1,3 @@ -import Tesseract from "tesseract.js"; import { interceptPost, interceptGet } from "@/shared/intercept-jquery-ajax"; function prepareCaptcha(ctx: CanvasRenderingContext2D, width: number, height: number) { @@ -84,7 +83,7 @@ const observer = new MutationObserver((mutationsList, obs) => { prepareCaptcha(ctx, canvas.width, canvas.height); canvas.style.display = ""; const dataURL = canvas.toDataURL("image/png"); - chrome.runtime.sendMessage({ type: "ping", data: "hello background" }).then(console.log); + chrome.runtime.sendMessage({ type: "OCR", dataURL }, console.log); // TODO: Perform OCR // window.postMessage({ // type: "RUN_OCR", |
