1

I'm navigating a webpage that is basically fully loaded by an ajax call, and I've included the corresponding wait:

self._wait = WebDriverWait(driver, 15)

The page consists only of some tables and buttons, but I can't find any of them with Selenium. I've tried every find_element() combination but nothing works.

I tried getting the html source from the page:

html = self.driver.page_source

but the only thing I get is:

<html><head></head><frameset cols="*" frameborder="0" framespacing="0" border="0">
    <frame name="MAIN" src="main.jsp">
</frameset></html>

though when I inspect it, there's a lot contained inside <ajax:page>

Any ideas?

gabopushups
  • 185
  • 2
  • 11
  • 1
    It's a frameset, so you have to switch the driver to the relevant frame. Use webdriverwait with ExpectedCondition, "FrameToBeAvailableAndSwitchToIt". – pcalkins Sep 22 '20 at 23:15

1 Answers1

1

You need to know something about why and how to switch into iframe.

such as this answer and this url

Peter Quan
  • 788
  • 4
  • 9