【发布时间】:2018-04-04 06:17:48
【问题描述】:
> const puppeteer = require('puppeteer');
>
> (async () => {
> const browser = await puppeteer.launch();
> const page = await browser.newPage();
> await page.goto('https://en.wikipedia.org', {waitUntil: 'networkidle2'});
>
> await page.waitFor('input[name=search]');
>
> // await page.type('input[name=search]', 'Adenosine triphosphate');
> await page.$eval('input[name=search]', el => el.value = 'Adenosine triphosphate');
>
> await page.click('input[type="submit"]');
> await page.waitForSelector('#mw-content-text');
> const text = await page.evaluate(() => {
> const anchor = document.querySelector('#mw-content-text');
> return anchor.textContent;
> });
> console.log(text);
> await browser.close(); })();
这是使用 puppeteer (https://github.com/GoogleChrome/puppeteer) 填写表单的标准示例
现在我的问题是我是否有像 test.json 这样的外部 json 文件
{"搜索":"硫化氢"}
我想将我的 json 文件中的值用于
await page.$eval()
函数而不是像硬编码一样
await page.$eval('input[name=search]', el => el.value = 'Adenosine triphosphate');
有人可以帮忙吗?
【问题讨论】:
标签: javascript node.js git automation puppeteer