Красивый Суп найти все имеет максимальный размер буфера? - PullRequest
0 голосов
/ 13 февраля 2019

Я пытаюсь собрать все изображения одежды на определенной веб-странице, но я получаю только 32 из 168.

Связано ли это с каким-то динамическим свойством сети, которое я мог бы пропустить или с некоторымимаксимальный размер буфера?

import requests
from bs4 import BeautifulSoup

url = 'https://zalando.com/ropa-de-mujer/?p=2'

response = requests.get(url)
soup = BeautifulSoup(response.text, 'html.parser')
garments = soup.find_all("div", class_="cat_articleContain-1Z60A")

for garment in garments:
    images = garment.find('img', class_='cat_image-1byrW')
    print(images['src'])

1 Ответ

0 голосов
/ 13 февраля 2019

Когда я вижу источник просмотра этого веб-сайта, после 32. items другие элементы находятся в JSON, поэтому в этом случае использование selenium более эффективно. Если вы еще не установлены, вы можете установить в http://chromedriver.chromium.org/downloads

URL недоступен в моей стране, поэтому измените URL в URL.

from selenium import webdriver


options = webdriver.ChromeOptions()


driver=webdriver.Chrome(chrome_options=options, 
executable_path=r'chromedriver path') 

driver.get("https://www.zalando.es/ropa-de-mujer/?p=2") 
x = driver.find_elements_by_css_selector("div.cat_articleContain-1Z60A") ## div . means class (# for id)
href = [link.find_element_by_css_selector('a').get_attribute('href') for link in x]
img = [link.find_element_by_css_selector('img').get_attribute('src') for link in x]

print(img)

driver.close() // Close page

ВЫХОД:

[u 'https://mosaic03.ztat.net/vgs/media/catalog-lg/VE/12/1A/0N/4Q/11/VE121A0N4-Q11@10.jpg', u 'https://mosaic04.ztat.net/vgs/media/catalog-lg/DE/12/1D/0H/LK/11/DE121D0HL-K11@19.jpg', u' https://mosaic03.ztat.net/vgs/media/catalog-lg/JE/12/1B/00/XG/11/JE121B00X-G11@10.jpg', u 'https://mosaic04.ztat.net/vgs/media/catalog-lg/CL/92/1C/0H/OG/11/CL921C0HO-G11@10.jpg', u' https://mosaic03.ztat.net/vgs/media/catalog-lg/M3/22/1C/0P/NQ/11/M3221C0PN-Q11@10.jpg',

... До 84

Между прочим, 84 вещи, когда достигают, загружают больше, а не 168

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...