简体   繁体   中英

How can I select a button contained within an iFrame in Playwright (python) by index?

I am attempting to select a button within an iframe utilizing Python & Playwright... in Selenium I know you can do this by using indexes, is this possible in playwright, I've been digging through the documentation and can't seem to figure it out. The button contained within the iframe that I am trying to select is:

"button:has-text(\"Add New User\")"

The html code for the iframe I am using looks similar to this:

<iframe src="https://www.urlthatcannotbereturnedinpagehtml.com/veryparticularparameters" width="100%" style="height: 590px;"></iframe>

Does anyone have any thoughts? About at wits end here.... I've attempted to find the url by parsing the code for the webpage, but this portion can't be selected like that. I may just be at a loss with the documentation in playwright, I've spent so much time in selenium that this seems like an entire new language.

Thanks!

From what I understand, you have a page that has content within an iframe. You want to use Playwright to access elements within that frame.

The official docs to handle frames: Official docs: https://playwright.dev/docs/frames#frame-objects

You could then try something like this:

// Locate element inside frame
const iframeButton = await page.frameLocator('iFrame').locator("button:has-text(\"Add New User\")");
await iframeButton.click();

Notice that the example has the iFrame tag as locator, but you could and should use something more accurate like and id, name or url.

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM