@calculator212

Почему Селениум не видит элемент?

Пытаюсь спарсить данные с virustotal через селениум, но почему-то пишет что не может найти элемент, хотя в самом окне браузера все нормально отображется
from selenium import webdriver
from selenium.webdriver.chrome.options import Options
from selenium.webdriver.chrome.service import Service
from webdriver_manager.chrome import ChromeDriverManager

from selenium.webdriver.support.ui import WebDriverWait
from selenium.webdriver.support import expected_conditions as EC
from selenium.webdriver.common.by import By
import os

options = Options()
driver = webdriver.Chrome(service=Service(ChromeDriverManager().install()), options=options)


driver.get('https://www.virustotal.com/gui/domain/facebook.com/details')
try:
    element = WebDriverWait(driver, 10).until(
        EC.presence_of_element_located((By.CLASS_NAME,"positives"))
    )
finally:
    driver.quit()
  • Вопрос задан
  • 310 просмотров
Решения вопроса 1
На сайте virustotal активно используется Shadow DOM.
63dced61dfaa3597847544.png
Чтобы обратиться к его содержимому в selenium нужно использовать метод shadow_root.
Подробнее об этом вы можете почитать например в этой статье на Хабре https://habr.com/ru/company/simbirsoft/blog/598407/
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

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

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