Investigación de Revistas
Un pipeline automatizado que extrae ocho revistas de psicología del deporte, clasifica artículos por tema y mantiene un catálogo con registros desde 2015.
Situación
Un consultor de psicología del deporte necesitaba mantenerse actualizado con ocho revistas académicas de diferentes editoriales, cada una con su propio calendario de publicación (trimestral, bimestral, continuo). El campo es activo y los artículos relevantes se publican constantemente, pero encontrarlos era trabajo manual.
El Problema
Revisar manualmente el sitio de cada revista cada mes era tedioso y fácil de omitir. Los artículos relevantes se perdían. Pero más allá del seguimiento, el problema real era el filtrado: la mayoría de los artículos publicados quedaban fuera de las cuatro áreas de enfoque del consultor. Sin clasificación, cada nueva entrega requería revisar manualmente títulos y resúmenes para encontrar los dos o tres que realmente importaban.
Lo Que Hice
Construí un pipeline de dos fases. La fase uno consulta la API de CrossRef para obtener metadatos de artículos (título, autores, DOI, resumen, volumen) filtrados por ISSN de revista y rango de fechas. La fase dos enriquece los registros sin resumen visitando directamente la página del editor con Playwright y extrayendo el texto.
Una herramienta de clasificación separada procesa cada artículo contra cuatro temas definidos por el profesional usando la API de Gemini con salida JSON estructurada. Cada artículo recibe un indicador de relevancia por tema. El clasificador guarda progreso cada 20 artículos y soporta reanudación ante fallo.
Todo corre como herramientas CLI de Node.js con rangos de fechas configurables. Un calendario de publicación rastrea qué revistas publican cuándo, y un verificador de estado muestra una vista de calendario completo de lo que ha sido extraído.
journal-research/
├── journal-scraper.js Phase 1: CrossRef + Phase 2: Playwright
├── classify-articles.js Gemini-powered topic classification
│ └── --resume Checkpoint recovery
├── check-status.js Calendar view + next-check dates
├── publishing-schedule.json 8 journals, ISSNs, frequencies
└── data/
├── journal database.csv Main DB (2015-present, 3,000+ rows)
└── journal_classified.csv Classified output
Classification Topics:
T1: Program Creation & Evaluation
T2: Practitioners & Professional Practice
T3: Student-Athletes & University Sport
T4: Coaches & Sport PsychologyResultado
Más de 3.000 artículos catalogados y clasificados en 4 áreas temáticas. El consultor recibe una lista filtrada de artículos relevantes, no un feed sin procesar que requiere revisión manual. El pipeline corre mensualmente según el calendario de publicación. El seguimiento de revistas que antes tomaba horas ahora sucede en segundo plano.
8 journals
Rastreadas en 4 editoriales
3,000+ articles
Catalogados desde 2015 hasta hoy
4 clasificadores
Multi-etiqueta con detección negativa
Automatización mensual
Extracción programada por calendario
Recuperación por checkpoint
Reanudación ante fallo en ejecuciones largas
3 herramientas CLI
Extractor, clasificador, verificador de estado
Stack Tecnológico
Scraping
- CrossRef API
- Playwright
- Chromium
- HTTP polling
Classification
- Gemini API
- Multi-label detection
- JSON schema enforcement
Data
- CSV pipelines
- Publishing calendar
- Checkpoint/resume
Infrastructure
- Node.js CLI
- Cron scheduling
- Git-tracked output