Вот ошибка:
Код: Выделить всё
selenium.common.exceptions.NoSuchElementException: Message: no such element: Unable to locate element: {"method":"css selector","selector":".first-part-1 .mat-grid-tile:nth-child(2) span"}
Код: Выделить всё
...
Код: Выделить всё
from selenium import webdriver
from selenium.webdriver.common.by import By
import time
class TestTest():
def setup_method(self, method):
options = webdriver.ChromeOptions()
options.add_experimental_option("detach", True)
self.driver = webdriver.Chrome(options=options)
def teardown_method(self, method):
self.driver.quit()
def test_test(self):
self.driver.get("https://erp.pgu.ac.ir/Dashboard")
time.sleep(10)
self.driver.set_window_size(1552, 832)
time.sleep(10)
# Switch to iframe
self.driver.switch_to.frame(1)
time.sleep(10)
# Attempt to click the element inside iframe
self.driver.find_element(By.CSS_SELECTOR, ".first-part-1 .mat-grid-tile:nth-child(2) span").click()
testClass = TestTest()
testClass.setup_method("")
testClass.test_test()
testClass.teardown_method("")
Я пробовал дождаться загрузки iframe, добавив time.sleep(10 ).
Я использую правильный селектор CSS, который работает при проверке страницы вручную.
Несмотря на это, я все равно получаю ошибку NoSuchElementException. Я ожидал, что Selenium найдет и щелкнет элемент, но, похоже, он не может его найти.
Подробнее здесь: https://stackoverflow.com/questions/790 ... namic-site