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

如何在Scrapeless上解锁imageToText验证码?

Sophia Martinez
Sophia Martinez

Specialist in Anti-Bot Strategies

06-Jun-2025

我们非常高兴地宣布,Scrapeless Browser正式推出了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密钥和目标URL。
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,
});

此外,您还可以通过集成Scrapeless SDK来绕过验证码。以下是我们的参考代码:

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

最受欢迎的文章

目录