What does #document mean?

html, selenium, selenium-chromedriver, selenium-webdriver

Solution

Just to summarize on what I learnt and implemented.

`#document` is a virtual element, which doesn't really mean anything.

If you have mulitple frames/framesets, you will have to switch frames.

a. so first get to the default content. `driver.switch_to_default_content()`

b. then get to the frame that you want to work with. `frame = driver.find_element_by_name('mainFrame')`

Then play with the elements in that frame.

Problem

This is the HTML file I have. I am trying to use Selenium-Webdriver API along with ChromeDriver to `send_keys` to an `input` filed inside the `<body>`. But I can't access anything which is inside of `#document`. I cannot figure out why. Can someone please tell me what this `#document` means and how can I access any of the elements inside this using Selenium. ``` <html> <head>…<head> <frameset > <frame>...</frame> <frame name="mainFrame" src> #document <html> <head>…</head> <body>…</body> </html> </frame> </frameset> </frameset> ``` This is a router webpage, the actual webpage is HUGE, so I haven't pasted it here.

Original source

Related problems