Не парсит данные, собирает лишь часть

Рейтинг: 1Ответов: 1Опубликовано: 07.01.2023

Надо спарсить названия брендов. https://www.farfetch.com/uk/shopping/men/hoodies-2/items.aspx?page=1&view=90&sort=4&q=hoodie При парсинге собираются данные только для первых 12 позиций, дальше почему то, данные не собирает. Название бренда лежит в теге p, который лежит в теге li. Всего на первой странице 90 позиций, которые надо получить, но почему то достаются данные только для первых двенадцати позиций.В коде сначала нахожу все div, с классом ltr-1bvlx7l e1awqx90, в них через цикл нахожу теги p, с классом e17j0z620 ltr-17q7kb6-Body-BodyBold eq12nrx0. В итоге получаю список с 12-ю элементами, а надо чтобы было 90 элементов. На 12-м элементе код останавливается, ошибок никаких нет, просто не собирает дальше данные.

import time

import requests
from bs4 import BeautifulSoup as bs

url = "https://www.farfetch.com/uk/shopping/men/hoodies-2/items.aspx?page=1&view=90&sort=4&q=hoodie"
headers = {
    "Accept": "*/*",
    "User-Agent": "Mozilla/5.0 (iPad; CPU OS 11_0 like Mac OS X) AppleWebKit/604.1.34 (KHTML, like Gecko) Version/11.0 Mobile/15A5341f Safari/604.1"
}
r = requests.get(url, headers=headers)
src = r.text

soup = bs(src, 'lxml') 
items = soup.find_all("div", class_="ltr-1bvlx7l e1awqx90")
spisok = []
for item in items:
    all_products_hrefs = item.find("p", class_="e17j0z620 ltr-17q7kb6-Body-BodyBold eq12nrx0").get_text()
    spisok.append(all_products_hrefs)
    time.sleep(1)

print(spisok)

это результат который получаю

['Alpha Industries', 'Alpha Industries', 'adidas', 'PRÉVU', 'adidas', 'FIVE CM', 'FIVE CM', 'Fila', 'Reigning Champ', 'Ecoalf', 'FIVE CM', 'Dickies Construct']


  [Скриншот страницы с исходным кодом]: https://i.sstatic.net/mXxCG.jpg

Ответы

Ответов пока нет.