Подтвердить что ты не робот

Что означает # документ?

Это файл HTML, который у меня есть. Я пытаюсь использовать API Selenium-Webdriver вместе с ChromeDriver до send_keys до input, хранящегося внутри <body>. Но я не могу получить доступ к чему-либо, находящемуся внутри #document. Я не могу понять, почему. Может кто-нибудь, пожалуйста, скажите мне, что означает этот документ, и как я могу получить доступ к любому из элементов внутри этого, используя Selenium.

<html>
<head>…<head>
<frameset >
    <frame>...</frame>
        <frameset>
            <frame name="mainFrame" src>
                #document
                    <html>
                      <head>…</head>
                      <body>…</body>
                    </html>
        </frame>
    </frameset>
</frameset>

Это веб-страница маршрутизатора, фактическая веб-страница огромна, поэтому я не вставлял ее здесь.

enter image description here

4b9b3361

Ответ 1

Просто подведем итог тому, что я узнал и внедрил.

  • document - это виртуальный элемент, который на самом деле ничего не значит.

  • Если у вас многоуровневые фреймы/фреймы, вам придется переключать кадры.

    а. поэтому сначала перейдите в содержимое по умолчанию. driver.switch_to_default_content()

    б. затем перейдите к кадру, с которым вы хотите работать. frame = driver.find_element_by_name('mainFrame')

  • Затем играйте с элементами в этом фрейме.