On Fri, Mar 21 2014, Matthias Apitz wrote: > El día Friday, March 21, 2014 a las 12:44:27PM -0400, Abel Bordón Durán > escribió: > >> Hola listeros >> >> Acudo a ustedes una vez más con una duda, primero decirles que no se >> programar casi nada, ahora bien tenía en mi server un script que se >> encargaba de descargarme el pdf del Granma y el juventud para ponerlo al >> servicio de mi red y así liberar ancho de banda pero resulta que desde que >> Granma cambió su portada también cambio la url de descarga del Granma que >> pone de nombre en el fichero de descarga la fecha + la cantidad de páginas >> que tiene, lo de la fecha era fácil pues antes estaba así y lo había >> resuelto utilizando una variable pero ahora no sé cómo ponerle el # de >> páginas ya que no siempre es constante, entonces mi gran pregunta es cómo >> hacerlo alguien tiene el mismo servicio montado o sabe cómo hacerlo?? > > Hola, > > He echoo un vistazo y pienso lo hacen mal. Para hoy existen > > http://www.granma.cu/file/pdf/2014/03/21/G_2014032101.pdf > http://www.granma.cu/file/pdf/2014/03/21/G_2014032102.pdf > http://www.granma.cu/file/pdf/2014/03/21/G_2014032103.pdf > ... > http://www.granma.cu/file/pdf/2014/03/21/G_2014032116.pdf > > para las páginas sueltas y para todas las páginas en un solo fichero > > http://www.granma.cu/file/pdf/2014/03/21/G_2014032117.pdf > > Fíjate, hoy viernes, son 16 páginas y llaman el fichero entero > ....17.pdf en vez de usar otro nombre, hasta dicen en la página en HTML > ".... completa 17 páginas" -- un error. > > Pues, como Granma sale o con 8 o con 16 páginas, puedes bajar el fichero > ....pdf/yyyy/mm/dd/G_yyyymmdd17.pdf y si esto va, está bien, si no bajas > ....pdf/yyyy/mm/dd/G_yyyymmdd09.pdf (con 8 páginas) porque será un día > con 8 páginas. > > Mala idea esta. ¿Alguien de Granma.cu lee acá?
Y con la librería requests de Python se puede bajar automático el documento correcto: #+BEGIN_SRC python import datetime import requests granma_url_pattern = 'http://www.granma.cu/file/pdf/{year}/{month:02d}/{day:02d}/G_{year}{month:02d}{day:02d}{page:02d}.pdf' granma_file_pattern = 'granma_{year}{month:02d}{day:02d}.pdf' def bajar_granma(fecha): for p in (17, 8): url = granma_url_pattern.format(year = fecha.year, month = fecha.month, day = fecha.day, page = p) r = requests.head(url) if r.status_code != 200: continue print url granma_filename = granma_file_pattern.format(year = fecha.year, month = fecha.month, day = fecha.day) r = requests.get(url, stream=True) with open(granma_filename, 'wb') as fd: for chunk in r.iter_content(1024): fd.write(chunk) break bajar_granma(datetime.datetime.now()) #+END_SRC Desde el «shell» se debe poder hacer con la librería LWP (libwww-perl) instalada con los comandos HEAD y GET. Servilio -- Este mensaje ha sido analizado por MailScanner en busca de virus y otros contenidos peligrosos, y se considera que est� limpio.
______________________________________________________________________ Lista de correos del Grupo de Usuarios de Tecnologías Libres de Cuba. Gutl-l@jovenclub.cu https://listas.jovenclub.cu/cgi-bin/mailman/listinfo/gutl-l