Bloggeando la vida

Calendario de feriados de Chile para Google Calendar

Por Marcelo Aliaga. March 2, 2009

Tenía una duda: ¿cuales son los feriados de cada año? ¿será necesario tener que esperar a comprar un calendario para saberlo? Con ese par de preguntas me puse a buscar donde Mr. G para ver si existía algo relacionado a los feriados. Para mi sorpresa, Miguel Farah investigó en diversas fuentes todo lo relacionado [...]

Tenía una duda: ¿cuales son los feriados de cada año? ¿será necesario tener que esperar a comprar un calendario para saberlo? Con ese par de preguntas me puse a buscar donde Mr. G para ver si existía algo relacionado a los feriados. Para mi sorpresa, Miguel Farah investigó en diversas fuentes todo lo relacionado a los feriados chilenos, aspirando a listar los que ya pasaron y los del futuro, asombrosamente hasta el 2100.

Viendo esta info se me ocurrió pasarla a Google Calendar. Para ello la idea es importar todas las fechas hasta el 2100 en uno de los formatos que Google Calendar acepta. En este caso, el conocido públicamente como iCalendar y crípticamente como la especificación RFC2445 :)

El procedimiento
Obteniendo las fechas del sitio antes mencionado, podemos generar un listado enorme que guardaré en el archivo baseTres, el que limpiando un poco con el típico Find & Replace, podemos dejarlo de esta forma

21/05/2009 Día de las Glorias Navales

como el formato de fecha no es aceptado por el estándar, jugamos con el Find & Replace, logrando un listado de la forma

21 05 2009 @Día_de_las_Glorias_Navales

Con lo que podemos separar en cuatro campos (21,05,2009, @Día_de_las_Glorias_Navales) gracias a los espacios simples.

Con nuestro viejo amigo AWK reordenamos el asunto ya que Día Mes Año debe quedar como AñoMesDía, es decir, en variables, $1 $2 $3 como $3$2$1:

awk -F" " '{printf $3$2$1" "$4"\n"}' baseTres > date

logrando un archivo llamado date como sigue

20090521 @Día_de_las_Glorias_Navales

Find & Replace nuevamente y tenemos un lindo archivo con este formato

20090521@Día de las Glorias Navales

Ahora como pueden notarlo, el separador será una @ para distinguir fechas de descripción. Para formatear el archivo en iCal y guardarlo en calendario.html (puede ser cualquier formato):

awk -F"@" '{printf "BEGIN:VEVENT<br>URL:VEVENT<br>DTSTART:"$1"<br>DTEND:"$1<br>SUMMARY:"$2"<br>LOCATION:Chile<br>END:VEVENT<br><br>“}’ date > calendario.html

Esto nos entrega el listado en el formato iCal de este estilo

BEGIN:VEVENT
URL:VEVENT
DTSTART:20090101
DTEND:20090101
SUMMARY:Año Nuevo (irrenunciable)
LOCATION:Chile
END:VEVENT

A lo que debemos agregar la cabecera del archivo

BEGIN:VCALENDAR
PRODID:-//FERIADOSCHILE//EN
VERSION:3.0

y el pie del archivo

END:VCALENDAR

Generando el inmenso archivo con feriados el que será importado por una cuenta especialmente creada para la ocasión.

Como agregarlo a tu calendario

Ingresa a calendar.google.com. En la columna izquierda abajo encontrarás algo como “otros calendarios” y “añadir el calendario de un amigo”. En tal recuadro agrega feriadoschile@gmail.com y listo! :D

Como recomendación, pueden cambiarle color a rojo para marcar el feriado tal como en un calendario tradicional.

Notas finales y agradecimientos
Existen múltiples formas de lograr lo mismo, probablemente magos de AWK en una línea lo lograrían :) el sentido era lograr la utilidad y… funciona!. Cualquier sugerencia o comentario será leído atentamente.

El procedimiento para creación del calendario, puede usarse para crear otro calendario de otro país, organización o eventos que tengan algo de sistemático. Algo mezclado con rss sería interesante, por ejemplo, para generar carteleras de eventos por localidad :O

Agradezco a Sergio Lorca por salvarme con Ubuntu Live ya que por acá no lo tengo y desde luego a Miguel Farah por toda la pega que ha hecho en lo relativo a documentar los feriados de Chile.

