8 min

Scrapfly 下载:网页抓取 API、云浏览器与截图

了解如何使用 Scrapfly 的网页抓取 API、云浏览器和截图 API 绕过反机器人并收集数据。包括下载步骤及替代方案 AdsCrawl 的浏览器自动化。

AAnonymous

Scrapfly 下载:如何使用网页抓取 API、云浏览器与截图 API

Scrapfly 将三个强大的网页数据工具整合到一个 API 密钥下:一个稳健的网页抓取 API、一个基于 CDP 的托管隐身云浏览器,以及一个专用的截图 API。如果你是因为搜索“Scrapfly 下载”而来到这里,你可能在寻找两件事:如何获取并保存抓取的数据(HTML、Markdown、结构化 JSON),以及如何捕获并下载任何网页的截图——同时绕过反机器人。本指南将逐步介绍这些内容,提供实用的请求示例、响应处理,并探讨像 AdsCrawl 的真实浏览器自动化 这样的替代方案在需要深度反检测控制时的适用场景。

在 AdsCrawl,我们测试了多种抓取技术栈。以下是你如何从 Scrapfly 获得结果,包括你的数据管道所需的下载机制。

什么是 Scrapfly?

Scrapfly 下载:网页抓取 API、云浏览器与截图产品界面及功能概览。

Scrapfly 的平台设计让你可以使用一个 API 密钥进行抓取、驱动浏览器或截图。三个主要入口是:

  • 网页抓取 API – 反机器人绕过、代理轮换、JavaScript 渲染开关。返回干净的 HTML、Markdown 或解析后的数据。
  • 云浏览器 – 可通过 CDP 访问的远程、有头 Chromium 实例(与 Playwright/Puppeteer 兼容)。非常适合大规模复杂浏览器自动化。
  • 截图 API – 捕获整页、视口或元素截图,支持广告拦截、Cookie 关闭和自定义视口。将图片保存到 Scrapfly 服务器,并提供带认证的下载 URL。

三者共享相同的基于额度的计费、实时遥测和底层隐身引擎。在以下部分,我们将介绍如何实际检索和存储你请求的数据。

使用网页抓取 API 下载数据

当你向 https://api.scrapfly.io/scrape 发送包含目标 URL 和 API 密钥的 POST 请求时,响应包含一个 result 对象。其中,你可以直接获得抓取的内容,无需额外的文本下载步骤。但是,要持久化数据到本地,你只需将响应体写入文件即可。以下是一个最小的 Bash 示例:

curl -X POST "https://api.scrapfly.io/scrape" \
  -H "Content-Type: application/json" \
  -d '{
    "url": "https://example.com",
    "key": "YOUR_KEY"
  }' > scraped-data.json

这将保存整个 JSON 响应。要提取仅 HTML 或 Markdown 内容,请解析 result.content 字段。对于长期存储管道,你通常会将内容直接流式传输到数据库或对象存储。API 还支持 render_js=true 来执行 JavaScript;处理后的页面源代码出现在同一个 content 字段下。

Scrapfly 的反机器人绕过确保那些通常会返回 CAPTCHA 的页面也能成功获取。只有成功的绕过才会计费,因此你无需为失败的尝试付费。

从截图 API 下载截图

Scrapfly 下载:网页抓取 API、云浏览器与截图产品界面及功能概览。

截图捕获是“下载”关键词真正重要的地方。Scrapfly 将截图保存在他们的服务器上,并在 API 响应中提供一个带认证的 URL。然后你通过第二个请求下载图片文件。

有两种方法可以截图:

  1. 通过网页抓取 API(在启用 render_js 的同时添加 screenshots 参数)。
  2. 通过专用截图 APIhttps://api.scrapfly.io/screenshot)。

我们将重点介绍网页抓取 API 方法,因为它在完整的抓取工作流中更为常见。专用端点是一个简化的基于 GET 的接口,当你只需要截图时非常理想。

捕获整页截图

发送一个启用 JS 渲染并带有 screenshots 数组的抓取请求:

curl -G \
  --url "https://api.scrapfly.io/scrape" \
  --data-urlencode "key=YOUR_KEY" \
  --data-urlencode "url=https://web-scraping.dev/product/1" \
  --data-urlencode "render_js=true" \
  --data-urlencode "screenshots[fullpage]=fullpage"

响应包含 result.screenshots.fullpage 对象,其中包含 url 字段。

下载截图文件

url带认证的。将你的 API 密钥作为查询参数附加并保存内容:

curl "https://api.scrapfly.io/4d1b.../main?key=YOUR_KEY" > fullpage.png

将 URL 替换为响应中的 URL。默认情况下文件为 PNG 格式;你可以通过 format 参数将其更改为 JPEG 或 WebP。截图在你的日志保留期内保持可访问(至少一周)。

元素特定截图

如果要针对特定 CSS 选择器而不是整页,使用 screenshots[widget]=.widget-class。下载机制相同——只需从结果中对应的键获取 url

改善截图的标志

添加 screenshot_flags 参数来控制质量和可见性:

  • load_images – 渲染实际图片(额外信用额度成本)。
  • block_banners – 关闭 Cookie 和覆盖层。
  • high_quality – 禁用压缩。
  • dark_mode – 应用深色配色方案。
  • print_media_format – 以打印模式渲染页面。

