隐形浏览器
这个包提供了代理浏览器的导航,刮取,点击,打字,截图和DOM快照工具. 用这个 puppeteer-extra, (中文(简体) ), puppeteer-extra-plugin-stealth, (中文(简体) ), puppeteer-core 财务报告和审定财务报表 cheerio 带有本地 Chrome 可执行文件.
安装
npm install @framers/agentos-ext-stealth-browser
同伴依赖 : @framers/agentos 有范围 >=0.10.40。 。 。 .
使用量
import { AgentOS } from '@framers/agentos';
const agentos = await AgentOS.create({
extensionManifest: {
packs: [
{
package: '@framers/agentos-ext-stealth-browser',
options: {
headless: true,
timeout: 30000,
viewport: { width: 1920, height: 1080 },
},
},
],
},
});
配置
| 选项 | 秘密编号 | 环境变量 | 需求 | 默认 |
|---|---|---|---|---|
headless | 无 | 无 | 没有 | 在工厂中未安装;发射开始 |
timeout | 无 | 无 | 没有 | 无法通过工厂; 传递给 Puppeteer |
userAgent | 无 | 无 | 没有 | 从内置池随机选择 |
viewport (对象 width 财务报告和审定财务报表 height(中文(简体) ) | 无 | 无 | 没有 | 在厂房中取消设置; 没有浏览器覆盖 |
executablePath | 无 | 无 | 没有 | OS 特定色调路径 |
enableEvasions | 无 | 无 | 没有 | 启用, 除非 false |
priority | 无 | 无 | 没有 | 50; falsy 值也使用此默认值 |
A. 背景情况 logger | 无 | 无 | 没有 | 未设置 |
A. 背景情况 onActivate | 无 | 无 | 没有 | 未设置 |
A. 背景情况 onDeactivate | 无 | 无 | 没有 | 未设置 |
设定 headless, (中文(简体) ), timeout 财务报告和审定财务报表 viewport 明确使用示例中的值。 工厂通过未定义的属性来覆盖服务构建者的默认. 使用这些平面选项名称, 而不是显示的点化配置名称 .
logger.info 接收生命周期信息。 上下文回调在激活和停用时运行;在引用回调前关闭浏览器.
工具
| 工具 | 它会做什么 |
|---|---|
stealth_navigate | 具有反检测功能的导航并返回页面文本、链接和可选的 HTML. |
stealth_scrape | 使用 CSS 选择器从当前页面中提取内容. |
stealth_click | 等待元素显出并点击. |
stealth_type | 键盘键入输入字段,并有默认键盘延迟. |
stealth_screenshot | 抓取当前页面或所选元素. |
stealth_snapshot | 返回交互式元素、链接和窗体的DOM快照. |
stealth_navigate
| 参数 | 类型 | 需求 | 说明 |
|---|---|---|---|
url | 字符串 | 对 | 要导航的 URL |
waitFor | 字符串, enum : load, (中文(简体) ), domcontentloaded, (中文(简体) ), networkidle0, (中文(简体) ), networkidle2; 默认 : networkidle2 | 没有 | 何时考虑完成导航 |
returnHtml | 布尔, 默认值 false | 没有 | 在回复中包含完整的 HTML |
returnText | 布尔, 默认值 true | 没有 | 在回复中包含已提取的文本 |
returnLinks | 布尔, 默认值 true | 没有 | 包含页面上找到的所有链接( 文本 + ref) |
maxTextLength | 数字,默认 50000 | 没有 | 要返回的页面文本的最大字符( 默认) 50000(中文(简体) ) |
stealth_scrape
| 参数 | 类型 | 需求 | 说明 |
|---|---|---|---|
selector | 字符串 | 对 | 匹配元素的 CSS 选择器 |
limit | 数字, 最少一个 | 没有 | 要返回的最大元素数量 |
attributes | 字符串数组 | 没有 | 要提取的特定属性 |
stealth_click
| 参数 | 类型 | 需求 | 说明 |
|---|---|---|---|
selector | 字符串 | 对 | 要单击元素的 CSS 选择器 |
waitForNavigation | 布尔, 默认值 false | 没有 | 点击后等待页面导航 |
stealth_type
| 参数 | 类型 | 需求 | 说明 |
|---|---|---|---|
selector | 字符串 | 对 | 输入元素的 CSS 选择器 |
text | 字符串 | 对 | 文本改为类型 |
delay | 数字,默认 50 | 没有 | 按键之间延迟( ms) 。 默认为 50 用于类似人类的打字. |
clear | 布尔, 默认值 false | 没有 | 输入前清除已存在的文本 |
stealth_screenshot
| 参数 | 类型 | 需求 | 说明 |
|---|---|---|---|
fullPage | 布尔, 默认值 false | 没有 | 抓取完整可滚动页面 |
selector | 字符串 | 没有 | 要捕获的特定元素的 CSS 选择器 |
format | 字符串, enum : png, (中文(简体) ), jpeg, (中文(简体) ), webp; 默认 : png | 没有 | 图像格式 |
quality | 数字,最小零,最大 100默认值 80 | 没有 | Jpeg/webp的质量0 改为 100(中文(简体) ) |
stealth_snapshot
| 参数 | 类型 | 需求 | 说明 |
|---|---|---|---|
includeLinks | 布尔, 默认值 true | 没有 | 在快照中包含链接 |
includeForms | 布尔, 默认值 true | 没有 | 在快照中包含窗体 |
页:1
当一个工具首次使用时,浏览器会懒散地发射,并且仍然在包的工具之间共享,直到失效. 默认可执行路径为 C:\Program Files\Google\Chrome\Application\chrome.exe 在窗口上, /Applications/Google Chrome.app/Contents/MacOS/Google Chrome 关于macOS和 /usr/bin/google-chrome 在 Linux 上。 设定 executablePath 换个地方.
点击和打入会改变页面并触发其动作. 启动旗下会禁用浏览器沙盒和网络安全,并允许不安全的内容. enableEvasions: false 跳过为该服务应用隐形插件,但该服务仍然应用发射旗,HTTP头和页面级别覆盖.
导航失败返回零状态和错误控制台消息的部分内容;导航工具仍然返回 success: true 为了这个结果。 Scrape 失败返回空元素列表 。 点击并键入失败返回 success: false。 。 。 .
导航文本被切换为 maxTextLength,带有截取元数据。 最多保留服务 100 控制台消息 。 屏幕截图返回基数64的图像数据;所报道的维度来自取景口. 零截图 quality 倒计时 80。 。 。 .
许可证
阿帕奇 - 2.0