@chegger/node-obscura-aws-lambda (英语)
AWS Lambda 特有节点.js 包装 淫荡 浏览器 二进制 .
- 阴道: 与此软件包相同的版本(参见
package.json; 已建标签和校验和已输入dist/build-metadata.json(中文(简体) ) - 目标运行时间 : AWS 兰布达
nodejs24.x关于 Linux x64 的
安装
npm install @chegger/node-obscura-aws-lambda
使用量
const { chromium } = require('playwright-core');
const { startObscura } = require('@chegger/node-obscura-aws-lambda');
async function main() {
const obscura = await startObscura({ stealth: true });
const browser = await chromium.connectOverCDP(obscura.endpoint);
try {
const context = browser.contexts()[0] || (await browser.newContext());
const page = await context.newPage();
await page.goto('https://example.com');
console.log(await page.title());
} finally {
await browser.close();
await obscura.close();
}
}
main().catch((error) => {
console.error(error);
process.exit(1);
});
如果您使用 CDK NodejsFunction强迫多克捆绑 所以邮站台阶
在 Linux x64 类似 Lambda 的环境中运行, 包括下载的二进制
在部署文物中:
const myLambdaFunction = new lambda.NodejsFunction(this, 'MyLambdaFunction', {
// ...
runtime: l.Runtime.NODEJS_24_X,
architecture: l.Architecture.X86_64,
bundling: {
forceDockerBundling: true,
nodeModules: ['@chegger/node-obscura-aws-lambda'],
},
});
API 密码
getBinaryPath()
返回已安装的 Lambda 特定 Obscura 二进制路径 .
startObscura(options?)
开始 obscura serve 并解决当 CDP 端点准备好.
选项 :
port?: numberhost?: stringstealth?: booleanstartupTimeoutMs?: numberextraArgs?: string[]
回返情况:
{
endpoint: string;
wsEndpoint: string;
close: () => Promise<void>;
}
构建 Lambda 艺术
此回向为多克先. 您不需要为主机安装 Rust 建立流动.
npm run build:artifact
该剧本将:
- 复制上游
obscura来源 - 在 Amazon Linux 2023 Docker 图像内构建它
- 软件包
obscura财务报告和审定财务报表obscura-worker改为:dist/obscura-x86_64-linux-lambda.tar.gz - 写入校验和并构建元数据
试一试已建成的文物
npm run smoke:test
运行 AWS Lambda 节点 24 基础图像中的已建二进制并等待
页:1 /json/version 上来.
环境变量
运行时间安装 :
OBSCURA_AWS_LAMBDA_RELEASE_TAG将软件包释放标记覆盖到 下载。 默认 :v${package.version}OBSCURA_AWS_LAMBDA_DOWNLOAD_BASE_URL覆盖二进制下载基础 URLNODE_OBSCURA_AWS_LAMBDA_SKIP_DOWNLOAD=1跳过二进制下载 安装
构建脚本 :
OBSCURA_UPSTREAM_REPO覆盖上游 Obscura git repoOBSCURA_UPSTREAM_TAG覆盖上游 Obscura 标记 。 默认 :v${package.version}OBSCURA_CARGO_FEATURES超过货运特性。 默认 :stealthOBSCURA_LAMBDA_DOCKER_TAG覆盖本地 Docker 构建器图像标签OBSCURA_LAMBDA_ARCHIVE覆盖烟雾测试所用的归档路径OBSCURA_LAMBDA_SMOKE_IMAGE覆盖 Lambda 基准图像 烟雾测试
释放
软件包版本和上游 Obscura 标签通过 package.json。 。 。 .
npm run version:set -- 0.1.9
git add package.json package-lock.json
git commit -m "Release 0.1.9 with upstream Obscura v0.1.9."
git push origin main
git tag v0.1.9
git push origin v0.1.9
然后CI构建了Lambda二进制,创建了"GitHub"发行版,并发布到npm.
许可证
麻省理工这个包装包。 它的下部仍然是Apache-2.0 上游项目.