DICCIONARIO · W

Web scraping

El web scraping es la extracción automatizada de datos concretos de páginas web mediante un programa que descarga el código, lo analiza y guarda campos como precios, nombres o fechas en un formato estructurado. Sirve para vigilar precios, investigar mercados o alimentar modelos de IA, pero su legalidad depende de qué datos se extraen, de dónde y cómo.

Germán Gutiérrez Escrito por Germán Gutiérrez 8 min de lectura
Ficha rápida
Qué es
Extracción automatizada de datos concretos de páginas web a un formato estructurado
Técnicas principales
Peticiones HTTP y análisis del HTML, navegadores sin interfaz (headless) y llamadas a las APIs internas de la web
Estándar de robots.txt
RFC 9309 del IETF, publicado en septiembre de 2022
Protección de bases de datos en la UE
Directiva 96/9/CE (derecho sui generis), incorporada en España en el artículo 133 de la Ley de Propiedad Intelectual
Sentencia de referencia
TJUE, asunto C-30/14, Ryanair contra PR Aviation, 15 de enero de 2015

≡En resumen

  • El scraping extrae campos concretos de una página; el crawling descubre y recorre páginas.
  • Antes de programar un scraper, busca si hay una API oficial o datos abiertos: suele ser más estable y más seguro legalmente.
  • Las webs con mucho JavaScript necesitan navegadores headless o leer directamente las llamadas JSON que hace la página.
  • Que un dato sea público no lo convierte en libre: cuentan la propiedad intelectual, las bases de datos, las condiciones de uso y el RGPD.
  • Un buen scraper se identifica, limita la frecuencia de peticiones y no se salta medidas técnicas de protección.

01 ¿Qué es el web scraping?

El verbo inglés to scrape significa raspar. La idea viene del screen scraping de los años ochenta y noventa, cuando se leían los datos que un sistema antiguo mostraba en pantalla porque no ofrecía otra forma de exportarlos. Con la web, el «raspado» pasó a hacerse sobre el HTML que devuelve el servidor.

No hay que confundirlo con el web crawling, que consiste en descubrir y recorrer páginas siguiendo enlaces: el crawler encuentra las URL y el scraper saca los datos de cada una. Tampoco es lo mismo que la extracción de datos web entendida como proceso completo, que incluye además la limpieza, la integración y la calidad de los datos. El scraping es la pieza técnica central de ese proceso.

02 Cómo funciona un web scraper paso a paso

  1. 1

    Elegir las URL

    Una lista fija de páginas, el sitemap XML del sitio o un crawler que descubre las fichas que interesan.

  2. 2

    Pedir cada página

    El programa hace una petición HTTP GET, como un navegador, y recibe el HTML. Si la web carga los datos con JavaScript, hace falta un navegador headless o leer la llamada JSON interna.

  3. 3

    Analizar el documento (parsing)

    Convierte el HTML en un árbol de elementos y localiza cada dato con selectores CSS o expresiones XPath, por ejemplo el elemento con la clase «precio».

  4. 4

    Limpiar y normalizar

    Quita símbolos y espacios, unifica formatos (19,90 € pasa a 19.90), elimina duplicados y marca los valores que faltan.

  5. 5

    Guardar

    Exporta a CSV, JSON o una base de datos, con la fecha de captura y la URL de origen de cada registro.

  6. 6

    Programar y vigilar

    Se ejecuta cada hora, día o semana y avisa cuando la web cambia su diseño y los selectores dejan de encontrar los datos.

Ejemplo · Qué ve un scraper en una ficha de producto

En el HTML de la página aparece algo como <span class="precio">19,90 €</span>. El selector CSS span.precio localiza ese elemento en todas las fichas con la misma plantilla. Muchas tiendas publican además los datos en JSON-LD de Schema.org ("price": "19.90"), que es más estable que el diseño visual y conviene leer primero.

03 Técnicas y herramientas de web scraping

Herramienta Tipo Cuándo usarla
Requests + Beautiful Soup (Python) Descarga HTTP y análisis de HTML Páginas estáticas y volúmenes pequeños o medianos
Scrapy (Python) Framework de crawling y scraping Miles o millones de páginas, con colas, reintentos y exportación integrados
Playwright, Puppeteer, Selenium Navegadores headless controlados por código Webs que generan el contenido con JavaScript o exigen interacción
Cheerio (Node.js) Análisis de HTML con sintaxis tipo jQuery Proyectos en JavaScript con páginas estáticas
Extensiones y herramientas sin código Selección visual de datos en el navegador Extracciones puntuales sin programar
Modelos de lenguaje (LLM) Extracción a partir de texto libre Páginas sin estructura fija; requieren validar la salida porque pueden equivocarse
Herramientas habituales según el tipo de página

