Herramienta · En uso
El horario de un campeonato, filtrado y siempre al día
Una web que lee el horario oficial de un torneo cada minuto y enseña solo los combates de los tuyos, con el enlace al directo de su tatami.
Qué problema resuelve
El horario de un campeonato se publica en una tabla pensada para árbitros y el directo va aparte, sin enlace entre ambos. Cada familia pierde media hora buscando a su deportista y vuelve a mirar cada vez que cambia una hora.
Cómo funciona
- 01
Lo tuyo, arriba
Al abrirla aparecen primero los combates de los deportistas elegidos con hora, tatami, rival y categoría. Debajo, todos los del día, con filtros por país y por tatami y un buscador.
- 02
Del horario al directo
Cada combate lleva un botón que abre el directo de ese tatami en ese día, cruzando los títulos de los vídeos con el calendario.
- 03
Se actualiza sola
Cada minuto, solo en horario de competición, se vuelve a leer el horario y se sube únicamente si algo ha cambiado. Cuando la organización mueve una hora, en dos minutos está aquí.
- 04
Hecha para el móvil
Una página sin dependencias pensada primero para el móvil, que se comparte con la familia como un enlace.
Cómo funciona por dentro
Hay tres piezas que se entienden sin saber programar:
- Lector del horario. Un programa lee la tabla pública del torneo, una rejilla de hora por tatami en la que las celdas ocupan varias filas, y la reconstruye para sacar cada combate con sus dos nombres, el país, la categoría, el tatami y la hora.
- Cruce con el directo. Los vídeos del canal oficial llevan en el título cosas como «DAY 2 MAT 3», que es el día y el tatami. Se cruza con el horario y cada combate sabe qué directo abrir.
- Página ligera. Una página estática, pensada primero para el móvil, que lee un fichero de datos cada minuto y lo pinta con sus filtros.
Una tarea programada en un ordenador de casa repite el proceso cada 60 segundos, solo en horario de competición, y sube los datos al servidor únicamente si algo ha cambiado.
El stack, explicado
El «stack» es el conjunto de herramientas con las que está hecho. Aquí es deliberadamente simple: Python para leer y cruzar los datos, yt-dlp para listar los directos del canal, una página estática que no necesita ninguna librería y un servidor Caddy que la publica con certificado automático. Los nombres que vienen del horario nunca se insertan como código en la página, solo como texto, para que un dato extraño no pueda romperla.
Qué aprendimos
- Un fallo de otro no debe convertirse en una mentira tuya. La primera versión, si la web de la organización fallaba un minuto, dejaba la página vacía diciendo «aún no publicado». Ahora conserva los últimos datos buenos.
- Los nombres se repiten entre torneos. El canal de vídeo tiene varios torneos a la vez y existía el mismo «DAY 2 MAT 1» para dos competiciones en continentes distintos. Sin un filtro por nombre del torneo, el botón de directo habría llevado a la otra punta del mundo. Lo cazó la revisión de código, no la prueba manual.
- Saber dónde está la línea ahorra problemas. Las páginas con comprobación anti-robots no se automatizan; el horario público, sí.
- Se verificó en móvil a 390 píxeles, sin desplazamiento lateral, con la hora en la zona horaria del torneo y no la del ordenador.
Límites honestos
- Depende de que la organización mantenga el formato de su tabla: si lo cambia, hay que ajustar el lector.
- Es genérica, pero no es un producto: para cada torneo nuevo se editan unos ajustes y se reactiva la tarea.
- Solo sirve para torneos que publiquen su horario en esa plataforma.
Con qué está hecho
- Python
- yt-dlp (lectura de los directos)
- Web estática sin dependencias
- JSON
- Caddy (servidor)
- Tarea programada del sistema
Qué hicimos
- Genérica: para el siguiente campeonato se cambian cinco líneas de un fichero de configuración.
- Montada de cero en una noche para un torneo internacional. Primer análisis: 786 combates repartidos en 6 tatamis (las superficies de combate) y 40 directos ya programados.
- Uso puntual: al terminar el torneo, la página se archiva sola en su propia dirección y la tarea programada se retira, para no dejar nada corriendo entre torneos.
- Un vigilante previo avisó por Telegram y por correo en cuanto se publicó el horario, y se apagó cuando la web estuvo lista.
Qué no entraba
- No se salta la comprobación anti-robots de las páginas de cuadros e inscritos: se enlazan, y la persona la pasa. El horario, que es lo que importa, es público.
- No añade ningún dato que la organización no publique ya: solo lo reordena y lo filtra.
¿Tienes un proyecto parecido?
Cuéntanos qué necesitas y te decimos cómo lo haríamos y si te sale a cuenta.
Hablemos