@agent_2203

Почему selenium заменяет iframe dict-ом?

61be2d6f43f33936379645.jpeg

Я пытаюсь получить все iframe

driver.find_elements(By.TAG_NAME, 'iframe')

На сайте их в общей сложности 12 штук, однако selenium в webElement-те выдает только первые два, остальные почему-то заменяет dict-ом

[<selenium.webdriver.remote.webelement.WebElement (session="3778147fe7f7578c58582ae8c7ffdd6e", element="f93ba67f-c6f7-417b-8d43-cd283ada8ffd")>, <selenium.webdriver.remote.webelement.WebElement (session="3778147fe7f7578c58582ae8c7ffdd6e", element="d9f42d67-02bf-4a21-b0ae-aa6486e69c8d")>, {}, {}, {}, {}, {}, {}, {'ontouchmove': {}, 'ontouchstart': {}}, {}, {}, {}]


С чем это может быть связано и как можно получить все iframe-мы ?
  • Вопрос задан
  • 210 просмотров
Пригласить эксперта
Ответы на вопрос 1
@ab1
1.Добавь print(driver.page_source) перед find elements, сравни с браузерным файлом
2.Если страница динамическая , надо делать time.sleep или другие виды задержки перед find_elements.
3. Fyi:Селением+chrome это и есть бот,на странице видна защита от бота

UPD
Какой адрес старицы и как она выглядит?
4. У меня нашлось 2 iframe-а на странице в Chrome и FF + shadowdom элемент в них cм картинку ниже, погугли про него
Я предпологаю что сайт пометил тебя как подозрительного и добавляет antibot protection

61c06112df92a617286679.png
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы