puppeteer ---node爬虫

Node.js Puppeteer 实战
本文介绍了一个使用 Node.js 的 Puppeteer 模块进行网页抓取的实际案例。演示了如何模拟 iPhone 6 设备访问百度首页,并获取页面尺寸及截图。
/*
* node爬虫测试:
*   https://github.com/GoogleChrome/puppeteer
* */


const puppeteer = require('puppeteer');
//模拟登陆设备
const devices = require('puppeteer/DeviceDescriptors');
const iPhone = devices['iPhone 6'];
//判断是否调试
let isdev = function (flag) {
  if (flag) {
    return {
      'headless': false,
      'slowMo': 50000000000000
    }
  }
}


async function findPage() {
  const browser = await puppeteer.launch(isdev(true));  //启动爬虫
  const page = await browser.newPage();  //新建浏览器页面
  await page.emulate(iPhone);
  await page.goto('http://www.baidu.com');  //网址的跳转

  //页面信息抓取...
  const dimensions = await page.evaluate(() => {
    return {
      width: document.documentElement.clientWidth,
      height: document.documentElement.clientHeight,
      deviceScaleFactor: window.devicePixelRatio,
    };
  });
  console.log('Dimensions:', dimensions);
  await page.waitFor(2 * 1000);  //打开页面之后,等待

  //页面截图
  await page.screenshot({path: './a.png'});
  await browser.close();  //关闭浏览器页面
}

findPage();
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值