@Tyklon

Почему не находит элемент и выдает ошибку?

Хочу вывести все автомобили для проверки но сталкиваюсь с ошибкой "AttributeError: 'NoneType' object has no attribute 'find'"
Вот код:
import requests
from bs4 import BeautifulSoup

URL = "https://auto.drom.ru/audi/"
headers = {"User-Agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:100.0) Gecko/20100101 Firefox/100.0"}
html = requests.get(URL, headers = headers)
soup = BeautifulSoup(html.text, "lxml")
cars = soup.find("div",class_ = "css-1173kvb eaczv700").find("div")
for car in cars:
    one = car.find("a", class_ = "css-1wltzny ewrty961")
    print(one.text)
  • Вопрос задан
  • 54 просмотра
Пригласить эксперта
Ответы на вопрос 1
@PRoGRamm_InG
вы пытаетесь пройтись по cars как по списку/кортежу хотя cars им не является. Все можно сделать легко и в одну строчку
texts = [element.find('span').text for element in soup.find_all('div', class_='css-17lk78h e3f4v4l2')]


soup.find_all находит все div-ы с классом css-17lk78h e3f4v4l2, в которых находится стрелочка и название машины, название находится в span который мы находим и извлекаем текст
Ответ написан
Комментировать
Ваш ответ на вопрос

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

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