Ad

Puppeteer - Click On Button By Class Name?

A. Consistency is all over the place; running !headless, I watch it sometimes work, sometimes it doesn't (like types in wrong data), it's really 50/50. How can my code be optimized for 100% reliability?
Update: Fixed inconsistencies by implementing a promise delay function & delaying actions.

How can I click on a button that is not a submit type nor has a name nor id?

<button class="sb-frap" data-e2e="sendGift">Send gift</button>

JS Path:

document.querySelector("#js-content > div > div:nth-child(6) > span > div > div.absolute.bg-white.overflow-auto.content___2_l5Q > div > div > div > div > div.invisible.base___3dWsJ.alwaysRelative___3FHV5 > div > span > div > button")
await Promise.all([
 await page.waitForSelector(".sb-frap"),
 await page.click('button[class=".sb-frap"]'),
  ]);
})();

Any help will greatly appreciated!

Ad

Answer

Solution = Inspect Element -> Right click -> Copy -> Copy Selector

  await Promise.all([
      await page.click( paste selector here )
    ]);
Ad
source: stackoverflow.com
Ad