Puppeteer 如何进行设备模拟?

17 min read

Puppeteer可以通过puppeteer.devices模块来进行设备模拟。设备模拟可以模拟不同的设备,包括不同的屏幕分辨率、用户代理和视口大小等。以下是使用Puppeteer进行设备模拟的步骤:

  1. 导入puppeteer库:const puppeteer = require('puppeteer');
  2. 取得设备模拟配置:const devices = require('puppeteer/DeviceDescriptors');
  3. 通过puppeteer.launch方法启动浏览器实例,并设置defaultViewport属性为设备模拟的视口大小,例如:
    const browser = await puppeteer.launch();
    const page = await browser.newPage();
    await page.setViewport(devices['iPhone 6']);
    
  4. 如果需要更改用户代理,可以使用page.setUserAgent()方法,例如:
    await page.setUserAgent('Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/87.0.4280.88 Safari/537.36');
    
  5. 对于其他配置,可以直接在defaultViewport属性中设置,例如:
    await page.setViewport({
      width: 1280,
      height: 800,
      deviceScaleFactor: 1,
      isMobile: false,
    });
    
  6. 最后,使用page.goto()方法导航到需要测试的页面,例如:
    await page.goto('https://example.com');
    

以上是使用Puppeteer进行设备模拟的基本步骤,你可以根据需求来进行进一步调整和配置。