const puppeteer = require('puppeteer');
const browser = puppeteer.launch(
{
headless: true // true关闭ui,false打开ui
}
);
const page = browser.newPage(); // 实例化
Api
page.goto(url) // 进入一个网站
page.click('#btn') // 点击某个元素
const input_areaUser = page.$('input'); // 获取某个元素
input_areaUser.type(username); // 给元素添加内容,如:输入框添加用户名
page.waitForNavigation(); // 未知,第二次跳转的时候需要用
page.screenshot({ path: 'zz.png' }); // 截图
browser.close(); // 关闭
举个?
const puppeteer = require('puppeteer');
const { login,exchange } = require('./config')
async function run(username,psd) {
const browser = await puppeteer.launch(
{
headless: true
}
);
const page = await browser.newPage();
await page.goto(login.url); // 跳转连接
// 点击输入框
await page.click(login.username)
// 获取输入框
const input_areaUser = await page.$(login.username);
// 输入用户名
await input_areaUser.type(username);
// 点击密码框
await page.click(login.psd)
// 获取密码框
const input_areaPsd = await page.$(login.psd);
// 输入密码
await input_areaPsd.type(psd);
// 点击登录按钮
await page.click(login.btn)
browser.close();
}
run(user,psd)
补充
20版本之后 隐藏ui界面 headless: 'new'
在服务器运行: args: ['--no-sandbox', '--disable-setuid-sandbox']