无法通过木偶戏得到最终的帧内容

时间:2018-01-29 08:28:04

标签: phantomjs frame puppeteer

重现的步骤

我的环境:

  • Puppeteer版本:1.0.0
  • 平台/操作系统版本:Linux / centos7.0
  • 网址(如果适用):http://1255.ijkuek.cn/
  • Node.js版本:v9.4.0

哪些步骤会重现此问题?

const puppeteer = require('puppeteer');
var args = process.argv.splice(2)
var url = args[0]
var ua = 'Mozilla/5.0 (Windows NT 6.1; WOW64; rv:43.0) Gecko/20100101 Firefox/43.0';
puppeteer.launch({
    ignoreHTTPSErrors:true,
    timeout: 1000,
    args: ['--no-sandbox', '--disable-setuid-sandbox']}).then(async browser => {
    const page = await browser.newPage();
    await page.setExtraHTTPHeaders({
        'upgrade-insecure-requests': '1'
    });
    page.setUserAgent(ua)
    page.setDefaultNavigationTimeout(25000)
    await page.setRequestInterception(true)
    page.on('request', (request) => {
        var type = request.resourceType()
        if (type == 'image' || type == 'media')
            request.abort();
        else{
            console.log("request: " + request.url())
            request.continue();
        }
    });
    page.on('response', (response) => {
        console.log('response: ' + response.url())
        if(type == 'document'){
            response.text().then(function (textBody) {
                console.log(textBody)
            })
        }
    });
    const response = await page.goto(url, {
        waitUntil: 'networkidle2',
    })
        .catch(function(err){ if(err.toString().indexOf("Timeout")) {
            browser.close();
            console.log("Timeout!")
            process.exit();
        }})
    browser.close();
});

预期结果是什么? 右侧重定向框架内容

会发生什么? 结果是超时(设置更大的超时数量无用)或重定向到错误的网址,最后,无法获得最终内容。但phantomjs可以得到它!

0 个答案:

没有答案