本帖最后由 一秉 于 2020-7-20 11:13 编辑
1、在上一篇文章中,我们已经学会了如何打开页面,接下来我们要实现用户的自动登录
2、实现思路:我们需要选中元素,获取元素的id或者class实现,
例如,我们需要定位用户名称的输入框,我们发现该输入框的id是ls_username,class有两个,分别是 px和vm
我们想要输入用户名,此时则可以通过如下代码实现:
await page.type('#ls_username', '一秉', {delay: 1}),
输入密码也是一样的操作,输入完之后我们就可以点击登录按钮,实现登录操作
3、创建auto.js,核心代码如下:
async function run(ws) {
try {
const browser = await puppeteer.connect({browserWSEndpoint: ws, defaultViewport: null});
const page = (await browser.pages())[0];
await page.goto('http://116.62.229.46/forum.php');
await page.type('#ls_username', '一秉', {delay: 0});
await page.type('ls_password', '######', {delay: 0});//输入密码,此处应该输入自己的密码
await page.evaluate(()=>{//通过evaluate可以执行js代码
var btns = document.querySelectorAll('.pn')// 选中所有class等于pn的组件
btn[0].click()//选择第一个,应根据实际情况来
})
//await page.goto('https://live.kuaishou.com/u/xiaoyi66688868');
await page.type()
} catch (err) {
console.log(err.message);
}
}
5、运行,进入到Chrome.exe的安装路径,打开cmd,输入 chrome.exe --remote-debugging-port=8080
打开创建的js,输入node auto.js port=8080
6、效果,系统自动打开浏览器,并且跳转到http://116.62.229.46/forum.php,输入用户名和密码,点击登录按钮
|