page.waitForNavigation: 但我们通过代码执行到页面跳转时,我们需要等待跳转完成再作其他事情。使用page.waitForNavigation会等待跳转完成。(一般作用在点击链接或按钮的页面跳转功能上)
非常好的视频:https://www.youtube.com/channel/UC6zpMYvmo86MrylcJG4PH6A/videos ,从10.2开始看
 
 
中文api查询: https://zhaoqize.github.io/puppeteer-api-zh_CN/#/
其他参见:
https://www.bilibili.com/video/av21754950/?spm_id_from=trigger_reload
https://www.jianshu.com/p/eee456d7543f
 
1.浏览器控制台执行: await page.evaluate(() => console.log(`url is ${location.href}`));  //  page.evaluate浏览器执行
2.page.on('console', msg => console.log('PAGE LOG:', msg.text()));  // page.on('console',function(){})  page.on 监听浏览器事件,不如click,mouseover...所有事件都能监听,这里监听的浏览器的console事件
3.获取页面元素,queryselector获取单个(简写为$eval), querySelectorAll获取多个(简写为$$eval)
4page.waitFor(pars), 如果pars是数字表示超时时间; 如果是字符串表示选择器(等价于 page.waitForSelector 或 page.waitForXPath); 如果是function等价于page.waitForFunction()注意只有函数return true才结束;三种。
注意waitFor原意是等待什么的返回true,如果是function的话,function会循环执行直到function返回true(意思是如果function不返回true,且不超时,会死循环)。 如果要控制循环,需要使用this对象

puppeteer 相关知识的更多相关文章

  1. 【Python五篇慢慢弹(5)】类的继承案例解析,python相关知识延伸

    类的继承案例解析,python相关知识延伸 作者:白宁超 2016年10月10日22:36:57 摘要:继<快速上手学python>一文之后,笔者又将python官方文档认真学习下.官方给 ...

  2. 移动WEB像素相关知识

    了解移动web像素的知识,主要是为了切图时心中有数.本文主要围绕一个问题:怎样根据设备厂商提供的屏幕尺寸和物理像素得到我们切图需要的逻辑像素?围绕这个问题以iphone5为例讲解涉及到的web像素相关 ...

  3. listener监听器的相关知识

    从别人的博客上我学习了listener的相关知识现在分享给大家 1.概念: 监听器就是一个实现特定接口的普通java程序,这个程序专门用于监听另一个java对象的方法调用或属性改变,当被监听对象发生上 ...

  4. UIViewController相关知识

    title: UIViewController 相关知识date: 2015-12-13 11:50categories: IOS tags: UIViewController 小小程序猿我的博客:h ...

  5. 【转】java NIO 相关知识

    原文地址:http://www.iteye.com/magazines/132-Java-NIO Java NIO(New IO)是从Java 1.4版本开始引入的一个新的IO API,可以替代标准的 ...

  6. NSString使用stringWithFormat拼接的相关知识

    NSString使用stringWithFormat拼接的相关知识 保留2位小数点 1 2 3 4 //.2代表小数点后面保留2位(2代表保留的数量) NSString *string = [NSSt ...

  7. iOS网络相关知识总结

    iOS网络相关知识总结 1.关于请求NSURLRequest? 我们经常讲的GET/POST/PUT等请求是指我们要向服务器发出的NSMutableURLRequest的类型; 我们可以设置Reque ...

  8. 电路相关知识--读<<继电器是如何成为CPU的>>

    电路相关知识–读<<继电器是如何成为CPU的>> */--> *///--> *///--> 电路相关知识–读<<继电器是如何成为CPU的> ...

  9. 地址标记,SpringMVC转发与调用相关知识存档

    1.mytest_mavenprj1中,index的 <a href="login/login.html">点击登录</a> 与 <a href=&q ...

随机推荐

  1. Java 5大内存区域和对象的创建过程

    1.Java运行时数据区 方法区,堆线程共享.虚拟机栈,本地方法栈和程序计数器线程私有. 2.程序计数器(PC计数器) 占用较小的一块内存空间,当执行Java方法时记录正在执行的虚拟机字节码指令地址, ...

  2. python类的__new__和__init__

    python的类,和其他语言有一点不太一样,就是,他把新建一个类和初始化一个类,分成了两个方法: __new__ __init__ 当然,想想就知道,肯定是__new__先发生,然后才是__init_ ...

  3. Ubuntu-16.04安装Xdebug-2.2.5及相关介绍

    Xdebug是一个开放源代码的PHP程序调试器(即一个Debug工具),可以用来跟踪,调试和分析PHP程序的运行状况.在日常开发中,我们会使用如 print_r() var_dump()等函数来进行调 ...

  4. nodejs获取ASP.Net WebAPI(IIS Windows验证)

    处理了很多天,终于使用Nodejs可以发出请求至WebAPI,能够正常处理数据了 首先加入npm包 npm install httpntlm 在app.js中加入代码 var httpntlm = r ...

  5. unused import statement android studio 解决方法

    解决方法:“file”-->“invalidate caches/restart” 解决 感谢大神的解答

  6. pyinstaller对多进程程序的打包

    在使用python的第三方库pyinstaller对多进程程序进行打包时,程序不能正常的运行,但是后台却有多个进程一直在使用资源. 解决方法很简单,在if __name__ == '__main__' ...

  7. 一条命令搞定在VMware中的Ubuntu14.04 64 位安装Docker

    对,就是这么炫酷! curl -sSL https://get.docker.com/ | sudo sh 如果提示没有装curl就apt-get install一下,另外提醒一下必须是64位的ubu ...

  8. Verify Preorder Serialization of a Binary Tree -- LeetCode

    One way to serialize a binary tree is to use pre-order traversal. When we encounter a non-null node, ...

  9. luogu P1855 榨取kkksc03

    题目描述 以下皆为真实的故事. 洛谷2的团队功能是其他任何oj和工具难以达到的.借助洛谷强大的服务器资源,任何学校都可以在洛谷上零成本的搭建oj并高效率的完成训练计划. 为什么说是搭建oj呢?为什么高 ...

  10. POJ 2082 Terrible Sets(单调栈)

    [题目链接] http://poj.org/problem?id=2082 [题目大意] 给出一些长方形下段对其后横向排列得到的图形,现在给你他们的高度, 求里面包含的最大长方形的面积 [题解] 我们 ...