我正在尝试将jQuery注入我的Puppeteer页面,因为document.querySelector这并不适合我:
document.querySelector
async function inject_jquery(page){ await page.evaluate(() => { var jq = document.createElement("script") jq.src = "https://code.jquery.com/jquery-3.2.1.min.js" document.querySelector("head").appendChild(jq) }) const watchDog = page.waitForFunction('window.jQuery !== undefined'); await watchDog; }
结果是它大多超时。有没有人有办法解决吗?
我曾经page.addScriptTag注入js文件。
page.addScriptTag
js
... await page.addScriptTag({url: 'https://code.jquery.com/jquery-3.2.1.min.js'}) ...
page.addScriptTag-文档
使用示例 puppeteer: 0.12.0
puppeteer: 0.12.0
import { launch } from 'puppeteer' (async () => { const browser = await launch({headless: false}); const page = await browser.newPage(); await page.goto('https://example.com', {waitUntil: 'networkidle'}); await page.addScriptTag({url: 'https://code.jquery.com/jquery-3.2.1.min.js'}); await page.close(); await browser.close(); })();