DesarrolloProtección de pagoDetalles
- Los cambios dentro del paquete son gratuitos.
- Si no responde en los 3 días siguientes a la entrega, el trabajo se acepta automáticamente.
El dinero queda reservado al pagar y solo se libera cuando usted acepta el trabajo.

Ejemplo de resultado
Parser del catálogo de un proveedor de herramientas de jardín a Excel
Cómo queda el resultado
| Referencia | Nombre | Precio | Disponible | Peso | Foto |
|---|---|---|---|---|---|
| GT-1042 | Tijeras de podar, 20 mm | 18,90 | Sí | 0,24 kg | …/gt-1042.jpg |
| GT-1187 | Sierra plegable, 210 mm | 24,50 | Sí | 0,31 kg | …/gt-1187.jpg |
| GT-2210 | Tijeras para setos, hoja ondulada | 39,00 | No | 1,10 kg | …/gt-2210.jpg |
| GT-3305 | Pala de mano, acero inoxidable | 9,80 | Sí | 0,18 kg | …/gt-3305.jpg |
| GT-4120 | Manguera de jardín 25 m, 1/2" | 42,00 | Sí | 2,90 kg | …/gt-4120.jpg |
El archivo del ejemplo tiene 1.236 productos de 52 páginas de lista.
Una parte del código
def product_links(list_url: str) -> Iterator[str]:
"""Enlaces a las páginas de producto de todas las páginas de la lista, siguiendo 'Siguiente'."""
url: str | None = list_url
while url:
page = fetch(url)
for card in page.select("div.product-card a.title"):
yield urljoin(url, card["href"])
next_link = page.select_one("a.pagination-next")
url = urljoin(url, next_link["href"]) if next_link else None
def fetch(url: str) -> BeautifulSoup:
"""Una página abierta, a un ritmo prudente: una pausa entre peticiones y algunos reintentos si hay errores."""
for attempt in range(3):
time.sleep(settings.delay_seconds)
response = session.get(url, timeout=30)
if response.status_code == 200:
return BeautifulSoup(response.text, "html.parser")
log.warning("%s respondió %s, intento %d de 3", url, response.status_code, attempt + 1)
raise ScraperError(f"{url} no se abrió tras 3 intentos")
Archivos: un archivo ZIP con scraper.py, settings.ini (la página inicial, la pausa entre peticiones, el nombre del archivo), requirements.txt y un README sobre cómo instalarlo y ejecutarlo. Solo lee páginas abiertas, una cada 2 segundos, y antes consulta el robots.txt de la web. El cliente lo ejecuta en su propio ordenador.
Cliente: una tienda de jardinería en línea que revende las herramientas de un proveedor; el proveedor tiene un catálogo abierto en su web, pero ningún archivo con la lista de precios. Tarea: recorrer las páginas de lista del catálogo, abrir cada página de producto y guardar en Excel la referencia, el nombre, el precio, la disponibilidad, el peso y el enlace de la foto principal, para comparar precios una vez por semana.
El cliente y todos los datos son ficticios.
Acerca de este servicio
Para ver qué gusta y qué no a los compradores de sus productos o de los de un competidor, este parser reúne reseñas abiertas en una tabla: el producto y su enlace y, de cada reseña, solo el texto, la valoración y la fecha. Los nombres, alias, fotos y enlaces de perfil de quienes reseñan se omiten, así que la tabla no contiene datos personales. Envíenos la web de la tienda, una página de producto con reseñas y una o dos páginas guardadas desde su navegador; cuando las reseñas se abren con un botón “ver más”, el parser lo sigue. Recibe código Python, un archivo de configuración y un README y lo ejecuta en su ordenador. No lee Amazon, Google, LinkedIn ni redes sociales, nunca inicia sesión ni se salta captchas o protecciones, y mantiene un ritmo prudente. Usted decide si las condiciones de la web lo permiten; un cambio posterior de su estructura requiere una actualización.
Qué incluye
- Qué recibeUn archivo ZIP con el código Python, un archivo de configuración y un README con instrucciones paso a paso; el código también se muestra en la página del pedido.
- Tres datos por reseñaTexto, valoración y fecha, nada sobre la persona
- Vinculadas al productoCada fila de reseña lleva el nombre y el enlace del producto
- Todas las páginas de reseñasSigue “ver más” y las páginas de reseñas
- Ritmo prudenteUna pausa entre páginas, fijada en la configuración
- Se ejecuta en su ordenadorWindows, macOS o Linux, con Python
Cómo funciona
- 1PáginasUsted da la tienda, los productos y una página con reseñas guardada
- 2ParserEscribimos el código y la guía para ejecutarlo
- 3EjecuciónLo ejecuta y comprueba el número de reseñas de un producto
- 4CambiosPide cambios dentro de su paquete y nos envía cualquier mensaje de error
Qué necesitamos de usted
La web de la tienda y las páginas exactas: una lista de enlaces de productos o un enlace a una categoría, y cuántos productos y reseñas hay aproximadamente. Los campos de producto que necesita además del texto, la valoración y la fecha de la reseña, p. ej., nombre del producto, código, enlace, valoración media. Una o dos páginas con reseñas guardadas desde su navegador (Archivo > Guardar página como) o capturas. CSV o Excel.
Le preguntaremos:
- ¿Qué tienda y qué productos?
- Campos del producto
- ¿Cuántas reseñas aproximadamente?
- ¿Solo algunas reseñas?
Comparar paquetes
| Paquetes | BásicoReseñas de sus productos22 US$ | EstándarUna categoría, todas las reseñas42 US$ | PremiumHasta 3 tiendas76 US$ |
|---|---|---|---|
| Plazo | 1 día | 2 días | 3 días |
| Cambios | 1 | 2 | 3 |
| Webs | 1 | 1 | hasta 3 |
| Tipos de página | 1 | 2 (lista de productos y reseñas) | hasta 3 |
| Campos | hasta 10 | hasta 25 | hasta 25 en cada una |
| Recorre las páginas de una lista | No | Sí | Sí |
| Archivo de resultados | CSV | Excel o CSV | Excel, CSV o JSON |
| Duplicados eliminados, reanuda donde se detuvo | No | No | Sí |
| Hacer pedido Básico | Hacer pedido Estándar | Hacer pedido Premium |
Protección de pago
Usted paga al hacer el pedido, pero el dinero solo se libera por un trabajo aceptado.
- Precio fijoEl precio del paquete no cambia después del pago.
- El dinero queda reservadoAl pagar, el importe solo queda reservado. Pasa a Dleex cuando usted acepta el trabajo.
- Revisado antes de la entregaCada resultado pasa un control de calidad antes de llegar a usted, y lo ve en la página del pedido antes de aceptarlo.
- Cambios gratuitosSolicite cambios dentro de su brief tantas veces como permita el paquete.
- Aceptación a los 3 díasSi en los 3 días siguientes a la entrega no acepta el trabajo ni solicita cambios, se acepta automáticamente. Si escribe en el chat del pedido después de la entrega, el pedido queda en espera; cuando le respondamos, podremos reiniciar el plazo de 3 días y se lo indicaremos en el chat.
- Rehacer el trabajo o reembolso totalSi el resultado no se ajusta a su brief y los cambios no lo resolvieron, o el trabajo tarda más del doble de su plazo, escriba en el chat del pedido: rehacemos el trabajo o le reembolsamos el pago íntegro.
Preguntas y respuestas
¿Puede recoger el nombre o la ciudad de quien reseña?
No. Cada reseña conserva solo su texto, su valoración y su fecha. Los nombres, alias, ciudades, fotos y enlaces de perfil son datos personales y quedan fuera.
¿Clasificará las reseñas en buenas y malas?
Guarda la valoración, así que puede filtrar por ella en Excel. No juzga el texto; leerlo le corresponde a usted.
¿Puedo publicar estas reseñas en mi web?
No, no como propias: pertenecen a sus autores y a la tienda, y mostrarlas como suyas engañaría a los compradores. Úselas para estudiar lo que dice la gente.
¿Puede leer reseñas de Amazon, Google Maps o redes sociales?
No. Amazon, Google, LinkedIn y las redes sociales quedan fuera: sus condiciones lo prohíben. Para otras tiendas, usted decide si sus condiciones lo permiten.
¿Y si las reseñas se cargan al desplazarse?
Entonces el parser usa una biblioteca de navegador (Playwright), que el README explica. Si la tienda cambia su estructura más adelante, el parser necesita una actualización.
¿No encontró su respuesta?


