class: Puppeteer

类Puppeteer是所有例子的开始。

1:puppeteer.connect(options)

该函数用于连接一个已经存在的浏览器实例对象。
Options.browserWSEndpoint :string 为browser.wsEndpoint()返回的对象。browser在后面会介绍到。

Option.signoreHTTPSErrors:boolean=false.标识是否忽略导航期间的https错误。

返回值:<Promise<Browser>> 返回连接到已经存在的浏览器实例对象的puppeteer。

code:
注意点:在连接生成的Puppeteer实例close前不能close被连接的Puppeteer.wsEndpoint()对应的实例。

'use strict';

constpuppeteer=require('puppeteer');

puppeteer.launch().then(asyncbrowser=>{

constpage=awaitbrowser.newPage();

constbrowserWSEndpoint=browser.wsEndpoint();

puppeteer.connect({browserWSEndpoint}).then(asyncconnectBrowser=>{

constconnectPage=awaitconnectBrowser.newPage();

awaitconnectPage.goto('https://baidu.com');

awaitconnectPage.screenshot({path:'./puppeteer/examples.png',fullPage:true});

connectBrowser.close();

browser.close();

})

});

2:puppeteer.executablePath()

返回绑定的Chromium的路径。

code:

'use strict';

constpuppeteer=require('puppeteer');

console.log(puppeteer.executablePath());

3:puppeteer.launch([options])

该函数是最常用的,用于生成browser实例。

参数options包括:

ignoreHTTPSErrors:boolean=false 是否在导航期间忽略HTTPS错误。

headless:boolean=false 是否在无head模式下运行Chromium。

executablePath:string 要运行的Chromium可执行文件的路径,而不是捆绑的Chromium。如果是相对路径,从当前工作路径来识别。

slowMo:number 按照指定的毫秒减少Puppeteer操作。

args:Array<string> 传递给Chromium实例的其他参数。具体参数参照这里。

handleSIGINT:boolean=true 在Ctrl-C上关闭chrome进程。

timeout:number=30000 等待Chrome实例启动的最长时间(以毫秒为单位)。传递0禁用超时。

dumpio:boolean=false是否管浏览器进程stdout和stderr成process.stdout和process.stderr。

userDataDir:string 记录用户信息的路径。

code:

'use strict';

constpuppeteer=require('puppeteer');

puppeteer.launch().then(asyncbrowser=>{

constpage=awaitbrowser.newPage();

awaitpage.goto('https://baidu.com');

awaitpage.screenshot({path:'./puppeteer/launch.png',fullPage:true});

browser.close();

});
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • https://nodejs.org/api/documentation.html 工具模块 Assert 测试 ...
    KeKeMars阅读 6,414评论 0 6
  • Spring Cloud为开发人员提供了快速构建分布式系统中一些常见模式的工具(例如配置管理,服务发现,断路器,智...
    卡卡罗2017阅读 134,991评论 19 139
  • 原文:https://github.com/electron/electron/blob/master/docs/...
    Shmily落墨阅读 19,140评论 1 5
  • 原文:https://github.com/electron/electron/blob/master/docs/...
    Shmily落墨阅读 6,210评论 0 1
  • 1. 简介 1.1 什么是 MyBatis ? MyBatis 是支持定制化 SQL、存储过程以及高级映射的优秀的...
    笨鸟慢飞阅读 5,671评论 0 4