The Web MCP
This server exposes four tools for web search and Markdown scraping, with batch operations and anti-bot/CAPTCHA unlocking.
Search Google, Bing, or Yandex and get SERP results (URL, title, description) in Markdown, with cursor pagination via
search_engine.Scrape a single webpage URL into Markdown with
scrape_as_markdown, including pages using bot detection or CAPTCHA.Run 1–10 search queries at once with
search_engine_batch(Google returns JSON; Bing/Yandex return Markdown).Scrape 1–10 webpage URLs at once into Markdown with
scrape_batch, also benefiting from bot/CAPTCHA unlocking.
Enables programmatic scraping of product information, prices, and inventory data from Amazon.
Allows for the extraction of product listings, pricing, and market data from eBay.
Provides AI-optimized web search results and specialized tools for extracting location and business data from Google Maps.
Facilitates social media data extraction and profile monitoring on Instagram.
Provides a tool to convert any web page content into clean Markdown, optimized for content extraction and AI documentation.
Enables gathering of structured product details and inventory availability from Walmart.
Click on "Deploy Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@The Web MCP What's the latest news on AI regulations in the EU right now?"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
概览
Bright Data MCP 服务器让 AI 智能体可以实时访问公开网页数据。它提供 32 个工具,涵盖:
网页搜索:以结构化数据形式返回 Bing 和 Google 搜索结果
页面抓取:将任意 URL 转换为 Markdown 或 HTML,并在每个请求中自动处理机器人检测、验证码破解和代理轮换
结构化数据(网页爬虫工具 API):通过 1,200 多个预构建爬虫,从 Amazon、LinkedIn、Instagram、TikTok、YouTube、X、Reddit、Facebook、Crunchbase、Zillow、npm、PyPI 等平台获取干净的 JSON,无需解析 HTML。六个工具可查找并运行其中任意爬虫
浏览器自动化:在远程浏览器会话中导航、点击、输入、截图和读取页面
LLM 回复采集:向 ChatGPT 和 Perplexity 发送提示词,并以结构化数据形式获取其回答
每个请求都会通过 Bright Data 的解锁基础设施路由,因此会阻止普通 HTTP 客户端的页面(机器人检测、CAPTCHA、速率限制、地域限制)也能正常返回。无需设置代理、维护无头浏览器或编写重试逻辑。
两种部署方式:托管的远程服务器(一个 URL,无需安装),或通过 npx @brightdata/mcp 运行本地实例。
Related MCP server: Spider MCP Server
快速开始
托管服务器:无需安装。 将此 URL 添加到你的 MCP 客户端:
https://mcp.brightdata.com/mcp?token=YOUR_API_TOKEN_HERE从你的 Bright Data 账户设置中获取 API 令牌。新账户每月可获得 5,000 次免费请求。
可选 URL 参数:
参数 | 说明 | 示例 |
| 限制为特定工具组(默认:所有工具) |
|
| 限制为特定工具 |
|
前往:设置 → 连接器 → 添加自定义连接器
名称:
Bright DataURL:
https://mcp.brightdata.com/mcp?token=YOUR_API_TOKEN点击“添加”
或在本地运行:
{
"mcpServers": {
"Bright Data": {
"command": "npx",
"args": ["@brightdata/mcp"],
"env": {
"API_TOKEN": "<your-api-token-here>"
}
}
}
}claude mcp add --transport http brightdata "https://mcp.brightdata.com/mcp?token=YOUR_API_TOKEN"添加到 ~/.cursor/mcp.json:
{
"mcpServers": {
"brightdata": {
"url": "https://mcp.brightdata.com/mcp?token=YOUR_API_TOKEN"
}
}
}添加到 .vscode/mcp.json:
{
"servers": {
"brightdata": {
"type": "http",
"url": "https://mcp.brightdata.com/mcp?token=YOUR_API_TOKEN"
}
}
}添加到 ~/.codeium/windsurf/mcp_config.json:
{
"mcpServers": {
"brightdata": {
"serverUrl": "https://mcp.brightdata.com/mcp?token=YOUR_API_TOKEN"
}
}
}添加到 ~/.gemini/settings.json:
{
"mcpServers": {
"brightdata": {
"httpUrl": "https://mcp.brightdata.com/mcp?token=YOUR_API_TOKEN"
}
}
}添加到你的 Zed 设置:
{
"context_servers": {
"brightdata": {
"url": "https://mcp.brightdata.com/mcp?token=YOUR_API_TOKEN"
}
}
}前往设置 > MCP Servers > Add MCP 服务器,并添加:
{
"brightdata": {
"url": "https://mcp.brightdata.com/mcp?token=YOUR_API_TOKEN"
}
}适用于任何支持本地 MCP 服务器的客户端:
{
"mcpServers": {
"Bright Data": {
"command": "npx",
"args": ["@brightdata/mcp"],
"env": {
"API_TOKEN": "<your-api-token-here>"
}
}
}
}定价和免费套餐
每个账户都包含每月自动续订的免费套餐。开始使用无需信用卡或任何承诺。
每月 5,000 次免费请求,每月 1 日续订。未使用的请求不会结转。对于团队账户,账户中的所有用户共享免费套餐。
免费内容包括:
获取任意网页并提取为 Markdown
访问适用于热门域名的 60 多个预构建爬虫
网页搜索(Bing、Google)
网页解锁(绕过机器人检测、破解 CAPTCHA、代理轮换)
浏览器自动化
地理定位
超出免费套餐后:按使用量付费,无需承诺:
搜索、抓取和提取 | 浏览器导航 | |
按使用量付费 | 每 1,000 条结果 $1.50 | $8 / GB |
免费请求用完后,请求将停止。不会产生意外费用:除非你已存入资金
添加信用卡仅用于验证;除非你的免费套餐已用完并且账户中存有资金,否则不会扣费
在控制面板中设置消费上限,确保按使用量付费的费用不会超出预算
使用场景
实时研究
使用实时网页数据而不是训练数据回答问题。先搜索,再阅读来源。
任务 | 工具 |
在网页中搜索最新信息 |
|
以干净的 Markdown 读取特定页面 |
|
提示词示例:“特斯拉当前股价是多少?”、“获取纽约今天的天气预报”、“查找过去 6 个月中引用最多的欧盟 AI 监管资料来源”。
电商洞察
以结构化 JSON 读取商品数据:价格、库存情况、评分、评论数、卖家和图片。
任务 | 工具 |
来自 Amazon、Walmart、eBay、Best Buy、Etsy、Home Depot、Zara 等商店的商品、评论和搜索结果 |
|
跨零售商价格对比 | 使用 Google Shopping 爬虫执行相同流程 |
提示词示例:“比较这款笔记本电脑在 Amazon、Walmart 和 Best Buy 的价格”、“获取 ASIN B0D2Q9397Y 的评分和评论数”、“这款商品有货吗?”。
市场和竞争对手分析
使用实时数据构建竞争对手档案:融资、员工人数、招聘、客户评论和定价页面。
任务 | 工具 |
公司融资、规模、员工和招聘信息(Crunchbase、ZoomInfo、LinkedIn) |
|
客户情绪(Google Maps、Facebook、应用商店评论) |
|
竞争对手定价页面 |
|
市场发现 |
|
提示词示例:“将 Notion 作为竞争对手进行分析:定价、融资、招聘重点,以及客户抱怨的问题”。
具备可靠网页访问能力的 AI 智能体
替换在受保护网站上会被阻止的内置获取/搜索工具。每个请求都会通过解锁基础设施,因此智能体不会因机器人检测、CAPTCHA 或地域限制而失败。
任务 | 工具 |
内置网页搜索的直接替代方案 |
|
内置 URL 获取功能的直接替代方案 |
|
并行数据采集(每次 5 个) |
|
交互式网站(登录墙、无限滚动、动态内容) |
|
无需架构即可从任意页面获取结构化 JSON |
|
编码智能体
按需获取软件包注册表数据:无需抓取,也没有过期缓存。
任务 | 工具 |
npm 和 PyPI 软件包版本、README、元数据 | 将 |
读取 GitHub 仓库中的文件 | 将 |
提示词示例:“npm 上 express 的最新版本是什么?”、“获取 langchain-brightdata PyPI 软件包的 README”。
GEO 和品牌可见度
向主流 LLM 发送提示词,并以结构化数据形式获取回答。衡量 AI 助手如何描述你的品牌、引用哪些来源以及提供哪些推荐,为生成式引擎优化建立反馈循环。
任务 | 工具 |
包含引用和推荐的 ChatGPT 回答 |
|
包含来源的 Perplexity 回答 |
|
提示词示例:“向 ChatGPT 和 Perplexity 询问‘哪家代理提供商最好’,并比较它们如何对我们进行排名”。
社交媒体监测
从各大平台获取结构化数据:个人资料、帖子、评论和互动指标。每个平台都针对不同数据类型提供爬虫(LinkedIn 个人资料、Instagram Reels、TikTok 评论等);使用 search_scrapers 查找,并使用 run_scraper 运行。
平台 | 爬虫示例 |
个人资料、公司资料、招聘信息、帖子、人员搜索 | |
个人资料、帖子、Reels、评论 | |
TikTok | 个人资料、帖子、商店、评论 |
个人资料、帖子、Marketplace 商品、公司评论、活动 | |
YouTube | 视频、频道、评论 |
X(Twitter) | 帖子、个人资料发布的帖子 |
帖子、评论 |
提示词示例:“获取此 TikTok 个人资料最新的 10 条帖子,并总结互动情况”。
内容创作和学术研究
一次从多个页面收集素材,并按时效性和相关性筛选。
任务 | 工具 |
通过一次调用采集多个来源 |
|
新闻和金融数据 | 将 |
对比
功能 | Bright Data MCP | 典型网页 MCP 服务器 |
工具总数 | 32 | 2–10 |
特定平台的结构化 JSON 提取工具 | 通过 6 个工具使用覆盖电商、社交、商业、金融、旅游和应用商店的 1,200 多个预构建爬虫 | 很少提供;通常仅支持通用抓取 |
解锁(绕过机器人检测、破解 CAPTCHA、代理轮换) | 内置于每个请求 | 通常不提供;在受保护网站上会被阻止 |
搜索引擎 | Bing、Google | 通常只有一个 |
浏览器自动化 | 14 个工具、远程浏览器、无需本地设置 | 功能有限或不提供 |
LLM 回复采集(ChatGPT、Perplexity) | 支持 | 不提供 |
软件包注册表数据(npm、PyPI) | 支持 | 不提供 |
批量操作 | 每次调用执行 10 次搜索或 10 次抓取 | 通常仅支持单个请求 |
地理定位 | 支持 | 功能有限或不提供 |
免费套餐 | 每月 5,000 次请求,包含浏览器自动化,无需信用卡 | 各不相同;无密钥访问通常受到速率限制 |
工具选择:组
工具按组组织,因此你只需加载所需内容。工具越少,智能体需要处理的上下文就越少。
未设置
GROUPS或TOOLS时,会启用全部 32 个工具。设置任意一个都会将服务器限制为仅使用指定工具GROUPS用于启用工具包。使用逗号分隔:GROUPS="scrapers,browser"(本地)或&groups=scrapers,browser(托管 URL)TOOLS用于额外添加单个工具:TOOLS="extract,scrape_as_html"。单独使用时,只启用你列出的工具每个组还包含
search_engine、scrape_as_markdown和ask_brightdata_assistant组 ID
custom已保留;如需单独选择工具,请使用TOOLS
组 ID | 内容 | 工具数量 |
| 搜索并运行任意预构建的网页爬虫工具 API 爬虫(Amazon、LinkedIn、TikTok、npm 等) | 6 |
| 远程浏览器自动化 | 14 |
| ChatGPT 和 Perplexity 回复采集 | 2 |
| 批量工具、HTML 抓取、AI 提取、会话统计 | 5 |
旧组 ID(ecommerce、social、business、finance、research、app_stores、travel、code)仍然有效,并会启用 scrapers 工具;social 和 business 还会添加 search_dataset 和 list_dataset_fields。TOOLS 中旧的 web_data_* 名称也会启用 scrapers 工具。
配置示例
启用浏览器自动化和 AI 提取的本地服务器:
{
"mcpServers": {
"Bright Data": {
"command": "npx",
"args": ["@brightdata/mcp"],
"env": {
"API_TOKEN": "<your-api-token-here>",
"GROUPS": "browser,advanced_scraping",
"TOOLS": "extract"
}
}
}
}编码智能体设置(Claude Code / Cursor / Windsurf):通过预构建爬虫获取 npm、PyPI 和 GitHub 数据:
{
"mcpServers": {
"Bright Data": {
"command": "npx",
"args": ["@brightdata/mcp"],
"env": {
"API_TOKEN": "<your-api-token-here>",
"GROUPS": "scrapers"
}
}
}
}工具参考(32 个工具)
应使用哪个工具
已有 URL,需要内容:
scrape_as_markdown。多个 URL(最多 5 个):scrape_batch需要查找信息:
search_engine。多个查询(最多 5 个):search_engine_batch从已知平台(Amazon、LinkedIn、TikTok、npm、PyPI 等)获取结构化数据:
search_scrapers→get_scraper_details→run_scraper,返回干净的 JSON,比抓取同一页面更快、更可靠从没有爬虫覆盖的页面获取结构化 JSON:
extract原始 HTML:
scrape_as_html页面需要交互(点击、输入、滚动、登录):
scraping_browser_*工具了解 ChatGPT/Perplexity 如何回答提示词:
chatgpt_ai_insights/perplexity_ai_insights有关 Bright Data 本身的问题(产品、区域、错误、设置):
ask_brightdata_assistant
爬虫运行说明:
返回结构化 JSON,按返回的记录数计费
包含
error字段的记录会说明失败的输入,例如 URL 类型错误结果可能很大。对
discover_by_*方法使用较低的limit_per_input,并在框架支持的情况下通过子智能体运行批量采集,避免记录充斥主上下文窗口如果运行失败,可对同一 URL 使用
scrape_as_markdown作为后备方案
工具 | 说明 | 组 |
| 搜索 Bing(默认)或 Google。返回 JSON(链接、标题、说明),每页 10 条结果。参数: | 默认 / 每个组 |
| 一次调用最多执行 5 个搜索查询 | 默认 / |
| 任意 URL。以 markdown(默认)、text、html 或 ld_json 格式返回内容 | 默认 / 每个组 |
| 一次调用最多处理 5 个 URL。以 markdown(默认)、text、html 或 ld_json 格式返回内容 | 默认 / |
| 将任意 URL 作为原始 HTML 返回 | 默认 / |
| 抓取页面并使用 AI 将其转换为结构化 JSON,可提供可选的自定义提取提示词 | 默认 / |
| 当前会话的工具使用次数 | 默认 / |
搜索并运行 Bright Data 的任意一个 1,200 多个预构建爬虫。爬虫列表从 docs.brightdata.com/scrapers.json 加载,并每日刷新。在托管服务器和本地服务器上均可使用。未选择工具或组时默认启用;否则请添加 scrapers 组(托管 URL 使用 &groups=scrapers,本地使用 GROUPS=scrapers)。
典型流程:search_scrapers → get_scraper_details → run_scraper。运行按记录计费;discover_by_* 方法为每个输入最多采集 limit_per_input 条记录(默认 10 条)。
工具 | 说明 | 组 |
| 按网站或数据类型查找爬虫(例如“amazon reviews”“linkedin.com”)。返回数据集 ID、名称、域名和采集方法 | 默认 / |
| 一个爬虫方法的说明、输入字段、输入示例和主要输出字段 | 默认 / |
| 运行爬虫方法。最多等待 45 秒;如果仍在运行,则返回 | 默认 / |
| 运行状态:starting、running、ready、failed 或 canceled | 默认 / |
| 已完成运行的记录 | 默认 / |
| 立即重新加载爬虫列表,无需等待每日刷新 | 默认 / |
远程浏览器会话。典型流程:导航 → 快照 → 通过 ref 交互 → 提取或截图。
工具 | 说明 |
| 打开或复用浏览器会话并导航到 URL |
| 后退 |
| 前进 |
| 列出交互式元素及其 ref 的页面 ARIA 快照。执行基于 ref 的操作前必须调用 |
| 使用最新快照中的 ref 点击元素 |
| 通过 ref 向元素输入内容;可选择按 Enter 提交 |
| 在一次调用中通过 ref 填写多个表单字段 |
| 当前页面的截图;可选 |
| 页面正文的文本内容 |
| 当前页面的 HTML |
| 滚动到页面底部 |
| 将元素滚动到可见区域 |
| 等待元素变为可见,可设置超时时间 |
| 自页面加载以来的网络请求:方法、URL、状态 |
ref 来自最新快照。如果页面在点击或导航后发生变化,请在下一次基于 ref 的操作前创建新快照。对于静态页面,scrape_as_markdown 比浏览器会话更快且成本更低。
工具 | 输入 | 返回 |
| 提示词 | ChatGPT 以 Markdown 格式返回的回答 |
| 提示词 | Perplexity 以 Markdown 格式返回的回答 |
用于生成式引擎优化(跟踪 LLM 如何描述你的品牌)和 LLM-as-a-judge 工作流。
对存储的 LinkedIn 数据集执行筛选搜索;无需运行爬虫,立即返回匹配记录。
工具 | 说明 | 组 |
| 数据集的可筛选字段(名称、类型、说明)。请在 | 默认 / |
| 与筛选条件匹配的记录,每次调用最多 10 条,并提供游标以获取更多记录 | 默认 / |
工具 | 说明 | 组 |
| 向 Bright Data 的支持助手 Sophie 咨询产品、API、区域、错误或账户设置问题。传入返回的 | 默认 / 每个组 |
智能体技能
即用型技能,可指导你的智能体正确使用此 MCP 服务器。完整合集位于 github.com/bright-cn/skills:包含 11 项技能,涵盖网页抓取、网页获取、搜索、浏览器自动化、数据集、账号接入和计费,以及 CLI、MCP 和 SDK 使用指南。
与此 MCP 服务器直接相关的技能:
技能 | 功能 |
将 Bright Data 工具接入 AI 应用或智能体框架,将 Claude、Cursor 等 MCP 客户端连接到 Bright Data,并选择要启用的 MCP 工具或工具组 |
配置
基本设置(本地)
{
"mcpServers": {
"Bright Data": {
"command": "npx",
"args": ["@brightdata/mcp"],
"env": {
"API_TOKEN": "your-token-here"
}
}
}
}高级配置
{
"mcpServers": {
"Bright Data": {
"command": "npx",
"args": ["@brightdata/mcp"],
"env": {
"API_TOKEN": "your-token-here",
"RATE_LIMIT": "100/1h",
"SERP_ZONE": "custom_serp",
"WEB_UNLOCKER_ZONE": "custom",
"BROWSER_ZONE": "custom_browser"
}
}
}
}环境变量
变量 | 说明 | 默认值 | 示例 |
| 你的 Bright Data API 令牌(必填) | - |
|
| 自定义速率限制 | 无限制 |
|
| 搜索工具使用的自定义搜索引擎 API 区域名称 |
|
|
| 自定义网络解锁器区域名称 |
|
|
| 自定义浏览器区域名称 |
|
|
| 当数据工具返回的页面内容看起来像是要求更改 MCP 配置的指令时,服务器会先通过 MCP 引导征询用户,再返回内容。设置为 |
|
|
| 等待用户回答的秒数,超时后将隐藏内容 |
|
|
|
|
|
|
| 基础工具的请求超时时间(秒)(搜索和抓取) | 无限制 |
|
| 基础工具遇到暂时性错误时的最大重试次数(0-3) |
|
|
| 以逗号分隔的工具组 ID。将服务器限制为仅使用这些组 | 所有工具 |
|
| 以逗号分隔的单个工具名称。将服务器限制为仅使用这些工具 | 所有工具 |
|
内容门控
scrape_as_markdown、search_engine、extract 及其批量变体会返回网页上的原始内容。如果该内容包含看起来像是要求更改 MCP 配置的指令:注册服务器、运行 npx -y 软件包、编辑 MCP 配置文件,服务器会暂停,并在返回内容前通过你的 MCP 客户端询问你。批准后,内容将原样返回;拒绝后,内容将被隐藏,并向助手提供简短说明。不包含此类文本的页面会与以前一样原样返回,不会出现提示。对于批量调用,仅隐藏匹配的项目。
以 MCP 配置为主题的页面(文档、README)自然会触发提示。不支持 MCP 引导征询的客户端将隐藏匹配内容;如果你接受相关风险,请设置 CONTENT_GATE=off。服务器等待你回答时会报告进度;不会根据进度延长工具超时时间的客户端,会按自身限制终止等待:CONTENT_GATE_TIMEOUT 是服务器端的控制项。浏览器工具不在此功能的覆盖范围内。
文档
资源 | 链接 |
API 文档 | |
完整工具参考 | |
智能体技能 | |
使用示例 | |
更新日志 |
故障排除
“spawn npx ENOENT”错误
安装 Node.js,或使用 node 的完整路径:
"command": "/usr/local/bin/node" // macOS/Linux
"command": "C:\\Program Files\\nodejs\\node.exe" // Windows复杂网站超时
在客户端设置中将超时时间增加到 180 秒。
身份验证问题
验证你的 API 令牌有效且具有所需权限。令牌在账户设置中管理。
run_scraper 返回错误或没有数据
包含 error 字段的记录会说明失败的输入。将你的输入与 get_scraper_details 返回的 sample_input 进行比较(例如,Amazon 商品 URL 包含 /dp/,Walmart 商品 URL 包含 /ip/),并检查页面是否可公开访问。可对同一 URL 使用 scrape_as_markdown 作为后备方案。
远程服务器连接失败
检查你的互联网连接和防火墙设置。
贡献
请遵循 Bright Data 的编码标准。
支持
渠道 | 链接 |
GitHub issues | |
文档 | |
电子邮件 |
许可证
MIT © Bright Data Ltd.
Available Tools
4 toolsscrape_as_markdownA
Scrape a single webpage URL with advanced options for content extraction and get back the results in MarkDown language. This tool can unlock any webpage even if it uses bot detection or CAPTCHA.
Inputs: url (required).
scrape_batchB
Scrape multiple webpages URLs with advanced options for content extraction and get back the results in MarkDown language. This tool can unlock any webpage even if it uses bot detection or CAPTCHA.
Inputs: urls (required).
search_engineC
Scrape search results from Google, Bing or Yandex. Returns SERP results in markdown (URL, title, description)
Inputs: query (required), engine, cursor.
search_engine_batchC
Run multiple search queries simultaneously. Returns JSON for Google, Markdown for Bing/Yandex.
Inputs: queries (required).
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections.
Loading tool schema changelog…
TDQS
Scored across 4 tools
Each tool has a clearly distinct purpose: scrape_as_markdown handles single webpage scraping, scrape_batch handles multiple webpages, search_engine scrapes single search queries, and search_engine_batch handles multiple search queries. There is no overlap in functionality, making tool selection straightforward for an agent.
All tool names follow a consistent snake_case pattern with clear verb_noun structures: scrape_as_markdown, scrape_batch, search_engine, and search_engine_batch. The naming is predictable and aligns well with the actions each tool performs.
With 4 tools, the server is well-scoped for web scraping and search functionality. Each tool earns its place by covering distinct aspects of the domain: single and batch operations for both webpage scraping and search engine queries, avoiding bloat while providing essential coverage.
The tool set covers core web scraping and search operations effectively, including single and batch modes. A minor gap exists in lacking tools for more advanced interactions like form submission or dynamic content handling, but the provided tools support key workflows without dead ends.
Maintenance
Related MCP Connectors
Web scraping, search, crawling, structured extraction and research for AI agents.
Web search, browser automation, scraping, crawling and CAPTCHA solving for AI agents.
Live web access for agents: scrape, SERP search, crawl/map, 100+ collectors, datasets, proxies.
Web data for agents. Extract web pages, crawl websites, discover URLs, and search the web.
Related MCP Servers
- AlicenseBqualityDmaintenanceEnables LLMs and AI agents to access real-time web data, search websites, and navigate the web without getting blocked. Includes 5,000 free monthly requests and supports web scraping, browser automation, and bypassing geo-restrictions.6024,067 npm1MIT
- AlicenseAqualityCmaintenanceEnables AI agents to crawl, scrape, search, and automate browsers with anti-bot bypass, providing fast web access via 22 tools.2256 npm3MIT
- AlicenseAqualityBmaintenanceProvides AI agents live web access through scraping, multi-engine search, site mapping, crawling, SEO audits, and 31 data collectors via natural language tool calls.984 npmMIT
- AlicenseNot gradedqualityCmaintenanceEnables AI agents to search the web, read and extract content from webpages, fetch JSON from REST APIs, and collect links while bypassing anti-bot protections.44 npmISC