python selenium

Sanchez.

Известный
Автор темы
705
188
пытаюсь через либу селениум спарсить текст, где написано кол-во ответов в теме
1666442273059.png


так как эта штука имеет тег dd, я пытаюсь ее спарсить
1666442276838.png


но почему-то мне выдает ошибку, якобы такого селектора нема на сайте

что делать
 
  • Эм
Реакции: Пирожок

Sanchez.

Известный
Автор темы
705
188
Код показать не вариант?
Код:
for k in blocks:
        title = k.find_element(By.CLASS_NAME, 'structItem-title')
        answers = k.find_element(By.CSS_SELECTOR, 'dd').text
        url = title.find_element(By.CSS_SELECTOR, 'a').get_attribute('href')
        title = title.text.replace('Исковое заявление', '').replace('ОС |', '').replace('OC |', '').replace('  ', '')
        date_create = k.find_element(By.CLASS_NAME, 'u-dt').text
        date_last_answer = k.find_element(By.CLASS_NAME, 'structItem-latestDate').text
        await message.answer(answers)

пж без хейта за говнокод
 

purpleee

Активный
179
81
Код:
for k in blocks:
        title = k.find_element(By.CLASS_NAME, 'structItem-title')
        answers = k.find_element(By.CSS_SELECTOR, 'dd').text
        url = title.find_element(By.CSS_SELECTOR, 'a').get_attribute('href')
        title = title.text.replace('Исковое заявление', '').replace('ОС |', '').replace('OC |', '').replace('  ', '')
        date_create = k.find_element(By.CLASS_NAME, 'u-dt').text
        date_last_answer = k.find_element(By.CLASS_NAME, 'structItem-latestDate').text
        await message.answer(answers)

пж без хейта за говнокод
Answers, url, date_create - верное показывает?
 

purpleee

Активный
179
81
все верно показывает, кроме answers, там пустота

answers это то, о чем я писал в начале темы
Ну тогда скорее всего, на сайте имеется ещё одно поле, которое использует 'dd'. Я бы хотел посоветовать получить все элементы с 'dd' и уже отталкиваться от этого. Но в твоём варианте, лучшим выходом будет - искать данный элемент через XPATH (Тут есть немного инфы о нём(не реклама): https://selenium-python.readthedocs.io/locating-elements.html), Что бы получить XPATH данного элемента - нажми ПКМ - Копировать и выбери "Копировать XPATH"
 
Последнее редактирование: