我试图单击div中以下CSS选择器的复选框:
#sheet1 > tbody > tr:nth-child(2) > td > div > div.GMPageOne > table > tbody > tr.GMDataRow.GMClassFocused > td.GMClassFocusedCell.GMWrap0.GMAlignCenter.GMBool0.GMCell.IBSheetFont0.GMEmpty.HideCol0C2
我尝试了与Google搜索不同的方法,但是没有用。
const example = await page.$x('//*[@id="sheet1"]/tbody/tr[2]/td/div/div[1]/table/tbody/tr[2]/td[3]',{waitUntil: 'networkidle0',});
delay(1000);
await example[0].click();
这给出了一个错误:
TypeError:无法读取未定义的属性“ click” 在C:\ Apps \ headless \ node_modules \ project \ esi.js:60:20 在process._tickCallback(internal / process / next_tick.js:68:7)
答案 0 :(得分:1)
它看起来像语法无效。 试试这个:
await page.waitForXPath('//*[@id="sheet1"]/tbody/tr[2]/td/div/div[1]/table/tbody/tr[2]/td[3]', 5000);
const [example] = await page.$x('//*[@id="sheet1"]/tbody/tr[2]/td/div/div[1]/table/tbody/tr[2]/td[3]');
if(example) await example.click();