Javascript 如何在Puppeter$$eval函数的浏览器和节点上下文中使用变量?
我已将inputData变量作为可选参数传递给$$eval函数,以使其在节点上下文中可访问。尽管面临输入数据未定义的错误Javascript 如何在Puppeter$$eval函数的浏览器和节点上下文中使用变量?,javascript,puppeteer,Javascript,Puppeteer,我已将inputData变量作为可选参数传递给$$eval函数,以使其在节点上下文中可访问。尽管面临输入数据未定义的错误 list = await page.$$eval(inputData.LIST, lists => lists.map(list => ({ Name : list.querySelector(inputData.NAME).innerText, Currency : list.querySelector('
list = await page.$$eval(inputData.LIST, lists => lists.map(list => ({
Name : list.querySelector(inputData.NAME).innerText,
Currency : list.querySelector('.price-per-sellable-unit .currency') !== null ?
list.querySelector('.price-per-sellable-unit .currency').innerText :
"Out of stock",
Price : list.querySelector('.price-per-sellable-unit .value') !== null ?
list.querySelector('.price-per-sellable-unit .value').innerText :
"Out of stock"
})), inputData);
错误消息:
(node:3068) UnhandledPromiseRejectionWarning: Error: Evaluation failed: ReferenceError: inputData is not defined
at __puppeteer_evaluation_script__:2:43
at Array.map (<anonymous>)
at __puppeteer_evaluation_script__:1:17
(节点:3068)未处理的PromisejectionWarning:错误:评估失败:ReferenceError:未定义inputData
在(木偶演员)(评估)(剧本):2:43
在Array.map()处
在(木偶演员)(评估)(剧本):1:17
您需要提到的第二个参数:
list=wait page.$$eval(inputData.list,(lists,inputData)=>lists.map(list=>{
//^这里
})),输入数据);