| 
	
		|  Autor | Tema: python codigo no funciona  (Leído 3,710 veces) |  
	| 
			| 
					
						| winnipu 
								
								 Desconectado 
								Mensajes: 91
								
								
								
								
								
								   | 
 
Hola a todos. Acabo de empezar con python, he usado otros lenguajes antes como java y cpp. Para ir familiarizandome con el lenguaje he cogido unos codigos que hay por la red y los he testeado pero tengo prolblemas con algunos. Por ejemplo os voy a poner un codigo que no me funciona y no se a que se debe. Es un simple scanner de puertos, en principio estaba diseñado para python 2.7 y ejecutado en linux. Yo estoy intentando hacerlo trabajar bajo windows y con python 3.4.3. He modificado algunas cosas en el codigo, como los parentesis para los print (que no estaban), he cambiado los raw_input por input(), pero la cosa sigue sin rular. Alguien puede decirme que anda mal en el codigo? sigue siendo cosa de usarlo en windows o de la version de python que uso? Os pego el code: import socketimport subprocess
 import sys
 from datetime import datetime
 
 
 
 # Ask for input
 remoteServer    = input("Enter a remote host to scan: ")
 remoteServerIP  = socket.gethostbyname(remoteServer)
 
 # Print a nice banner with information on which host we are about to scan
 print ("-" * 60)
 print ("Please wait, scanning remote host", remoteServerIP)
 print ("-" * 60)
 
 # Check what time the scan started
 t1 = datetime.now()
 
 # Using the range function to specify ports (here it will scans all ports between 1 and 1024)
 
 # We also put in some error handling for catching errors
 
 try:
 for port in range(1,1025):
 sock = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
 result = sock.connect_ex((remoteServerIP, port))
 if result == 0:
 print ("Port {}: \t Open".format(port))
 sock.close()
 
 except KeyboardInterrupt:
 print ("You pressed Ctrl+C")
 sys.exit()
 
 except socket.gaierror:
 print ('Hostname could not be resolved. Exiting')
 sys.exit()
 
 except socket.error:
 print ("Couldn't connect to server")
 sys.exit()
 
 # Checking the time again
 t2 = datetime.now()
 
 # Calculates the difference of time, to see how long it took to run the script
 total =  t2 - t1
 
 # Printing the information to screen
 print ('Scanning Completed in: ', total)
 input()
 
 
 
 |  
						| 
								|  |  
								| « Última modificación: 11 Agosto 2015, 11:35 am por winnipu » |  En línea | 
 
 |  |  |  | 
			| 
					
						| ivancea96 
								       
								
								 Desconectado 
								Mensajes: 3.412
								
								 
								ASMático
								
								
								
								
								
								     | 
 
Sin hacerle los cambios que comentas, ¿funciona?
 
 
 |  
						| 
								|  |  
								|  |  En línea | 
 
 |  |  |  | 
			| 
					
						| winnipu 
								
								 Desconectado 
								Mensajes: 91
								
								
								
								
								
								   | 
 
He reiniciado pc y extrañamente ha funcionado. Imagino algun problema desconocido. Aun asi, que me recomiendas 2.7 o 3.4? Por lo que veo la mayoria de los programas que se encuentran en internet estan escritos en 2.7. Hay muchas mas cosas que hayan cambiado aparte del uso de los parentesis del print y de cambios de raw_input por input? |  
						| 
								|  |  
								|  |  En línea | 
 
 |  |  |  | 
			| 
					
						| ivancea96 
								       
								
								 Desconectado 
								Mensajes: 3.412
								
								 
								ASMático
								
								
								
								
								
								     | 
 
Sé que hay algunos cambios importantes entre 2.7 y 3.x que pueden dejar programas inválidos. Simplemente ten ambos intérpretes, y compila pues el que más te guste xD
 Pero bueno, ya que salió 3.4, lo mejor sería andar con 3.4.
 |  
						| 
								|  |  
								|  |  En línea | 
 
 |  |  |  |  |  | 
			| 
					
						| tincopasan 
								       
								
								 Desconectado 
								Mensajes: 1.286
								 
								No es lo mismo conocer el camino que recorrerlo.
								
								
								
								
								
								   | 
 
el code funciona, me imagino que has hecho la conversión de 2.7 a 3.4 a mano, pero python viene con una librería incorporada (2to3.py) si buscas te hace la conversión en la medida de lo posible, siempre que no use tu script modulos muy viejos (los cuales tendrias tambien que modificar). |  
						| 
								|  |  
								|  |  En línea | 
 
 |  |  |  | 
			| 
					
						| winnipu 
								
								 Desconectado 
								Mensajes: 91
								
								
								
								
								
								   | 
 
Gracias a todos por las buenas respuestas. Miro la info que habeis pasado encantado.Si, hice la conversion a mano.
 |  
						| 
								|  |  
								|  |  En línea | 
 
 |  |  |  |  |  
 
	
 
 
				
					
						| Mensajes similares |  
						|  | Asunto | Iniciado por | Respuestas | Vistas | Último mensaje |  
						|   |   | [Python]  PYthong en winXP no me funciona Python
 | dec0 | 1 | 4,102 |  3 Enero 2011, 18:23 pm por Yeison.Eng
 |  
						|   |   | [Python] ¿Por qué esto no funciona? Python
 | randomcito | 6 | 5,772 |  8 Mayo 2011, 23:01 pm por xassiz~
 |  
						|   |   | No me funciona este programa de python Scripting
 | VanX | 4 | 4,362 |  9 Agosto 2011, 13:37 pm por VanX
 |  
						|   |   | (Python) If no funciona Scripting
 | BigKaz | 1 | 1,907 |  14 Noviembre 2016, 23:31 pm por engel lex
 |  
						|   |   | python codigo resumir codigo Scripting
 | Beginner Web | 2 | 3,426 |  3 Junio 2022, 02:12 am por Beginner Web
 |    |