🎁 惊喜折扣:订阅享受 1折优惠!

⚡️ Nstproxy - 超过1.1亿IP地址,助力闪电般快速的数据抓取与自动化,起价仅需0.1美元/GB。

  • 价钱
  • 文档
ZH
联系

© 2025 NST LABS TECH LTD. ALL RIGHTS RESERVED

产品

指纹浏览器
Nstbrowser RPA
绕过Cloudflare
网页解锁器

解决方案

云端指纹浏览器
多账户管理
网页抓取&自动化
反机器人检测

资源

价格
下载
RPA 市场
联盟计划
合作伙伴
博客
版本更新

支持

联系

文档

法规

条款
隐私政策
Cookie 政策

产品解决方案资源支持法规

产品解决方案资源

支持法规

© 2025 NST LABS TECH LTD. ALL RIGHTS RESERVED

返回博客
在 Ubuntu 22.04 上使用 Browserless
Browserless

如何在 Ubuntu 22.04 上使用 Browserless?

Ubuntu 22.04 是每个开发者的强大系统!它如何与 Browserless 配合使用?您将在本精彩博文中找到所有细节。
Sep 26, 2024Carlos Rivera

Ubuntu 22.04 是一个基于 Debian 的 Linux 操作系统,它是一个长期支持版本 (LTS),提供五年官方支持和安全更新。

它使用现代的 GNOME 桌面环境,优化了性能和稳定性,并包含最新的软件包和工具来支持新硬件。此外,Ubuntu 22.04 增强了安全性,并提供了更严格的默认安全设置和隐私保护。

Ubuntu 22.04 仍然受支持吗?

是的!

Ubuntu 22.04 的代号是 Jammy Jellyfish。它于 2022 年 4 月 21 日发布,是一个长期支持版本,支持五年,直到 2027 年 4 月。

什么是 Browserless?

Browserless 是一款强大的浏览器解决方案。基于云集群,Browserless 旨在以可扩展且高效的方式促进复杂的浏览器自动化任务、网络爬取和测试。它基于 Nstbrowser 的全面指纹库,并提供随机指纹切换,以满足用户对数据收集和自动化任务的需求。

您对网络爬取和 Browserless 有什么奇妙的想法和疑问吗?
让我们看看其他开发人员在 Discord 和 Telegram 上分享了什么!

如何在 Ubuntu 22.04 上使用 Browserless?

先决条件

在使用 Browserless 之前,您需要提前配置 NodeJS。

Ubuntu 22.04 自带 Node.js 软件包。虽然默认版本可能不是最新的,但足以满足基本开发需求。我们使用 apt 来安装它,这是一种简单的方法。

步骤 1. 更新本地软件包索引。

在安装 Node.js 之前,更新本地软件包索引:

Shell Copy
sudo apt update

步骤 2. 安装 Node.js。

使用 apt 包管理器安装 Node.js:

Shell Copy
sudo apt install nodejs -y

步骤 3. 安装节点包管理器。
npm 用于管理 Node.js 模块和包

Shell Copy
sudo apt install npm -y

步骤 4. 验证 Node.js 和 npm 是否已成功安装。

安装完成后,可以使用以下命令检查已安装的 Node.js 版本:

Shell Copy
node -v
npm -v

如果输出 显示版本信息,则表示安装成功。

使用 Browserless

步骤 1. 项目构建

  • 按照 Nstbrowser browserless API 文档 的说明,首先,我们需要获取 API Key:
API Key
  • 接下来,请创建一个节点项目
Bash Copy
mkdir nst-browserless && cd nst-browserless
npm init -y
  • 然后,只需选择您喜欢的 IDE 即可。我们在这里使用 VisualStudio:
Bash Copy
code .

目前,Browserless 仅支持 Puppeteer 和 Playwright。在本教程中,我们选择使用 puppeteer。接下来,是时候安装依赖项了:

Bash Copy
npm i --save puppeteer-core

到目前为止,我们已经完成了项目构建。

步骤 2. 编码

访问 Browserless

首先,编写一个简单的流程来验证 Browserless 是否可以正常访问:

JavaScript Copy
import puppeteer from "puppeteer-core";

const token = "your token"; // required
const config = {
    proxy: 'your proxy', // required
};
const query = new URLSearchParams({
    token: token, // required
    config: JSON.stringify(config),
});
const browserWSEndpoint = `https://less.nstbrowser.io/connect?${query.toString()}`;

const getBrowser = async () => puppeteer.connect({
    browserWSEndpoint,
    defaultViewport: null,
});

(async () => {
    let browser = null;
    await getBrowser()
        .then(async (browser) => {
            const page = await browser.newPage();
            await page.goto("https://nstbrowser.io");
            await page.screenshot({ path: "screenshot.png", fullPage: true });
            await page.close();
            await browser.close();
        })
        .catch((error) => {
            console.log(error);
        })
        .finally(() => browser?.close());
})()

