ewe 2e¶ CoЛнЫшКоcBeTиТоЧеНЬяРкО*
Высший разум
(321649)
1 год назад
Судя по всему это какой-то парсер web-страницы, возьмите текст этой странички откройте в редакторе и убедитесь, что class с именем "card__name" там действительно присутствует.
Ну и еще хорошо бы знать, как именно "не дает" - выводит пустое значение, выводит не то значение, трапается в эксцепшин, еще что-то?.
Юрий МагдаляновЗнаток (330)
1 год назад
пишет мол нет текста у данного объекта 'NoneType' object has no attribute 'text'
а если напишу вместо этого
card_text=l.find('div', class_='price flex items-center').text.strip()
card_text_2=l.find('div', class_='price-installment').text.strip()
card_text_3=l.find('div', class_='price-bonus').text.strip()
card_text_4=l.find('div', class_='card__name').text.strip()
print(card_text,'\n',card_text_2,'\n',card_text_3,'\n',card_text_4)
вот это card_text=l.text.strip()
print(card_text)
то весь текст класса выводит
Sevastyan Razumov
Профи
(906)
1 год назад
Ошибки могут возникать по разным причинам. В данном случае, если элемент card_text_4 не содержит текст, это может быть вызвано следующими причинами:
Неправильное указание класса или идентификатора элемента. Убедитесь, что класс 'card__name' действительно присутствует в HTML-разметке элемента, который вы пытаетесь найти. Может быть опечатка или изменение структуры страницы.
Элемент card_text_4 может быть пустым или не содержать текстового содержимого в HTML-разметке. В этом случае, когда вы вызываете text.strip(), он не возвращает текст, так как его нет.
Чтобы проверить, какие элементы на самом деле содержатся в card, вы можете добавить отладочную печать, например:
for l in card:
card_text=l.find('div', class_='price flex items-center').text.strip()
card_text_2=l.find('div', class_='price-installment').text.strip()
card_text_3=l.find('div', class_='price-bonus').text.strip()
card_text_4=l.find('div', class_='card__name').text.strip()
print(card_text,'\n',card_text_2,'\n',card_text_3)
print(card_text_4) # Добавленная отладочная печать
Это поможет вам определить, почему card_text_4 не содержит текста. Если элемент не найден или содержит другую разметку, вам нужно будет изменить свой код для правильного извлечения информации или пропустить элемент, если он не является обязательным.