Enlaces relacionados
Internet Calendaring and Scheduling Core Object Specification (iCalendar)
Días feriados en Chile

~ @ ~

34 Comments »

  1. Asi q esa era la formula…

    saludos Maldonado!!

    Comment by ker — March 2, 2009 @ 2:41 pm

  2. Buena :D oye, pero qué “baseTres > date”? está algo raro esa orden de los datos

    Comment by Alejandro — March 2, 2009 @ 3:04 pm

  3. @Alejandro baseTres es el listado que contiene las fechas para formatear.

    Editado para aclararlo ;)

    Comment by Marcelo Aliaga — March 2, 2009 @ 3:21 pm

  4. Puedes usar las reglas BEGIN y END para agregar a la cabecera y el pie al archivo. quedaría algo así:

    [sourcecode language='cpp']
    awk -F”@” ‘
    BEGIN { print “BEGIN:VCALENDAR \n PRODID:-\/\/FERIADOSCHILE\/\/EN \n VERSION:3.0″ }
    {printf “BEGIN:VEVENTURL:VEVENTDTSTART:”$1″DTEND:”$1SUMMARY:”$2″LOCATION:ChileEND:VEVENT”}
    END { print “END:VCALENDAR” }’ date > calendario.html
    [/sourcecode]

    Comment by Francisco Rojas — March 2, 2009 @ 3:41 pm

  5. @Francisco, si, aunque la puse a mano xD

    Gracias por el aporte!

    Comment by Marcelo Aliaga — March 2, 2009 @ 3:46 pm

  6. Marcelo y funciona hacerlo en ese orden?

    yo recuerdo que era:

    date > baseTres | script awk…

    Comment by Alejandro — March 2, 2009 @ 3:47 pm

  7. @Alejandro, la prueba está en tu Calendar: Funca ;)

    A todo esto, se me olvidó poner en los agradecimientos a Marco Montero y César Astudillo :O

    Comment by Marcelo Aliaga — March 2, 2009 @ 3:50 pm

  8. xD por todos esos semestres xD

    Comment by Alejandro — March 2, 2009 @ 3:54 pm

  9. @Alejandro, leyendo el discurso que tradujiste en tu blog, pude asociar ciertos aprendizajes interesantes. Uno de ellos el que mencionas.

    Saludos!

    Comment by Marcelo Aliaga — March 2, 2009 @ 4:02 pm

  10. Gracias por las flores. :-)

    He seguido investigando, y encontré información sobre el siglo XIX. Próximamente aparecerá en el sitio.

    Comment by Miguel Farah — March 2, 2009 @ 8:28 pm

  11. Nada de flores, igual pega el extrapolar feriados a 100 años :)

    Esperemos que no cambien hasta el 2100!

    Saludos!

    Comment by Marcelo Aliaga — March 3, 2009 @ 11:11 am

  12. Marcelo:

    Agregué el calendario de feriadoschile@gmail.com pero Google calendar señala que no tengo autorización???? Es un calendario público o vas dando autorización vez x vez?

    Saludos y buen trabajo

    GC

    Comment by Gabriel — March 3, 2009 @ 3:32 pm

  13. Como puedo exportarlo para utilizarlo en el iCal (apple)??

    Saludos,

    buen calendario

    Comment by Jaime Vasquez — March 5, 2009 @ 5:07 pm

  14. ¡Listo!

    Incorporé la información sobre el siglo XIX, y además creé una página nueva acerca de los “Días Nacionales” (días que el Estado celebra sin llegar a declararlos feriados)… son HARTOS (y plagados de errores :-( ). Échale una mirada en http://www.farah.cl/Feriados/DiasNacionales.html .

    Comment by Miguel Farah — March 9, 2009 @ 8:17 am

  15. Por fin alguien le encontró utilidad al trabajo de Miguel jajajajaja (bromas de amigo nomás :P)

    Por cierto, ¿por que no lo dejaste como calendario público mejor?

    Comment by RodrigoVB — March 10, 2009 @ 4:03 pm

  16. ¡Listo!

    Incorporé la información sobre el siglo XIX, y además creé una página nueva acerca de los “Días Nacionales” (días que el Estado celebra sin llegar a declararlos feriados)… son HARTOS (y plagados de errores :-( ). Échale una mirada en
    http://www.farah.cl/Feriados/DiasNacionales.html.

    Comment by Miguel Farah — March 11, 2009 @ 10:45 am

  17. No puedo agregar tu calendario, porias hacerlo publico porfa? Gracias

    Comment by Juan Andrés Zenteno — March 23, 2009 @ 12:42 pm

  18. muy buen trabajo, lamentablemente no es un calendario publico, seria ideal si pudieras compartirlo y dejarlo publico. slds y felicitaciones por la pega.

    Comment by Doomsday — April 3, 2009 @ 11:08 am

  19. Hola, estuve leyendo el posteo y el tema del calendario es justo lo que andaba buscando. Para incluirlo, siguiendo las instrucciones que tienes en destacado, hice todo, pero dice que mandó una autorización al dueño o creador. Bueno, me imagino que eso pasa por no ser publico, que hago al respecto?
    Gracias.

    Comment by Rodrigo Osorio — April 27, 2009 @ 3:34 pm

  20. oye ya lo agregue ahora estoy listo pa ver lso feriados???

    Comment by paaancho — May 6, 2009 @ 7:34 pm

  21. Lo he ingresado y me dice que debo esperar la confirmación, ojala resulte por que no tengo donde corroborar los feriados en relación a mis actividades.

    Gracias

    Comment by Christian — May 26, 2009 @ 3:00 pm

  22. Agregados!, ya está público el calendario.

    Saludos!

    Comment by Marcelo Aliaga — May 31, 2009 @ 1:28 am

  23. Exelente inciativa, pero tiene un pequeño detalle que se puede corregir. El 18 de septiembre se celebra el aniversario de la primera junta de gobierno, la independencia de Chile es el 12 de febrero.

    Comment by Juan Sáa — June 18, 2009 @ 1:12 pm

  24. Muchas gracias por el calendario, me ha sido de gran utilidad. Eso si, le faltan algunos, por ejemplo: el 16 de Julio es feriado (virgen del Carmen o algo asi). Tampoco aparece el 29 de Junio (San Pedro y San Pablo)

    Comment by Felipe — July 13, 2009 @ 12:39 pm

  25. Olvidalo, pense que era este calendario el que tenia como de Feriados, agregue el tuyo y ahi si aparecen todos lo feriados. MUUUCHAS GRACIAS !

    Comment by Felipe — July 13, 2009 @ 12:45 pm

  26. muy bueno !!!! gracias

    Comment by felipe — July 28, 2009 @ 4:02 pm

  27. muy bueno! muchas gracias marcelo!

    Comment by Verrito — July 31, 2009 @ 5:20 pm

  28. Excelente! Muchas Gracias

    Comment by Cristián — August 4, 2009 @ 12:02 pm

  29. Excelente!! muchas gracias por compartirlo. Es justo lo que nadaba buscando.

    Saludos

    Comment by Álvaro Rubiño — August 12, 2009 @ 9:21 am

  30. Hola,

    ¿Existe la posibilidad de que publiques el archivo del calendario en formato ical?, para así mezclarlo con mi calendario personal de google calendar y así poder sincronizarlo con mi nokia s60

    Comment by esteban — August 12, 2009 @ 4:25 pm

  31. Gracias, muy útil

    Comment by Argyle — August 31, 2009 @ 10:32 am

  32. Hola, sólo quería agradecerte por la pega, ahora mismo estoy ocupando el calendario.
    ¿Por qué no agregarlo a la lista oficial a modo que todo Chileno recién iniciado en GCalendar pueda acceder a él? sólo una idea.

    Saludos!

    Comment by Toño — October 21, 2009 @ 10:30 am

  33. muchas gracias, justo lo que necesitaba

    Comment by mario — December 9, 2009 @ 12:20 pm

  34. Gracias.

    Comment by Francisco — December 20, 2009 @ 10:46 am

RSS feed for comments on this post. TrackBack URL

Leave a comment

Le blogué
Les tuits

¿Qué es esto?

Estas son las últimas fotografías que he subido a mi cuenta de Flickr!. Las imagenes tienen licencia CC. Puedes utilizarlas siempre y cuando se cite la autoría del original.

Último estado

  • maliaga: ¡Vaya a ver nuestras casas! Que lindo: no responde desde SU constructora y tendrá que hacerlo ahora como Intendente. http://bit.ly/bsU0je
    (Publicado hace 2 horas, 25 minutos).

Los más comentados

Les images

Powered by WordPress