如何在当前的Chrome浏览器中使用puppeteer(保留我的凭据)

时间:2018-11-14 15:45:23

标签: javascript node.js puppeteer

我实际上是在尝试使用puppeteer进行抓取,并且我需要使用当前的chrome保留我的所有凭据,并使用它代替每次重新登录和键入密码的时间,而这真的很浪费时间!

是否有连接方法?怎么做 ? 我实际上正在使用节点v11.1.0 和puppeteer 1.10.0

let scrape = async () => {
const browser = await log()
const page = await browser.newPage()           
const delayScroll = 200
// Login 
await page.goto('somesite.com');
await page.type('#login-email', '*******);
await page.type('#login-password', "******");
await page.click('#login-submit');
// Wait to login
await page.waitFor(1000);

}

现在,如果我不需要使用它并继续浏览页面(无头,我不想看到页面打开,而只是在节点中使用信息抓取),那将是完美的选择,但是使用当前的镶边谁不需要登录即可获得我需要的信息。 (因为最后我想将其用作chrome的扩展)

如果有人知道该怎么做,请提前

1 个答案:

答案 0 :(得分:3)

首先欢迎社区。

您可以使用Chrome而不是Chromium,但在我看来,我确实遇到了很多错误,并导致个人标签混乱。因此,您可以创建和保存配置文件,然后可以使用当前或新帐户登录。

在您的代码中,您有一个名为“ log”的函数,我想您已在其中设置了启动puppeeteer。

const browser = await log()

在该函数中使用参数并为您的个人资料数据创建一个相对目录:

const browser = await puppeteer.launch({
    args: ["--user-data-dir=./Google/Chrome/User Data/"]
});

运行您的应用程序,使用一个帐户登录,下次输入时,您应该会看到您的凭据

如有疑问,请添加评论。

其他:函数名称应以大写字母“ await Log();”开头