Files
RSSHub/lib/utils/puppeteer.js
2019-06-13 18:37:55 +08:00

28 lines
813 B
JavaScript

const config = require('@/config');
const puppeteer = require('puppeteer');
const options = {
args: ['--no-sandbox', '--disable-setuid-sandbox', '--disable-infobars', '--window-position=0,0', '--ignore-certifcate-errors', '--ignore-certifcate-errors-spki-list', `--user-agent=${config.ua}`],
headless: true,
ignoreHTTPSErrors: true,
userDataDir: './tmp',
};
module.exports = async () => {
let browser;
if (config.puppeteerWSEndpoint) {
browser = await puppeteer.connect({
browserWSEndpoint: config.puppeteerWSEndpoint,
});
} else {
browser = await puppeteer.launch(options);
}
setTimeout(async () => {
if ((await browser.process()).exitCode === null) {
browser.close();
}
}, 10000);
return browser;
};