使用php简单调取puppeteer 浏览器

in 编程
关注公众号【好便宜】( ID:haopianyi222 ),领红包啦~
阿里云,国内最大的云服务商,注册就送数千元优惠券:https://t.cn/AiQe5A0g
腾讯云,良心云,价格优惠: https://t.cn/AieHwwKl
搬瓦工,CN2 GIA 优质线路,搭梯子、海外建站推荐: https://t.cn/AieHwfX9

首先安装 node 和 puppeteer 

安装完成之后进行传值 

对应的js 代码是 

首页得安装yargs 模块 安装方法,在当前项目下 

npm install yargs --save ,我在安装过程中提示没有package.json,我解决方案是 创建一个package.json

在 package.json 中写入 {} 空的json  即可

 

'use strict';
const yargs = require('yargs');
var argv = yargs
    .options({
        't': {
            alias: 'text',
            demandOption: true,
            default: '',
            describe: 'Source text.',
            type: 'string'
        }
    })
    .argv;
var name =argv.t; //获取传递进来的参数

var urls =name;
const puppeteer = require('puppeteer');
(async ()=>{
    try{
        // 创建一个浏览器实例 Browser 对象
        let browser = await puppeteer.launch({
            // 是否不显示浏览器, 为true则不显示
            'args': ['--no-sandbox', '--disable-setuid-sandbox']
        });
        // 通过浏览器实例 Browser 对象创建页面 Page 对象
        let page = await browser.newPage();
        // 设置浏览器信息
        const UA = "Mozilla/5.0 (iPhone; CPU iPhone OS 11_0 like Mac OS X) AppleWebKit/604.1.38 (KHTML, like Gecko) Version/11.0 Mobile/15A372 Safari/604.1";
        await Promise.all([
            page.setUserAgent(UA),
            // 允许运行js
            page.setJavaScriptEnabled(true),
            // 设置页面视口的大小
            page.setViewport({width: 1100, height: 1080}),
        ]);
        // 地址
        let chapter_list_url =urls;
        await page.goto(chapter_list_url);
        let content= await page.content();
        console.log(content);
        // 使用css选择器的方式
        await browser.close();
        return content;
        //console.log(content);
    }catch(err){
        console.log(err)
    }
})();

下面是对应的php 代码 

$dir ="C:/node/node.exe C:/puppeteer/cctv.js -t $name";
exec($dir,$a,$b);
$html = implode("",$a);

把解析出来的$html 进行对应正则匹配, 

注意 我用 exec()函数在linux 服务器上一直无法返回内容,原因还不知道

 

 

 

 

关注公众号【好便宜】( ID:haopianyi222 ),领红包啦~
阿里云,国内最大的云服务商,注册就送数千元优惠券:https://t.cn/AiQe5A0g
腾讯云,良心云,价格优惠: https://t.cn/AieHwwKl
搬瓦工,CN2 GIA 优质线路,搭梯子、海外建站推荐: https://t.cn/AieHwfX9
扫一扫关注公众号添加购物返利助手,领红包
Comments are closed.

推荐使用阿里云服务器

超多优惠券

服务器最低一折,一年不到100!

朕已阅去看看