您如何在centos 6/7服务器上运行木偶铬/铬`headless:false`

时间:2019-07-15 12:12:55

标签: centos7 chromium puppeteer headless

我正在尝试从网站上获取一些信息,该数据在初始加载时不可用,因此我需要将其加载到浏览器中,以便进行抓取。

我正在使用操纵up。当我在centos 7服务器中使用headless:false运行Chrome时,出现此错误(chrome:5006): Gtk-WARNING **: cannot open display:

我安装了xorg-x11-server-Xvfb和所有依赖项。

铬本身在headless:true时运行,但是我要打开的站点为net::ERR_CONNECTION_RESET

我如何告诉Chrome使用Xvfb服务器?甚至有可能吗?

我的代码:

    const browser = await puppeteer.launch({ headless: false, args: ['--no-sandbox'] });
    const page    = await browser.newPage();
    await page.goto('https://targetdomain/', { waitUntil: 'networkidle2' });

1 个答案:

答案 0 :(得分:0)

似乎有一个解决我问题的简单方法。

在这里找到解决方案:https://github.com/GoogleChrome/puppeteer/issues/1477

await page.setUserAgent('Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/68.0.3419.0 Safari/537.36');