🥳加入无抓取社区领取您的免费试用,访问我们强大的网页抓取工具包!
返回博客

Scrapeless 浏览器正式集成 imageToText 解码功能!

Sophia Martinez
Sophia Martinez

Specialist in Anti-Bot Strategies

06-Jun-2025

我们非常兴奋地宣布,Scrapeless 浏览器正式推出 imageToText 功能,支持通过 CDP 自动识别和填写图像验证码内容!

验证码识别一直是网页自动化中的一个痛点,而图像验证码的复杂性特别让许多开发者感到沮丧。

随着 imageToText 功能的发布,Scrapeless 消除了对额外第三方 OCR 服务和手动干预的需求;所有操作都可以通过单一 API 接口实现自动化识别和输入。

功能亮点

  • 新发布Captcha.imageToText CDP 命令。它原生支持图像验证码识别,并在几秒钟内自动将结果填写到指定输入字段中。
  • 与 Puppeteer 和 Playwright 的双重兼容性:借助 Scrapeless SDK,该功能可以轻松在这两个主流无头浏览器框架中调用,支持更广泛的开发场景。
  • 无需下载图像或外部服务集成:内置的识别引擎通过 CDP 直接执行,适用于任何部署环境。

使用案例

  • 在构建 AI 代理时自动处理图像验证码。
  • 在电商网站收集数据时常遇到产品页面保护。
  • 登录表单、注册流程和爬虫入口点的图像验证。
  • 企业级数据服务需要可扩展的解决方案以绕过图像验证系统。

如何集成 imageToText 解码?

调用 Puppeteer 非常简单;您只需将以下代码添加到现有程序中:

JavaScript Copy
const client = await page.createCDPSession();
await client.send("Captcha.imageToText", {
  imageSelector: '.captcha__image',
  inputSelector: 'input[name="captcha"]',
  timeout: 30000,
})

同样,我们支持 Playwright:

JavaScript Copy
await page.goto("https://www.scrapeless.com", timeout=60000, wait_until="load")
client = await page.target.createCDPSession()
await client.send('Captcha.imageToText', {
  'imageSelector': '.captcha__image',
  'inputSelector': 'input[name="captcha"]',
  'timeout': 30000,
})

此外,集成Scrapeless SDK将自动调用 Captcha.imageToText 命令,通过 DevTools 协议完成图像识别和输入过程。开发者无需任何 OCR 配置或第三方平台集成;一键即可使用!

JavaScript Copy
const { Puppeteer, createPuppeteerCDPSession } = require('@scrapeless-ai/sdk');
 
const browser = await Puppeteer.connect({
  session_name: 'sdk_test',
  session_ttl: 180,
  proxy_country: 'US',
  session_recording: true,
  defaultViewport: null
});
const page = await browser.newPage();
await page.goto('https://www.example.com');

const cdpSession = await createPuppeteerCDPSession(page);
 
await cdpSession.imageToText({
  imageSelector: '.captcha__image',
  inputSelector: 'input[name="captcha"]',
  timeout: 30000,
})

查看我们的使用示例!

为了更好地理解此功能的实现步骤,让我们以访问以下网站为例:interception1.web.de

我们坚定保护网站的隐私。本博客中的所有数据均为公开数据,仅用作爬虫过程的演示。我们不会保存任何信息和数据。

  • 使用教程:
imageToText
  • 先决条件

登录 Scrapeless 仪表板并获取 API 密钥

获取 Scrapeless API 密钥
  • 完整访问代码如下。请记得替换你的 API 密钥和目标网址。
JavaScript Copy
import puppeteer from "puppeteer-core"

const query = new URLSearchParams({
    token: "YOUR_TOKEN",
    proxy_country: "ANY",
    session_recording: true,
    session_ttl: 900,
    session_name: "Default Script",
    defaultViewport: null,
})

const connectionURL = `wss://browser.scrapeless.com/browser?${query.toString()}`

const browser = await puppeteer.connect({
    browserWSEndpoint: connectionURL,
    defaultViewport: null,
})

const page = await browser.newPage()
// 转到你的目标网站
await page.goto(
    "https://interception1.web.de/logininterceptionfrontend/?interceptiontype=VerifyLogin&interceptiontype=VerifyLogin&service=freemail",
    {
      timeout: 30000,
    }
);

// 创建 CDP 会话
const client = await page.createCDPSession();

// 解决图片验证码
await client.send("Captcha.imageToText", {
imageSelector: ".captcha__image", // 图片验证码选择器
inputSelector: 'input[name="captchaPanel:captchaImagePanel:captchaInput:topWrapper:inputWrapper:input"', // 结果输入选择器
timeout: 30000,
});

JavaScript Copy
import { Puppeteer, createPuppeteerCDPSession } from '@scrapeless-ai/sdk';

async function runExample() {
  console.log('创建 Puppeteer 浏览器实例...');
  const browser = await Puppeteer.connect({
    session_name: 'cdp-example-session',
    session_ttl: 300,
    proxy_country: 'US'
  });

  const page = await browser.newPage();

  console.log('创建增强的 Scrapeless CDP 会话...');
  const cdpSession = await createPuppeteerCDPSession(page);

  console.log('导航到登录页面...');
  await page.goto('https://interception1.web.de/logininterceptionfrontend/?interceptiontype=VerifyLogin&interceptiontype=VerifyLogin&service=freemail');

  await cdpSession.imageToText({
    imageSelector: ".captcha__image", // 图片验证码选择器
    inputSelector: 'input[name="captchaPanel:captchaImagePanel:captchaInput:topWrapper:inputWrapper:input"', // 结果输入选择器
    timeout: 30000,
  });

  await cdpSession.waitCaptchaDetected();

  await page.screenshot({ path: 'captcha-screenshot.png' });
}

runExample();

总结

Scrapeless 浏览器推出的 imageToText 功能是解决图片验证码挑战的重要升级。它将图像识别集成作为 Scrapeless SDK 的原生能力,为自动化流程提供了真正无缝的体验。

现在开始使用 Scrapeless SDK,利用这一新功能,使验证码处理任务更加高效轻松!

文档参考: CDP API - imageToText

在Scrapeless,我们仅访问公开可用的数据,并严格遵循适用的法律、法规和网站隐私政策。本博客中的内容仅供演示之用,不涉及任何非法或侵权活动。我们对使用本博客或第三方链接中的信息不做任何保证,并免除所有责任。在进行任何抓取活动之前,请咨询您的法律顾问,并审查目标网站的服务条款或获取必要的许可。

最受欢迎的文章

目录