能够生成屏幕截图表明我们可以正常使用 Browserless:

Check wether 6

抓取图片

接下来,我们去 Pixels 网站抓取一些图片:

  • 从主页顶部的 Wall Art 类别导航中进入子页面
  • 获取前六个图片地址并打印结果。
  1. 网站分析

找到导航菜单链接:

navigation menu link

经过分析,我们可以看到我们需要点击的链接是 menuTopArt id 下的 li 元素下的一个 a 标签。接下来,让我们进一步分析要爬取的元素:

analyse the element

它显示我们想要的图片所在的元素位于类名为 searchEngineFeaturedProductImage 的 img 元素的 src 值中,并进行懒加载。

  1. 抓取图片

修改我们之前编写的代码以完成抓取工作:

JavaScript Copy
import puppeteer from "puppeteer-core";

const token = "your api token";
const config = {
    proxy: 'your proxy', // required
};
const query = new URLSearchParams({
    token: token, // required
    config: JSON.stringify(config),
});
const browserWSEndpoint = `https://less.nstbrowser.io/connect?${query.toString()}`;

const getBrowser = async () => puppeteer.connect({
    browserWSEndpoint,
    defaultViewport: null,
});

(async () => {
    let browser = null;
    const pixelsWebsite = "https://pixels.com";
    await getBrowser()
        .then(async (browser) => {
            const page = await browser.newPage();
            await page.goto(pixelsWebsite);
            await page.waitForSelector("#menuTopArt", { timeout: 30000 });
            await page.click("#menuTopArt a"); // click 'Wall Art' menu
            await page.waitForSelector(".searchEngineFeaturedProductImage", { timeout: 30000 });
            const imageElements = await page.$$('.searchEngineFeaturedProductImage');
            for (const imageElement of imageElements) {
                const src = await page.evaluate(el => el.src, imageElement);
                if (src.includes("Blank.jpg")) { // break if Blank.jgp comes
                    break
                }
                console.log(src);
                // TODO: Add further processing for the image if needed
            }
            await page.close();
            await browser.close();
        })
        .catch((error) => {
            console.log(error);
        })
        .finally(() => browser?.close());
})()

太棒了!在这里您可以找到抓取结果:

ubuntu and Browserless scraping result

总结

Ubuntu 太棒了!在本博客中,我们了解到:

  • 在 Ubuntu 22.04 上安装 NodeJS 的步骤
  • 通过 Puppeteer 使用 Browserless 在 Pixels 网站上抓取图片地址链接数据

您可以看到整个过程非常轻便快捷,而且过程也非常简单。

现在开始学习更多 Browserless 的玩法吧!

更多
HTTP/2绕过
Browserless
HTTP/2指纹识别是什么以及如何绕过它?
学习如何使用六种强大的方法绕过 Web 抓取中的 HTTP/2 指纹识别,从使用真实浏览器到基于云的 Browserless。躲避现代反机器人防御的检测。
Jun 03, 2025Carlos Rivera
在 Nstbrowser Docker 中加载浏览器扩展
Browserless
如何在 Nstbrowser Docker 中加载浏览器扩展?
学习在 Nstbrowser 中上传扩展的两种方法以及在 Docker 中启动它们的步骤。
Mar 19, 2025Carlos Rivera
在Docker中启动Nstbrowser配置文件
Browserless
如何在Docker中启动Nstbrowser配置文件?
学习如何在 Docker 中启动 Nstbrowser 配置文件,同步跨环境的数据,并使用 API 自动化工作流程。本指南涵盖从设置到执行的全部内容。
Mar 14, 2025Carlos Rivera
如何使用Nstbrowser的无头浏览器自动解决Cloudflare Turnstile (2025)
BrowserlessCloudflare BypassHeadless Browser
如何使用 Nstbrowser 的 Browserless 自动解决 Cloudflare Turnstile (2025)
学习如何使用Nstbrowser的无头浏览器服务和Puppeteer绕过Cloudflare Turnstile。本指南将引导您完成设置、实现以及在确保合规性和效率的同时自动化网页抓取任务的优势。
Mar 07, 2025Robin Brown
如何使用Nstbrowser的无头浏览器绕过Cloudflare 5s挑战(2025)
BrowserlessCloudflare Bypass
如何使用Nstbrowser的无头浏览器绕过Cloudflare 5s挑战(2025)
学习如何使用 Nstbrowser 的无浏览器服务和 Puppeteer 来绕过 Cloudflare 的 5s 挑战。本指南将引导您完成设置、实现以及在确保合规性和效率的同时自动化网页抓取任务的优势。
Mar 06, 2025Robin Brown
AI 驱动浏览器
Browserless
Browserless:最佳AI驱动浏览器,简化您的网络互动
本文探讨了AI代理与Browserless强大集成以简化和增强网页抓取的方式。
Jan 24, 2025Robin Brown
目录