codecamp

Puppeteer 浏览器

class: Browser v0.9.0

  • extends: EventEmitter 当 Puppeteer 连接到一个 Chromium 实例的时候会通过 puppeteer.launch 或 puppeteer.connect 创建一个 Browser 对象。 下面是使用 Browser 创建 Page 的例子
    const puppeteer = require('puppeteer');
    puppeteer.launch().then(async browser = >{
    const page = await browser.newPage();
    await page.goto('https://example.com');
    await browser.close();
    });

一个断开连接和重连到 Browser 的例子:

const puppeteer = require('puppeteer');
puppeteer.launch().then(async browser = >{ // 存储节点以便能重新连接到 Chromium  
const browserWSEndpoint = browser.wsEndpoint();  // 从 Chromium 断开和 puppeteer 的连接  browser.disconnect();  // 使用节点来重新建立连接  
const browser2 = await puppeteer.connect({browserWSEndpoint});  // 关闭 Chromium  
await browser2.close();});

    

Events

  • browser.on('disconnected')v0.9.0
  • browser.on('targetchanged')v0.9.0
  • browser.on('targetcreated')v0.9.0
  • browser.on('targetdestroyed')v0.9.0

Methods

  • browser.browserContexts()v0.9.0
  • browser.close()v0.9.0
  • browser.createIncognitoBrowserContext()v0.9.0
  • browser.defaultBrowserContext()v0.9.0
  • browser.disconnect()v0.9.0
  • browser.newPage()v0.9.0
  • browser.pages()v0.9.0
  • browser.process()v0.9.0
  • browser.target()v0.9.0
  • browser.targets()v0.9.0
  • browser.userAgent()v0.9.0
  • browser.version()v0.9.0
  • browser.wsEndpoint()v0.9.0-

Events

browser.on('disconnected') v0.9.0 当 Puppeteer 从 Chromium 实例断开连接时被触发。原因可能如下: Chromium 关闭或崩溃 调用browser.disconnect 方法

browser.on('targetchanged') v0.9.0 <Target> 当目标的 url 改变时被触发

注意 这包括匿名浏览器上下文中的目标更改。

browser.on('targetcreated') v0.9.0 <Target> 当目标被创建时被触发,例如当通过 window.open 或 browser.newPage 打开一个新的页面。

注意 这包括匿名浏览器上下文中的目标创建。

browser.on('targetdestroyed') v0.9.0 <Target>

当目标被销毁时被触发,例如当一个页面被关闭时。

注意 这包括匿名浏览器上下文中的目标销毁。

Methods

browser.browserContexts()v0.9.0

  • returns: <Array<BrowserContext>>
Puppeteer 浏览器提取程序
Puppeteer 页面
温馨提示
下载编程狮App,免费阅读超1000+编程语言教程
取消
确定
目录

关闭

MIP.setData({ 'pageTheme' : getCookie('pageTheme') || {'day':true, 'night':false}, 'pageFontSize' : getCookie('pageFontSize') || 20 }); MIP.watch('pageTheme', function(newValue){ setCookie('pageTheme', JSON.stringify(newValue)) }); MIP.watch('pageFontSize', function(newValue){ setCookie('pageFontSize', newValue) }); function setCookie(name, value){ var days = 1; var exp = new Date(); exp.setTime(exp.getTime() + days*24*60*60*1000); document.cookie = name + '=' + value + ';expires=' + exp.toUTCString(); } function getCookie(name){ var reg = new RegExp('(^| )' + name + '=([^;]*)(;|$)'); return document.cookie.match(reg) ? JSON.parse(document.cookie.match(reg)[2]) : null; }