GoScrapy - Framework ultrarrápido de web scraping basado en Go
(github.com/tech-engine)- Framework de web scraping de alto rendimiento que implementa de forma nativa la arquitectura de Scrapy de Python, aprovechando el rendimiento del lenguaje Go
- Con una sola línea del comando
goscrapy startproject, realiza scaffolding automático de la estructura del proyecto, inicialización del módulo de Go y resolución de dependencias - Scraping paralelo de alto rendimiento basado en el modelo de concurrencia de Go; el framework gestiona automáticamente los reintentos, las cookies y el manejo de concurrencia
- Reintentos automáticos con exponential back-off en caso de fallo
- Arquitectura de flujo de datos clara que va de Spider → Engine → Scheduler → Worker → Middleware → HTTP Client
- Spider entrega las solicitudes al Engine, y el Engine las agenda en el Scheduler
- El Scheduler asegura un worker disponible desde la Worker Queue y luego entrega la tarea al Worker
- El Worker activa el Executor, y el Executor envía la solicitud al HTTP Client pasando por los Middlewares
- La respuesta regresa en orden inverso: Middlewares → Executor → callback del Spider
- Cuando el Spider hace yield de registros, el Engine exporta los datos a DB, CSV, archivos, etc. mediante PipelineManager
- Incluye de forma nativa diversos pipelines de exportación como CSV, JSON, MongoDB, Google Sheets y Firebase
- Ofrece middlewares integrados como Azure TLS y Dupefilter, con un diseño que permite reemplazar y extender casi cualquier capa
- Parsing flexible de HTML con selectores CSS/XPath encadenables
- Estructura limpia donde
settings.gopermite configurar centralmente middlewares y pipelines, mientrasspider.gose enfoca solo en la lógica de parsing - Incluye ejemplos prácticos como scraper de Google Maps, Fingerprint Spoofing (evasión de detección de bots) y monitoreo en tiempo real con TUI
- Actualmente en fase de desarrollo v0.x, con mejoras continuas del Core API rumbo a una v1.0 estable
- Business Source License (BSL): se puede usar libremente en productos comerciales, pero se restringe la reventa del framework mismo como servicio competidor
Aún no hay comentarios.