@t4kizava

Код не выдает желаемый результат при парсинге страницы на selenium python, что делать?

Написал парсер для сайта, по идеи должен выдавать все названия аниме со страницы,
но выдает только ошибки и непонятные сообщения(см. прикреплённый скрин)
код прикрепил
Нарушение п.3.8 Регламента. Скриншоты фрагментов кода запрещены.

import time
from selenium import webdriver
from selenium.webdriver.common.by import By
from selenium.webdriver.common.keys import Keys
from selenium.webdriver.support.ui import WebDriverWait
from selenium.webdriver.support import expected_conditions as EC

driver = webdriver.Chrome()
driver.get('https://www.afisha.ru/selection/luchshie-anime-serialy/')

titles = WebDriverWait(driver, 10).until(
    EC.presence_of_all_elements_located((By.CLASS_NAME, '.mQ7Bh'))
)

for title in titles:
    print(title.text)

def sleeping():
	latency = int(10)
	time.sleep(latency)
sleeping()

driver.quit()
  • Вопрос задан
  • 178 просмотров
Решения вопроса 1
murTi
@murTi
WebDriverWait нужен для ожидания определённого события на сайте, например ждать пока не загрузится элемент. Сам элемент нужно получать по-другому. Я делаю всё через выражения xpath, это наиболее удобный и гибкий способ:
elements = driver.find_elements("xpath", '//*[contains(@class, "mQ7Bh")]')

Это будет искать все элементы, в классе которого будут эти символы.
Ответ написан
Пригласить эксперта
Ответы на вопрос 1
SoreMix
@SoreMix Куратор тега Python
yellow
Не должно быть точки в имени класса
Ответ написан
Комментировать
Ваш ответ на вопрос

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

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