话不多说,上代码
//等待登陆按钮selector出现在页面中
await page.waitForSelector(SELECTOR.LOGIN_BTN)
//页面等待3秒
await page.waitForTimeout(3000)
//等待登录按钮XPath出现在页面中
await page.waitForXPath(XPATH.LOGIN_BTN)
await page.goto(url)
//等待页面加载完成
await page.waitForNavigation();
puppeteer——等待页面元素、等待函数、等待加载、请求、响应
往往页面不会“唰”的一下马上加载好,甚至有时候网络影响会导致半天加载不出我们需要的页面元素,这里就需要waitFor全家桶了
waitForSelector与waitForXPath
大白话翻译:等待选择器/XPath
这两个其实说到底长得都差不多,都是右键copy就有选项是要selector还是XPath,用法一致,长相也亲兄弟,连参数都一样,更多更具体就不细说了可以自己查
但这里有一个非常好用的小点!
来看API:
returns: <Promise<?ElementHandle>>
看到了什么?等待函数返回的居然是元素句柄??
所以就有了下面这种写法:
const login_btn =