04 Web scraping vs API: qué conviene en cada caso

Una API es una puerta que el propietario de los datos abre a propósito, con un formato documentado, límites de uso y unas condiciones claras. El scraping lee lo que la web muestra a las personas. Si existe una API oficial o un portal de datos abiertos con lo que necesitas, casi siempre es la mejor opción.

Criterio API oficial Web scraping
Estabilidad Alta: versiones documentadas Baja: se rompe con los cambios de diseño
Formato Estructurado (JSON, XML) Hay que extraerlo y limpiarlo
Cobertura Solo lo que el proveedor decide exponer Todo lo que se ve en la página
Marco legal Licencia o condiciones de la API Depende del contenido, de las condiciones de uso y de los datos personales
Coste Gratuita, por uso o por suscripción Desarrollo, infraestructura y mantenimiento
Comparativa entre API oficial y web scraping

05 Medidas anti-bot: cómo se defienden las webs

01

robots.txt

Indica qué rutas no deben visitar los bots. No bloquea nada técnicamente, pero ignorarlo es una mala señal ante un juez o el propietario.

02

Límites de frecuencia

El servidor responde con el código 429 (Too Many Requests) o bloquea la IP cuando llegan demasiadas peticiones seguidas.

03

CAPTCHA y retos

Pruebas para distinguir personas de programas, a menudo invisibles, que se activan ante un comportamiento sospechoso.

04

Huella del navegador

Los sistemas de gestión de bots analizan cabeceras, TLS, JavaScript y movimientos para detectar navegadores automatizados.

05

Muros de registro

Parte del contenido solo se ve tras iniciar sesión, lo que suma condiciones contractuales aceptadas expresamente.

06

Trampas y datos señuelo

Enlaces invisibles para personas o registros ficticios que delatan a quien copia la base de datos.

06 ¿Es legal el web scraping en España y la UE?

No hay una ley que regule el scraping como tal. Es una técnica, y su legalidad depende de qué se extrae, de dónde y para qué. En España y la UE conviene revisar cinco capas a la vez:

Capa Norma Qué implica
Propiedad intelectual Ley de Propiedad Intelectual Textos, fotos y diseños tienen autor: extraer un precio no es lo mismo que copiar descripciones o imágenes.
Bases de datos Directiva 96/9/CE y art. 133 LPI El fabricante de una base de datos con inversión sustancial puede prohibir la extracción de partes sustanciales, o repetida de partes pequeñas.
Condiciones de uso Derecho de contratos El TJUE (C-30/14, 2015) admitió que el titular de una base de datos no protegida por la directiva limite su uso por contrato.
Datos personales RGPD y LOPDGDD Nombres, emails o perfiles públicos siguen siendo datos personales: necesitas base jurídica, informar a los afectados y minimizar.
Minería de textos y datos Directiva (UE) 2019/790 y art. 67 del Real Decreto-ley 24/2021 Permite el análisis automatizado de obras accesibles lícitamente, salvo que el titular se lo reserve por medios de lectura mecánica.
Marco legal del web scraping en España

07 Para qué se usa el web scraping: ejemplos

01

Monitorización de precios

Comercios y marcas comparan precios, promociones y stock de la competencia o controlan el precio mínimo de sus distribuidores.

02

Investigación de mercado

Catálogos, lanzamientos, reseñas agregadas o anuncios inmobiliarios y de empleo para medir tendencias.

03

Agregadores y comparadores

Vuelos, hoteles o seguros: históricamente el origen de muchos de los litigios sobre scraping.

04

Datos para IA

Corpus de texto para entrenar o afinar modelos, sujeto a la reserva de derechos de la minería de textos y datos.

05

Periodismo e investigación

Boletines oficiales, contratos públicos o webs institucionales cuando no publican datos abiertos.

06

Automatización interna

Traer a tu sistema datos de portales de proveedores sin API, con su autorización.

Cuando el scraping es solo una pieza de un flujo más amplio (captura, limpieza, clasificación con IA y volcado en tu CRM o ERP), lo sensato es diseñarlo como un sistema y no como un script suelto. Es el tipo de proyecto que resolvemos al automatizar procesos con IA o, si hace falta un panel propio para consultar los datos, con desarrollo web a medida.