示例:screenshot_flags=load_images,block_banners,high_quality

如果你需要捕获需要点击或脚本的交互状态,请考虑使用云浏览器或带有原生 CDP 访问权限的专用浏览器自动化 API

云浏览器:下载浏览器交互输出

Scrapfly 下载:网页抓取 API、云浏览器与截图产品界面及功能概览。

云浏览器通过 WebSocket(CDP)公开远程 Chromium。它不是一个直接的“下载”API;相反,你使用 Puppeteer 或 Playwright 以编程方式控制真实浏览器。在该会话期间你抓取或提取的任何内容都由你负责捕获和保存。其优势在于完全隐身,以及自动化简单抓取无法处理的复杂流程的能力。

连接示例(使用 Puppeteer):

const browser = await puppeteer.connect({
  browserWSEndpoint: 'wss://browser.scrapfly.io/cdp?key=YOUR_KEY'
});
const page = await browser.newPage();
await page.goto('https://example.com');
const content = await page.content();
// Save content to disk
fs.writeFileSync('page.html', content);

因为你自己拥有提取逻辑,所以由你决定下载什么——HTML、截图或 PDF。

对于希望在不管理提取代码的情况下进行浏览器自动化的团队,像 AdsCrawl 的 API 这样的替代方案提供了预构建的端点,可直接返回 HTML、Markdown 和截图,同时支持 CDP 远程控制。

3 步入门

  1. 获取免费 API 密钥,从 Scrapfly.io(1000 个免费额度,无需信用卡)。
  2. 选择你的工具。 对于快速抓取,使用网页抓取 API;对于视觉捕获,使用截图 API;对于重度浏览器自动化,使用云浏览器。
  3. 编写你的下载逻辑,使用上述模式。始终处理 HTTP 错误并遵守并发限制。

Scrapfly 的信用系统根据请求复杂性扣除积分。响应头 X-Scrapfly-API-CostX-Scrapfly-Remaining-Api-Credit 帮助你进行预算。有关详细定价明细,请参阅我们的 Scrapfly 定价对比

Scrapfly 与 AdsCrawl:何时纯浏览器 API 更合适

Scrapfly 下载:网页抓取 API、云浏览器与截图产品界面及功能概览。

两个平台都处理反机器人检测,但它们采用不同的架构路径:

  • Scrapfly 将抓取、云浏览器和截图功能集成到完整的代理网格和内置自动绕过中。对于许多抓取任务来说,它是一个一站式商店。
  • AdsCrawl 是一个以浏览器为先的自动化 API,针对反检测会话、远程 CDP 和结构化输出(HTML、Markdown、截图)进行了优化。它包括 AdsPower 指纹配置文件集成 和并发会话管理,非常适合需要一致、可重复浏览器环境的监控、价格跟踪和 AI 数据管道。

如果你的工作流程要求完全控制浏览器指纹并能够运行数千个隔离会话,AdsCrawl 的做法 可以简化基础设施,同时仍然提供抓取内容和截图的直接下载。

相关阅读

来源和进一步阅读

常见问题解答

如何从 Scrapfly 下载截图?

在截图请求成功后,响应包含 result.screenshots.[name].url。将你的 API 密钥作为查询参数(?key=YOUR_KEY)附加,并使用 curl 或任何 HTTP 客户端下载。该链接在你的帐户日志保留期内有效。

我可以直接将抓取的数据作为文件下载吗?

可以。网页抓取 API 返回包含页面内容的 JSON,位于 result.content 字段。你可以保存整个响应,或提取 HTML/Markdown 字符串并写入文件。

截图 API 是否支持不同格式的图片下载?

支持。使用 format 参数(pngjpegwebpgif)。默认为 PNG。对于网页抓取 API,指定 screenshot_flags=high_quality 来控制压缩。

网页抓取 API 和云浏览器有什么区别?

网页抓取 API 是一个简化的 HTTP 请求-响应模型,支持可选的 JS 渲染。云浏览器提供对真实 Chrome 实例的直接 WebSocket 访问,适用于复杂交互、多步骤流程和完整浏览器自动化。

有免费套餐吗?

Scrapfly 在注册时提供 1000 个免费额度,无需信用卡。这允许你测试所有三个产品。之后,你可以按需付费计划扩展。

结论

Scrapfly 的平台提供了一种统一的方式来进行抓取、截图和驱动浏览器,并内置反机器人绕过。对于直接的数据提取,网页抓取 API 提供原始内容供你立即下载。当你需要截图时,嵌入式捕获和专用 API 都提供带认证的 URL,你可以将其拉入存储。当你需要完整的浏览器自动化时,云浏览器将真实 Chromium 实例的钥匙交给你。

对于正在探索替代方案的团队,特别是那些需要精细反检测配置和捆绑结构化输出的团队,AdsCrawl 的浏览器自动化 API 值得与 Scrapfly 进行并排比较。查看我们的 头对头对比 以了解哪种最适合你的 AI 数据管道。

无论你的选择如何,可靠抓取设置的关键是将正确的抽象与清晰的下载逻辑相结合——而你现在已经拥有了两者的蓝图。