Просмотр исходного кода

added support of puppeteer-firefox

Gildas 5 лет назад
Родитель
Сommit
90e7889021
2 измененных файлов с 3 добавлено и 2 удалено
  1. 1 1
      cli/args.js
  2. 2 1
      cli/back-ends/puppeteer-firefox.js

+ 1 - 1
cli/args.js

@@ -80,7 +80,7 @@ const args = require("yargs")
 		"crawl-rewrite-rules": []
 	})
 	.options("back-end", { description: "Back-end to use" })
-	.choices("back-end", ["jsdom", "puppeteer", "webdriver-chromium", "webdriver-gecko"])
+	.choices("back-end", ["jsdom", "puppeteer", "webdriver-chromium", "webdriver-gecko", "puppeteer-firefox"])
 	.options("browser-headless", { description: "Run the browser in headless mode (puppeteer, webdriver-gecko, webdriver-chromium)" })
 	.boolean("browser-headless")
 	.options("browser-executable-path", { description: "Path to chrome/chromium executable (puppeteer, webdriver-gecko, webdriver-chromium)" })

+ 2 - 1
cli/back-ends/puppeteer-firefox.js

@@ -87,10 +87,11 @@ async function getPageData(browser, page, options) {
 	const injectedScript = await scripts.get(options);
 	await page.evaluateOnNewDocument(injectedScript);
 	if (options.browserDebug) {
-		await page.waitFor(3000);
+		await page.waitForTimeout(3000);
 	}
 	await pageGoto(page, options);
 	try {
+		await page.evaluate(injectedScript);
 		return await page.evaluate(async options => {
 			const pageData = await singlefile.lib.getPageData(options);
 			if (options.includeInfobar) {