08 Buenas prácticas para hacer scraping de forma responsable

  • ✓Busca primero una API oficial, un feed o un portal de datos abiertos.
  • ✓Lee las condiciones de uso y el robots.txt del sitio, y guarda una copia con la fecha.
  • ✓Extrae solo los campos que necesitas; evita datos personales salvo que tengas base jurídica y hayas hecho el análisis RGPD.
  • ✓Identifica a tu bot con un user agent y un contacto, en vez de hacerte pasar por un navegador.
  • ✓Limita la frecuencia de peticiones y trabaja en horas de poco tráfico para no cargar el servidor.
  • ✓No eludas CAPTCHA, bloqueos, inicios de sesión ni otras medidas técnicas.
  • ✓No republiques textos ni imágenes protegidos; usa los datos para análisis propio.
  • ✓Registra origen y fecha de cada dato para poder justificar su procedencia.

Preguntas frecuentes sobre Web scraping

Significa «raspado web»: extraer automáticamente datos concretos de páginas web, como precios o nombres, y guardarlos en un formato estructurado para analizarlos.

Depende del caso. Extraer datos no personales de páginas públicas respetando las condiciones de uso suele ser defendible, pero puedes infringir la propiedad intelectual, el derecho sobre bases de datos, un contrato o el RGPD si copias contenidos protegidos, partes sustanciales de una base de datos o datos personales.

El crawling descubre y recorre páginas siguiendo enlaces; el scraping extrae datos concretos de esas páginas. Muchos proyectos usan un crawler para encontrar las URL y un scraper para sacar los datos de cada una.

Python es el más habitual, con Requests, Beautiful Soup y Scrapy. En JavaScript se usan Puppeteer, Playwright y Cheerio. Playwright y Selenium también funcionan con otros lenguajes.

Sí, para extracciones sencillas existen extensiones de navegador y plataformas sin código que permiten seleccionar los datos con el ratón. Para volúmenes grandes o webs complejas suele hacer falta programación o un proveedor especializado.

Si hay una API oficial que da los datos que necesitas, úsala: es más estable, está documentada y su uso está autorizado. El scraping tiene sentido cuando no existe API o esta no expone esos datos.

Combina límites de frecuencia por IP, un firewall de aplicaciones o servicio de gestión de bots, CAPTCHA en las acciones sensibles y unas condiciones de uso que prohíban la extracción automatizada. El robots.txt ayuda con los bots que lo respetan, pero no frena a los que no.

Fuentes consultadas

Germán Gutiérrez

Sobre el autor

Germán Gutiérrez

Development Manager en appyweb

Dirige el equipo de desarrollo de appyweb: aplicaciones web y móviles, SaaS, integraciones y arquitectura de software.

Ver perfil en LinkedIn ↗

Términos relacionados

Ver todos los términos →
W Web Crawling (web crawlers) El web crawling es el recorrido automático y sistemático de la web que hace un programa, el web crawler (araña, spider o bot), descargando páginas y siguiendo sus enlaces para descubrir otras nuevas. Es la base de los buscadores, de los modelos de IA y de muchas herramientas de análisis, y decide qué parte de tu web pueden conocer. W Web Data Extraction La web data extraction (extracción de datos web) es la obtención automatizada de información de páginas web para convertirla en datos estructurados, mediante scraping, APIs o feeds. Suele ser legal, pero en la UE tiene límites concretos: el RGPD, el derecho sui generis de las bases de datos, los derechos de autor y los términos de uso. W Web scraping services Los web scraping services son servicios en los que un proveedor externo extrae por encargo datos de páginas web y los entrega limpios y estructurados, ya sea mediante una API de scraping, una plataforma, conjuntos de datos listos o un proyecto gestionado. Permiten disponer de datos sin mantener scrapers propios, pero exigen controlar su calidad y su legalidad. R Robots txt El robots.txt es un archivo de texto plano, situado en la raíz de un dominio, que indica a los rastreadores qué rutas pueden o no pueden rastrear. Sigue el Robots Exclusion Protocol, estandarizado en el RFC 9309 de 2022. Sirve para gestionar el rastreo, incluidos los bots de IA, pero no impide que una URL se indexe. C Captcha Un captcha es un sistema de verificación automática que distingue a las personas de los programas automatizados (bots) antes de permitir una acción en una web, como enviar un formulario o iniciar sesión. Importa porque frena el spam, las cuentas falsas y los ataques automatizados, aunque cada reto visible añade fricción para los usuarios reales. A API Una API (Application Programming Interface, interfaz de programación de aplicaciones) es un conjunto de reglas y puntos de acceso que permite que dos programas se comuniquen: uno pide datos o acciones y el otro responde en un formato acordado, sin que ninguno conozca el código interno del otro. Es lo que conecta webs, apps, pasarelas de pago e inteligencia artificial.

Cuéntanos tu proyecto. Te respondemos en 48 h.

Auditoría gratuita de IA, campañas, web y SEO, con prioridades y cifras reales de tu negocio.

✓ Sin compromiso ✓ Respuesta en 48 h laborables ✓ Un consultor senior, no un bot
WA WhatsApp