javascript - Puppeteer 如何直接转到所需的页面
问题描述
const puppeteer = require('puppeteer');
(async () => {
// 1. Launch the browser
const browser = await puppeteer.launch({
"args": [
'--remote-debugging-port=9222'
],
"headless": false,
});
// Open a new page
const page = await browser.newPage();
// Set UserAgent to Firefox
await page.setUserAgent('Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/66.0.3359.139 Safari/537.36');
await page.setBypassCSP(true);
// Navigate to URL
await page.goto('https://www.google.com');
当我运行上面的脚本时,它会打开一个选项卡about:blank
,然后打开另一个选项卡google.com
我怎样才能只打开谷歌页面?
或者让它google page
从about:blank page
.
解决方案
当您调用puppeteer.launch
它时,它会自动打开一个页面。接下来,当您调用 时browser.newPage
,这将为您提供另一个页面(选项卡)。
如果您不需要额外的页面,您可以使用作为puppeteer.launch
. 就像是:
// 1. Launch the browser
const browser = await puppeteer.launch({
"args": [
'--remote-debugging-port=9222'
],
"headless": false,
});
// 2. Get the default page
const pages = await browser.pages();
const page = pages[0];
//3. Use this page object subsequently
await page.goto('https://www.google.com');
推荐阅读
- r - 获取两个数据集之间已删除的唯一值
- javascript - How to GET all data from DynamoDB with Lambda Functions
- julia - Flux.jl GPU 支持 M1 Mac?
- javascript - 与 npm repo 共享名称时链接本地依赖项
- android - 在 AGP 7.1.0-alpha03 中找不到 coreLibraryDesugaringEnabled
- javascript - JSZip 中的内存泄漏
- sed - sed:跳过第一次出现的匹配,然后对于所有其他出现,删除包含匹配的整行
- phpmailer - 将 MAMP 更新到 6.4 版后,PHPmailer 在本地停止工作
- json - 在 MongoDB 中导出命令
- angular - Angular 11 中 *NgIf 的常见条件