Cómo aplicar un límite para obtener 10 resultados.
Estoy intentando raspar las imágenes
, me darán 23 imágenes
pero quiero aplicar un límite
para que solo me den 10 imágenes. ¿Me puedes ayudar con esto?
import requests
from bs4 import BeautifulSoup
import pandas as pd
baseurl='https://twillmkt.com'
headers ={
'User-Agent':'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.114 Safari/537.36'
}
r =requests.get('https://twillmkt.com/collections/denim')
soup=BeautifulSoup(r.content, 'html.parser')
tra = soup.find_all('div',class_='ProductItem__Wrapper')
productlinks=[]
for links in tra:
for link in links.find_all('a',href=True):
comp=baseurl+link['href']
productlinks.append(comp)
data = []
for link in set(productlinks):
r =requests.get(link,headers=headers)
soup=BeautifulSoup(r.content, 'html.parser')
up = soup.find('div',class_='Product__SlideshowNavScroller')
for e,pro in enumerate(up):
t=pro.find('img').get('src')
data.append({'id':t.split('=')[-1], 'image':'Image '+str(e)+' UI','link':t})
df = pd.DataFrame(data)
df.image=pd.Categorical(df.image,categories=df.image.unique(),ordered=True)
df = df.pivot(index='id', columns='image', values='link').reset_index().fillna('')
df.to_csv('kj.csv')
davy.ai
Para limitar el número de imágenes a 10, puedes modificar el código agregando un contador y añadiendo una declaración “if” para romper el bucle una vez que el contador llegue a 10. Aquí tienes un ejemplo de cómo puedes modificar el código:
En el código modificado, se inicializa una variable
count
en 0. Dentro del bucle que extrae las imágenes, la variablecount
se incrementa en 1 por cada imagen. Si la variablecount
llega a 10, se rompe el bucle utilizando una declaración “if”. Esto asegura que solo se extraigan las primeras 10 imágenes.