Javascript 如何使用Puppeter使用外部JSON文件填写表单

Javascript 如何使用Puppeter使用外部JSON文件填写表单,javascript,node.js,git,automation,puppeteer,Javascript,Node.js,Git,Automation,Puppeteer,这是一个使用木偶演员()填写表格的标准示例 现在我的问题是我是否有一个像test.json这样的外部json文件 {“搜索”:“硫化氢”} 我想在 > const puppeteer = require('puppeteer'); > > (async () => { > const browser = await puppeteer.launch(); > const page = await browser.newPage(); >

这是一个使用木偶演员()填写表格的标准示例

现在我的问题是我是否有一个像test.json这样的外部json文件

{“搜索”:“硫化氢”}

我想在

> 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(); })();
函数,而不是像这样硬编码

await page.$eval() 

有人能帮忙吗?

试试下面的代码或类似的代码:

var fs=require('fs');
var data=JSON.parse(fs.readFileSync('filename.JSON','utf8');
常量字段=对象项(数据);
const fillField=async(选择器、值、页面)=>{
常量元素=等待页面。$(选择器);
如果(!element)抛出新错误(`not find element with selector${selector}`);
等待元素。类型(值);
};
for(设i=0;i
await page.$eval('input[name=search]', el => el.value = 'Adenosine triphosphate');