La mayoría de los principiantes en el análisis comienzan con un rastreo completo del sitio: entran en la página principal, recopilan todos los enlaces, navegan por cada uno, vuelven a recopilar enlaces — y así miles de veces. Esto consume proxies, tiempo y a menudo termina en un baneo. Hay una forma más simple y económica: casi todos los sitios grandes, incluyendo Wildberries, Ozon y Avito, ya tienen un mapa de todas las páginas — sitemap.xml. Vamos a ver cómo encontrarlo, leerlo y usarlo en lugar de miles de solicitudes innecesarias.
Qué es sitemap.xml y por qué es importante para los analistas
Sitemap.xml es un archivo que el sitio crea para motores de búsqueda como Google y Yandex. En él se enumeran todas las páginas que el propietario del sitio desea que sean indexadas: tarjetas de productos, categorías, artículos de blog. En esencia, es una lista de URL que el sitio te proporciona — no necesitas navegar manualmente por los enlaces, hacer clic en la paginación o descifrar la lógica de navegación.
Para los vendedores que monitorean los precios de la competencia en Wildberries o Ozon, esto significa una cosa: en lugar de recorrer miles de categorías y páginas de paginación, se puede obtener de inmediato una lista de todas las tarjetas de productos con una sola solicitud al sitemap. Para los especialistas en marketing que recopilan una base de URL para analizar el contenido de la competencia, esto ahorra horas de trabajo manual. Para los arbitrajistas que analizan las páginas de destino de la competencia para estudiar creativos, el sitemap muestra todas las páginas del sitio de una vez.
Un matiz importante: no todas las páginas entran en el sitemap. A veces, no se incluyen páginas con filtros, promociones temporales o páginas con parámetros en la URL. Por lo tanto, el sitemap no siempre cubre el 100% del sitio, pero generalmente cubre el 80-95% de las páginas útiles que necesitas para el catálogo o monitoreo.
Rastreo completo vs sitemap-first: comparación de costos
La diferencia en los enfoques es notable si se cuentan no en "intentos" abstractos, sino en recursos reales: número de solicitudes, consumo de tráfico de proxy y tiempo hasta el resultado. A continuación, una comparación usando el ejemplo de recopilación de un catálogo de 50,000 tarjetas de productos.
| Parámetro | Rastreo completo del sitio | Análisis a través de sitemap |
|---|---|---|
| Solicitudes para recopilar URL | 15,000–20,000 (categorías, paginación, filtros) | 50–300 (solo archivos sitemap) |
| Tiempo para recopilar la lista de URL | 4–8 horas | 15–30 minutos |
| Riesgo de bloqueo de IP | Alto debido al volumen de solicitudes a la navegación | Bajo, el número de solicitudes es mucho menor |
| Carga en el tráfico de proxy | Alta, se necesita un gran grupo de IPs | Mínima, se puede manejar con un pequeño grupo |
| Complejidad de la lógica del analista | Alta, se necesita desglosar la navegación | Baja, análisis de la estructura XML |
La cifra "10 veces más barato" del título no es una exageración. Si el rastreo completo requiere de 15,000 a 20,000 solicitudes solo para compilar la lista de páginas, y el sitemap proporciona la misma lista con 50-300 solicitudes, el ahorro en tráfico de proxy y tiempo es significativo. Sin embargo, las tarjetas de productos aún tendrás que descargarlas por separado — pero sabes exactamente qué URL descargar y no gastas recursos en páginas vacías, duplicados y enlaces basura.
Cómo encontrar sitemap.xml en cualquier sitio
La primera y más sencilla forma es añadir /sitemap.xml al dominio del sitio. Por ejemplo, para comprobar, intenta abrir en el navegador una dirección como https://example.com/sitemap.xml. Esto funcionará para la mayoría de los sitios, incluyendo muchas tiendas en línea en CMS populares.
Si no hay nada en esa dirección, revisa el archivo robots.txt — casi siempre está en /robots.txt y en la mayoría de los casos contiene la línea Sitemap: https://example.com/sitemap_index.xml. Este es el método oficial que los sitios utilizan para informar a los motores de búsqueda dónde buscar el mapa. En grandes marketplaces como Wildberries y Ozon, los mapas del sitio a menudo están divididos en decenas de archivos y se indican precisamente a través de robots.txt.
Una tercera opción es buscar menciones en sistemas como Google Search Console (si tienes acceso a tu sitio) o utilizar escáneres de sitios especializados que encuentran todos los archivos sitemap por sí mismos. Para sitios de competidores, generalmente son suficientes las dos primeras formas — robots.txt casi nunca se cierra a ojos ajenos, es un archivo público.
Consejo:
Los nombres de los archivos sitemap no siempre son estándar. Se encuentran variantes como sitemap_index.xml, sitemap-products.xml, product-sitemap.xml y similares. Siempre comienza con robots.txt — te indicará las rutas exactas.
Estructura del sitemap en marketplaces: índice y mapas anidados
Los sitios pequeños suelen tener un solo archivo sitemap.xml con todas las URL. Pero en grandes catálogos, como Wildberries, Ozon o Avito, hay millones de páginas, y un solo archivo XML de tal volumen sería inconveniente. Por eso utilizan lo que se llama un índice de sitemap — un archivo de contenido que hace referencia a decenas o cientos de archivos sitemap individuales, divididos por categorías, fechas o simplemente en lotes de 10-50 mil URL.
La estructura se ve aproximadamente así: primero abres el archivo índice principal, en él encuentras una lista de enlaces a los sitemaps secundarios, como sitemap-products-1.xml, sitemap-products-2.xml y así sucesivamente. Luego necesitas descargar cada uno de estos archivos y extraer de ellos las URL finales de las tarjetas de productos. Este es un proceso de dos niveles, pero sigue siendo mucho más rápido que navegar manualmente por el sitio.
A veces, los archivos sitemap secundarios están comprimidos en formato gzip (extensión .xml.gz) — esta es una práctica estándar para ahorrar espacio en el servidor. Si el script descarga un archivo y ve caracteres ilegibles en lugar de XML, probablemente necesite descomprimir el contenido antes del análisis.
Extracción paso a paso de URL desde sitemap
Para aquellos que trabajan con herramientas de análisis no-code listas, la mayoría de los analizadores modernos de catálogos de marketplaces ya pueden leer sitemap automáticamente — solo necesitas indicar la URL raíz del sitio, y la herramienta encontrará robots.txt, localizará el índice del sitemap y recopilará la lista de todas las tarjetas. Pero si trabajas con un desarrollador o escribes un pequeño script tú mismo, la lógica de trabajo es simple, y aquí hay un ejemplo en Python:
import requests
import gzip
from io import BytesIO
from lxml import etree
def get_sitemap_urls(sitemap_url, proxies=None):
response = requests.get(sitemap_url, proxies=proxies, timeout=15)
content = response.content
# Descompresión gzip, si el archivo está comprimido
if sitemap_url.endswith('.gz'):
content = gzip.decompress(content)
root = etree.fromstring(content)
namespace = {'ns': 'http://www.sitemaps.org/schemas/sitemap/0.9'}
# Si es un índice de sitemap — recopilamos enlaces a mapas secundarios
sub_sitemaps = root.findall('.//ns:sitemap/ns:loc', namespace)
if sub_sitemaps:
all_urls = []
for sub in sub_sitemaps:
all_urls.extend(get_sitemap_urls(sub.text, proxies))
return all_urls
# Si es un sitemap normal — recopilamos URL finales
urls = root.findall('.//ns:url/ns:loc', namespace)
return [url.text for url in urls]
proxy = {
"http": "http://user:pass@proxy_host:port",
"https": "http://user:pass@proxy_host:port"
}
urls = get_sitemap_urls("https://example.com/sitemap_index.xml", proxies=proxy)
print(f"URL encontradas: {len(urls)}")
Este script recorre recursivamente el archivo índice, descarga cada mapa secundario y recopila todos los enlaces finales en una sola lista. Al final, obtienes un listado completo de URL de tarjetas de productos sin un solo paso innecesario a través de la navegación del sitio.
Filtrado de páginas necesarias según patrones de URL
Después de haber obtenido la lista completa de URL del sitemap, casi siempre es necesario filtrarla. En un archivo sitemap de un marketplace pueden coexistir tarjetas de productos, páginas de categorías, artículos de blog, páginas de marcas y páginas de servicio. Lo más probable es que solo necesites las tarjetas de productos de una categoría específica.
Para el filtrado, generalmente se utilizan patrones de URL. Por ejemplo, si las tarjetas de productos en el sitio tienen la forma /catalog/product/12345, y las categorías se ven como /catalog/category/electronics, no es difícil separar una de otra comparando segmentos de la ruta. Para casos más complejos, donde la estructura de URL no es tan obvia, se utilizan expresiones regulares — permiten establecer un patrón una vez y filtrar instantáneamente cientos de miles de enlaces.
También es útil observar las etiquetas <lastmod> dentro del sitemap — muestran la fecha de la última modificación de la página. Si no necesitas un catálogo completo, sino solo productos actualizados en la última semana (por ejemplo, para monitorear nuevas posiciones de la competencia), puedes filtrar las URL precisamente por esta fecha y no tocar las páginas que no han cambiado en meses.
Configuración de proxy para descarga masiva de mapas del sitio
A pesar de que el número de solicitudes al sitemap es mucho menor que en un rastreo completo, sitios como Wildberries y Ozon aún rastrean actividades sospechosas — solicitudes demasiado frecuentes desde una IP, User-Agent atípicos, falta de encabezados de navegador. Por lo tanto, incluso para descargar archivos sitemap, es recomendable utilizar proxies, especialmente si planeas un monitoreo regular, y no solo una recopilación ocasional del catálogo.
Para descargar los archivos XML del sitemap, generalmente son suficientes proxies de centros de datos — son rápidos y económicos, y el número de solicitudes al sitemap es bajo, por lo que los sitios aplican menos protección estricta en comparación con las páginas del catálogo. Pero en la etapa de descarga de las tarjetas de productos a través de las URL recopiladas, donde el número de solicitudes es mucho mayor y la protección es más estricta, es mejor cambiar a proxies residenciales — utilizan IP reales de usuarios comunes y son menos propensos a ser bloqueados por los sistemas anti-bot de los marketplaces.
Si estás monitoreando el catálogo desde versiones móviles del sitio o API que solo devuelven datos con tráfico móvil, considera usar proxies móviles — utilizan IP de operadores móviles y son considerados los más confiables por la mayoría de los sistemas anti-fraude.
La configuración práctica en el script o analizador es simple: indica el host, puerto, nombre de usuario y contraseña del proxy en los campos correspondientes de la solicitud (como se muestra en el ejemplo de código anterior en el parámetro proxies), o si utilizas un analizador no-code listo o un navegador anti-detección como Dolphin Anty o AdsPower para verificar manualmente la estructura del sitio antes de configurar la recopilación automática, inserta los datos del proxy en la configuración del perfil: abre la pestaña "Proxy" → selecciona el tipo HTTP o SOCKS5 → inserta el host, puerto, nombre de usuario, contraseña → guarda el perfil.
Errores comunes al trabajar con sitemap
El primer y más común error es ignorar robots.txt y tratar de adivinar la dirección del sitemap al azar. Esto es una pérdida de tiempo que se puede evitar fácilmente simplemente mirando el archivo de reglas de indexación.
El segundo error es no tener en cuenta que el sitemap puede ser incompleto. Algunos sitios excluyen intencionadamente del sitemap páginas de bajo valor para SEO, pero que aún son importantes para el monitoreo de precios — por ejemplo, páginas de productos no disponibles. Si después de analizar a través del sitemap el número de tarjetas recopiladas es notablemente menor de lo esperado, vale la pena verificar la cantidad de productos que muestra el sitio en la categoría y, si es necesario, complementar la recopilación con un rastreo puntual de las secciones faltantes.
El tercer error es no almacenar en caché los archivos sitemap ya descargados. Si inicias el monitoreo diariamente, no tiene sentido descargar nuevamente el archivo índice y todos los mapas secundarios cada vez — la mayoría de ellos no cambian todos los días. Guarda la lista de URL localmente y actualiza solo lo que realmente ha cambiado según la fecha lastmod.
El cuarto error es olvidar los encabezados de la solicitud. Incluso la descarga de un simple archivo XML puede ser bloqueada si la solicitud parece provenir de un bot: sin User-Agent, sin Accept-Language, con encabezados predeterminados atípicos que establece la biblioteca para las solicitudes. Agregar encabezados realistas de navegador junto con proxies reduce drásticamente la probabilidad de bloqueo en esta etapa.
Lista de verificación para iniciar el análisis a través de sitemap
Antes de iniciar la recopilación completa del catálogo, revisa una breve lista de pasos para no perder tiempo en errores:
- Revisar robots.txt del sitio y encontrar la dirección exacta del sitemap o sitemap index
- Asegurarse de que la estructura del sitemap sea de dos niveles (índice + mapas secundarios) o de un solo nivel
- Verificar si los archivos secundarios están comprimidos en gzip
- Definir el patrón de URL para las páginas necesarias (tarjetas de productos, categorías, etc.)
- Configurar el filtrado por patrón o por fecha lastmod, si solo se necesitan posiciones recientes
- Conectar proxies para descargar archivos sitemap y por separado para descargar las tarjetas
- Agregar encabezados de solicitud realistas (User-Agent, Accept-Language)
- Configurar almacenamiento en caché y comparación por fecha para ejecuciones repetidas de monitoreo
- Comparar el número total de URL con la cantidad aproximada de productos en el sitio
Conclusión
El enfoque sitemap-first no es un hack ni una forma de eludir la protección, sino el uso de la información que el sitio publica para los motores de búsqueda. En lugar de miles de solicitudes a la navegación, categorías y paginación, obtienes una lista lista de las páginas necesarias con unas pocas decenas de solicitudes a archivos XML. Esto ahorra tiempo en el inicio del análisis, reduce el consumo de tráfico de proxy y disminuye notablemente el riesgo de bloqueo de IP, porque la carga en el sitio es mucho menor que en un rastreo completo.
Si recién comienzas a monitorear el catálogo de Wildberries, Ozon o de otro sitio grande, comienza con el sitemap — es probable que ahorres horas de trabajo ya en el primer inicio. Para descargar los archivos sitemap en sí, bastarán proxies de centros de datos, y para la posterior recopilación regular de datos sobre las tarjetas de productos, donde el riesgo de bloqueo es mayor, es recomendable considerar proxies residenciales — aseguran un funcionamiento estable del analizador sin bloqueos frecuentes a largo plazo.