puppeteer脱坑指南

记录puppeteer爬虫遇到的坑

1. page.$(selector)中,selector不精确
2. page.goto(url[, options]),跳转多个页面卡死的情况

page.$(selector)中,selector不精确

打开控制台,在页面查看器里右键点击需要用到的DOM,Copy -> Copy Selector,此时复制到的就是DOM元素在本页面最精确的节点路径
比如我要拿到思否首页的logo的节点路径
《puppeteer脱坑指南》
body > div.global-nav.sf-header.sf-header--index > nav > div.row.hidden-xs.hidden-sm > div.col-sm-8.col-md-9.col-lg-9 > div.sf-header__logo > h1 > a

page.goto(url[, options]),跳转多个页面卡死的情况

puppeteer爬虫是去拿的页面的dom,{waitUntil: ‘domcontentloaded’},加上这句话表示等待页面DOM加载完成后才有返回值,这样避免了页面DOM没加载完就去爬数据而导致的错误
await page.goto(url, {waitUntil: ‘domcontentloaded’});
《puppeteer脱坑指南》

    原文作者:Ezio
    原文地址: https://segmentfault.com/a/1190000020741917
    本文转自网络文章,转载此文章仅为分享知识,如有侵权,请联系博主进行删除。
点赞