lab
Esc

Prueba con

↑↓ para moverte · Enter para abrir · también en /buscar?q= para agentes

configuración intermedio pythonmcpclaude-codescraping

Anansi: extrae páginas web con recuperación de selectores

Recopila datos estructurados de páginas que cambian de diseño y conecta esa extracción a tu agente mediante MCP.

✓ verificado el 26 oct 2026

Instrucciones para tu agente

Esto es lo que se copia. Pégaselo a tu agente y te lo monta paso a paso.

O ábrelo directamente en ClaudeChatGPT

Pega este texto a tu agente (Claude Code, Codex, OpenCode, Hermes o el que uses) y dile «ayúdame a montarlo». Son los pasos para ponerlo en marcha; el porqué de cada pieza está en la guía completa.


Para el agente: cómo acompañar al usuario

  1. Pregunta primero para qué lo quiere. Si su objetivo no necesita algún paso, sáltalo.
  2. Antes de instalar, comprueba lo que ya tiene (versiones, claves, sistema operativo).
  3. Avanza un paso cada vez: explica en una frase qué vas a hacer y deja que el usuario lo ejecute o lo apruebe.
  4. Tras cada paso, comprueba que funcionó antes de seguir. Si falla, para y explica el error.
  5. No inventes comandos ni opciones: si la documentación del proyecto contradice estos pasos, manda la documentación.
  6. Al terminar, haz una prueba real con el objetivo del usuario y dile dónde profundizar.

Pasos de configuración

Comprueba que el entorno elegido usa Python ≥3.11 y dispone de pip y Git para instalar desde la URL del repositorio. Verifica que puedes abrir Claude Code y que la terminal que lo lanza encuentra anansi-mcp tras instalar.

Paso 1: instala el núcleo

pip install "git+https://github.com/mdowis/anansi"

Si tu tarea necesita renderizado:

playwright install chromium

Paso 2: registra MCP en Claude Code

claude mcp add anansi -- anansi-mcp

Abre Claude Code, comprueba la conexión en /mcp y pide usar fetch_url con url="https://example.com" y format="text". Debe devolver el título «Example Domain». Para comprobar extracción de campos, pide después fetch_and_extract con esa URL y selectors={"titulo": "h1"}. El contrato oficial de herramientas documenta ambas llamadas. Compara titulo con el encabezado de la página antes de probar sitios complejos.

Comprobación

Verifica varios campos contra la página original. Si cambia un selector, revisa la reparación y no aceptes solo que la ejecución terminó sin errores.

Si algo falla

Si falta contenido, comprueba si necesita JavaScript y si está instalado Chromium. Para problemas de conexión MCP usa docs/mcp.md del repositorio.

ver en .md ¿Prefieres el recurso entero?

Qué es

Anansi es un extractor web en Python con un servidor MCP. Combina solicitudes, navegación cuando hace falta y mecanismos para recuperar selectores que han dejado de localizar los datos.

Para qué te sirve

  • Cuando una página cambia su estructura y tu extracción habitual deja de encontrar un campo.
  • Cuando el contenido solo aparece tras ejecutar JavaScript.
  • Cuando necesitas validar cada elemento extraído antes de guardarlo.

Cómo funciona

Los selectores mantienen puntuaciones de confianza y el sistema guarda reparaciones. Las respuestas se inspeccionan para decidir si necesitan renderizado con navegador. Los modelos Pydantic pueden validar la salida y las señales HTTP ayudan a evitar volver a descargar páginas sin cambios.

El servidor MCP expone herramientas de consulta, extracción y rastreo. Eso deja al agente dirigir el trabajo, pero sigue siendo necesario delimitar sitios, volumen y datos que se van a recoger.

Antes de empezar

Necesitas Python 3.11 o posterior. La navegación requiere instalar el navegador de Playwright; existen extras para otras capacidades. El servidor MCP necesita un cliente que pueda ejecutarlo y acceder a las páginas de destino.

Límites y alternativas

Una reparación automática puede elegir un campo equivocado aunque devuelva un valor válido. Comprueba muestras y conserva la URL de origen. Las funciones de manejo de detección de bots no garantizan acceso ni sustituyen las condiciones del sitio. Para una API estable es preferible consumir su interfaz documentada.

Recursos

  • Repositorio y README - 118 estrellas; licencia detectada por GitHub: Apache-2.0.
  • Licencia - Consulta sus condiciones antes de reutilizar el proyecto.