Puppeteer环境搭建

作者: 严北 | 来源:发表于2018-09-20 11:56 被阅读24次

    简介

    Puppeteer是Google开发并开源的一款工具,可用代码驱动浏览器操作。
    由于诸多优秀的特性,Puppeteer常被用在爬虫与自动化测试上。详细介绍参见官方README

    Puppeteer本身是个NodeJS的库,自动化脚本也需要使用NodeJS编写,如果对JS不了解建议先学习JavaScript基础语法,或者使用Selenium等其他工具去实现。

    对于一个陌生的工具,应当先检查是否适合自己,再去尝试使用,切莫盲目从众。

    配置

    Node环境配置

    下载并安装NodeJS:

    wget https://nodejs.org/dist/v8.12.0/node-v8.12.0-linux-x64.tar.xz
    tar xf node-v8.12.0-linux-x64.tar.xz
    mv node-v8.12.0-linux-x64 /usr/local/lib
    ln -s /usr/local/lib/node-v8.12.0-linux-x64/bin/npm /usr/local/bin/
    ln -s /usr/local/lib/node-v8.12.0-linux-x64/bin/node /usr/local/bin/
    

    *(可选)配置淘宝的源,加速npm包的下载:

    npm config set registry https://registry.npm.taobao.org
    

    安装Puppeteer

    配置淘宝的Puppeteer下载源,用于安装Chromium:

    export PUPPETEER_DOWNLOAD_HOST=https://storage.googleapis.com.cnpmjs.org
    npm i puppeteer
    

    国内不配置时会在卡在下载Chromium

    示例

    新建一个test.js

    const puppeteer = require('puppeteer');
    
    (async () => {
        const browser = await puppeteer.launch({
            ignoreHTTPSErrors: true,
            headless: false,
            args: ['--no-sandbox']
        });
        const page = await browser.newPage();
        await page.goto('https://intest.tech');
        await page.waitFor(5e3);
        await browser.close();
    })();
    

    运行:

    node test.js
    

    参考

    https://github.com/cnpm/cnpmjs.org/issues/1246#issuecomment-341631992

    推荐阅读

    https://github.com/GoogleChrome/puppeteer/blob/v1.8.0/docs/api.md

    相关文章

      网友评论

        本文标题:Puppeteer环境搭建

        本文链接:https://www.haomeiwen.com/subject/gowgnftx.html