elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado: Usando Git para manipular el directorio de trabajo, el índice y commits (segunda parte)


+  Foro de elhacker.net
|-+  Programación
| |-+  Scripting
| | |-+  [Aporte][Python]Linux Magazine Downloader v1.0
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: [Aporte][Python]Linux Magazine Downloader v1.0  (Leído 2,303 veces)
electrodev

Desconectado Desconectado

Mensajes: 58


No,¡Las Maquinas no son Perfectas!


Ver Perfil
[Aporte][Python]Linux Magazine Downloader v1.0
« en: 9 Agosto 2013, 00:08 am »

Hola gente la pasada noche me dio por codeamer un downloader para los articulos de todos los numeros de Linux Magazine que son publicos (1-82) a día de hoy, ya que me parece extremadamente pesado descargar uno por uno todos los articulos. Lo programe bajo windows pero cambiando un par de comandos debe funcionar 100% en linux, no me pregunten porque descargo revistas de linux desde un windows xD.Ni que decir tiene que el codigo es ampliamente mejorable, pero bueno funciona.

Código:
#!python
#Linux Magazine Downloader v1.0 (cc)7/8/13
#Create by: Eduardo97

import urllib2,os

url = "http://www.linux-magazine.es/issue/"

start_magazine = 1

for i in range(start_magazine,83):
   if len(str(i)) > 1:
       i = str(i)
   else:
       i = "0" + str(i)
   os.system("md "+i)
   os.system("copy wget.exe "+i)
   req = urllib2.Request(url+i)
   response = urllib2.urlopen(req)
   html = response.read()
   f = open("html.txt", "w")
   f.write(html)
   f.close()
  
   os.system("cd "+i+" & wget.exe "+url+"/"+i+"/LinuxMagazineCover_XXL.jpg & ren LinuxMagazineCover_XXL.jpg portada.jpg")
   f = open("html.txt", "r")
   for line in f:
       if line.find(".pdf") >= 0:
          try:
             doc = line.split('<a href="')[1]
             doc = doc.split('">')[0]
             os.system("cd "+i+" & wget.exe "+url+"/"+i+"/"+doc)
          except:
             pass
       else:
          pass
   f.close()
   os.system("cd "+i+" & del wget.exe")
os.system("del html.txt")

Para que funcione es necesario tener el wget para windows en la misma carpeta donde esta el script, lo pueden descargar aquí: http://users.ugent.be/~bpuype/wget/. Para hacerlo funcionar les aconsejo que creen una carpeta dónde ponen el script y el wget, luego solo ejecutan el script y el solo les ira creando carpetas correspondientes a cada numero con los artículos y la portada de ese numero dentro.Si quieren que descarge a partir del un numero determinado solo cambien el numero de la variable "start_magazine", esto es útil para por si apagan el pc y luego quieren continuar donde lo dejaron.Para migrar el script a linux cambien los comandos de consola windows por los de linux:  & = ; , md = mkdir , rem = mv , quiten el .exe al wget y las lineas "os.system("copy wget.exe "+i) y os.system("cd "+i+" & del wget.exe")" . No lo he probado en linux pero deberia funcionar.

Espero que el script les funcione y les sea de ayuda.

Un Salu2




« Última modificación: 9 Agosto 2013, 00:11 am por Eduardo97 » En línea

Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  

Mensajes similares
Asunto Iniciado por Respuestas Vistas Último mensaje
CREANDO UN DOWNLOADER EN PYTHON
Scripting
43H4FH44H45H4CH49H56H45H 2 2,851 Último mensaje 5 Julio 2008, 06:37 am
por dooque
[Python] WS Downloader: ¡Descarga vídeos de YouTube!
Scripting
.:WindHack:. 5 4,507 Último mensaje 19 Noviembre 2010, 02:54 am
por .:WindHack:.
[Python] MP3 Downloader 0.1
Scripting
BigBear 4 2,811 Último mensaje 20 Diciembre 2012, 20:03 pm
por flacc
Keylogger en python(con win32api)[APORTE]
Scripting
WarZ0n3 1 3,103 Último mensaje 17 Abril 2013, 19:33 pm
por daryo
[python]aporte comodines ip
Scripting
daryo 0 2,173 Último mensaje 2 Mayo 2013, 02:34 am
por daryo
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines