我现在在页面上有一个项目列表,单击每个项目都会打开一个新选项卡,我需要对其进行解析并返回到原始页面,然后单击下一个项目。因此,需要对所有项目重复执行此操作。代码如下:
for(let k =0 ;k<item_arr.length;k++) {
let item_id = item_arr[k];
console.log("=====inside for loop======");
console.log("=====ITEM ID:::::======"+item_id);
try
{
console.log("=====before click======");
let item_d = await page.$('div[id="'+item_id+'"]');
await item_d.click();
console.log("=====after click======");
}
catch (e)
{
console.log("Error >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> :"+e);
}
pages = await browser.pages();
count = pages.length;
console.log("==========count number of pages"+count);
}
我收到如下所述的错误:
(node:12280) UnhandledPromiseRejectionWarning: ReferenceError: pages is not defined
那么如何处理刮擦?
答案 0 :(得分:0)
我认为页面是对象而不是数组,因此需要解决,
Object.keys(pages).length
我加载这样的页面/标签,可能没有用。
const pages = await browser.pages();
await pages[0].setViewport({ width: 1280, height: 1080 })
await pages[0].goto(URL);