| name | web-research |
| description | Arsenal completo de herramientas de investigación web, extracción de datos y OSINT utilizadas por Planitor y sus agentes. Documenta herramientas, fallback chains, y flujos de trabajo reales por tipo de investigación.
|
Web Research — Arsenal de Investigación
Sistema completo de herramientas para búsqueda, extracción, scraping y OSINT.
Todas las herramientas funcionan sin intervención manual y están integradas en el pipeline.
🔄 Fallback Chain de Fetching
Para obtener contenido de cualquier URL, seguir este orden:
1. curl -sL "$URL"
└─ Estático, rápido (~1s). Si devuelve contenido útil → usar
└─ Si falla, vacío, o bloqueado ↓
2. curl -sL "https://r.jina.ai/$URL"
└─ Jina AI: paywall bypass, JS rendering (~3s)
└─ Si falla ↓
3. python3 skills/searxng-search/searxng-search.py "$QUERY"
└─ SearXNG: búsqueda metagear, sin rate limits (~2s)
└─ Si no encuentra ↓
4. lightpanda fetch --dump markdown "$URL"
└─ Lightpanda: JS rendering ultrarrápido (~1.7s), bypass Cloudflare
└─ Si falla ↓
5. scrapling stealthy-fetch "$URL" --headless --wait 3000
└─ Scrapling: anti-bot completo, último recurso (~7-10s)
└─ Bypass todo tipo de protecciones
🔧 Herramientas por Categoría
Búsqueda Web
| Herramienta | Tipo | Rate Limit | Uso Principal |
|---|
| Tavily | API (web_search tool) | 1000 req/mes (free) | Búsqueda primaria, optimizada para IA |
| SearXNG | Script Python | Sin límite | Búsqueda sin rate limits, URLs de competidores |
| Jina AI | API (r.jina.ai) | Sin límite | Bypass paywalls, artículos completos |
| Perplexity Pro | Browser automation | Suscripción $20/mes | Búsqueda pro con fuentes (opcional) |
Cuándo usar cada una:
- Búsqueda general de información → Tavily (primero)
- Necesitas URLs verificables de competidores → SearXNG
- Artículo detrás de paywall → Jina AI
- Búsqueda profunda con análisis → Perplexity Pro (si disponible)
Scraping / Extracción Web
| Herramienta | Velocidad | Anti-bot | Uso |
|---|
| Lightpanda | ⚡ 1.7s | Cloudflare bypass | Webs con JS, tweets, datos dinámicos |
| Scrapling | 🐢 7-10s | Full anti-bot | Último recurso, sitios muy protegidos |
| Camoufox | 🐢 5-8s | Fingerprint spoofing | Google Reviews, datos que requieren navegador real |
| agent-browser | 🐢 10-15s | Perfil guardado | Automatización compleja, Perplexity, flujos multi-paso |
Scrapling tiene 3 modos:
scrapling extract fetch "$URL" output.md
scrapling extract get "$URL" output.md
scrapling extract stealthy-fetch "$URL" output.md --headless --wait 3000
scrapling extract get "$URL" output.md -s ".price, .product-name"
Datos Empresariales (España)
| Herramienta | Datos | Fuentes |
|---|
| registro-empresas-es | CIF, administradores, cuentas, estado, capital | Infocif, LibreBOR, BORME, eInforma |
| company-research | Pipeline completo 8 fases de investigación empresarial | Todos los registros + OSINT + web |
registro-empresas-es — Quick use:
company-research — Para investigación profunda de un competidor:
Pipeline de 8 fases:
BRIEF → IDENTITY → STRUCTURE → OPERATIONS → FINANCIAL → HISTORY → RED FLAGS → SYNTHESIS
(datos CIF) (dual-LLM) (subdividido) (subdividido) (dual-LLM)
Delegar a Scout con skill: agents/scout/skills/company-research/SKILL.md
Redes Sociales y Reseñas
| Herramienta | Plataforma | Output | Velocidad |
|---|
| twitter-extract | Twitter/X | Tweets, timelines, hilos | 1.7s (Lightpanda) |
| Google Reviews | Google Maps | Reseñas, ratings, texto | 5-8s (Camoufox) |
| reddit-readonly | Reddit | Posts, comentarios, hilos | ~2s (JSON API) |
| instagram | Instagram | Posts, seguidores | vía Lightpanda/Scrapling |
twitter-extract:
lightpanda fetch --dump markdown "https://x.com/user/status/123"
python3 skills/twitter-extract/extract_tweet_scrapling.py --user "@username" --limit 15
python3 skills/twitter-extract/extract_tweet_scrapling.py --search "keyword" --limit 20
Google Reviews:
xvfb-run -a --server-args="-screen 0 1920x1080x24" \
python3 agents/extractor/skills/google-reviews-extract/google_reviews_camoufox.py \
"Nombre Negocio" "Ciudad" --max 10
Reddit:
node skills/reddit-readonly/reddit-readonly.mjs "escape room madrid"
node skills/reddit-readonly/reddit-readonly.mjs "https://reddit.com/r/..."
OSINT (Investigación Avanzada)
| Herramienta | Qué encuentra | Ejemplo |
|---|
| Sherlock | Perfiles en 400+ redes sociales | sherlock username |
| theHarvester | Emails, subdominios, IPs, URLs | theHarvester -d domain.com -b all |
| osint-investigation | Pipeline completo OSINT | Skills con scrapling integrado |
Tendencias y Demanda
| Herramienta | Datos | Uso |
|---|
| trends-checker | Google Trends, interest over time, related queries | Demanda consciente |
| market-analysis | Pipeline 7 fases: Trends→YouTube→Reddit→Instagram→TikTok→Twitter→Maps | Análisis completo de mercado |
Subvenciones
| Herramienta | Qué busca |
|---|
| subvencion-watcher | Subvenciones y ayudas disponibles por sector y ubicación |
📋 Flujos de Trabajo por Fase del Pipeline
Fase 2: Ground Truth
1. [Extractor] INE padrón municipal → población, demografía
2. [Extractor] Precio alquiler local comercial → Idealista, Fotocasa
3. [Extractor + SearXNG] Competidores → URLs verificadas
4. [Google Reviews] Reseñas de competidores → ratings, quejas, fortalezas
5. [registro-empresas-es] Datos societarios de competidores → CIF, admin, estado
6. [Scout] Benchmarks sector → ticket medio, márgenes, ocupación
Fase 3: Market Analysis
1. [SearXNG] Competidores directos e indirectos → URLs
2. [trends-checker] Google Trends → demanda consciente
3. [reddit-readonly] Opinión del sector → tendencias, quejas
4. [twitter-extract] Actividad competidores en redes
5. [subvencion-watcher] Subvenciones disponibles
6. [company-research] Si competidor clave → investigación profunda (Scout)
Fase 4: Financials
1. [Tavily/SearXNG] Precios de mercado → tarifas promedio
2. [registro-empresas-es] Cuentas depositadas competidores → facturación
3. [Jina AI] Artículos sectoriales → márgenes, costes
🤖 Agentes de Investigación
| Agente | Modelo | Especialización | Cuándo usarlo |
|---|
| Extractor | glm-4.7-flash | Extracción rápida, datos puntuales | Queries concretas (INE, precios, URLs) |
| Scout | glm-5.1 | Investigación profunda, multi-fuente | Análisis de sector, benchmarks, investigación compleja |
| Boti | glm-5.1 | Orquestación, coordinación | Lanzar Extractor + Scout en paralelo |
Patrón de delegación
Boti (orquestador):
├── Extractor (rápido, 3 queries puntuales)
│ ├── "INE padrón [ciudad]"
│ ├── "competidores [tipo] [ciudad]"
│ └── "precio alquiler [ciudad]"
└── Scout (profundo, 1-2 investigaciones)
├── "Análisis mercado [sector] España"
└── "Benchmarks [tipo negocio]"
Ambos en paralelo. Boti espera ambos antes de pasar datos a Planitor.
🛠️ Setup y Dependencias
Ver SETUP.md para instalación completa.
Resumen rápido de instalación:
python3 -m venv ~/.openclaw/scrapling-venv
source ~/.openclaw/scrapling-venv/bin/activate
pip install "scrapling[all]>=0.4.1" httpx beautifulsoup4 pydantic
scrapling install --force
python3 -m venv camoufox-env
source camoufox-env/bin/activate
pip install camoufox playwright
pipx install sherlock-project theHarvester
Ver También
- SETUP.md — Guía de instalación paso a paso
- TOOLS.md — Inventario completo con ubicaciones exactas
- skills/data-extractor/SKILL.md — Cómo delegar a Extractor
- skills/data-crosscheck/SKILL.md — Verificación cruzada de datos