def __init__(self): #Info que se desea extraer web = "[Idealista]" transaccion = "[Alquilar]" #transaccion ="[Comprar,Alquilar]" tipologia = "[Viviendas]" info = "[Inmuebles,Bancos]" #info="[Arbol,Inmuebles,Bancos,DetalleInmueble]" #Inicializacion del log log = Log.initialize("lanzador", web) #Ejecucion log.info("Mensaje: Lanzando...||Web:" + str(web) + "||Transaccion:" + str(transaccion) + "||Tipologia:" + str(tipologia) + "||Info:" + str(info)) try: Log.close(log) os.system("python Orquestador.py %s %s %s %s" % (web, transaccion, tipologia, info)) except Exception, e: log.error("Mensaje: El lanzador no ha funcionado||Error:" + str(e)) Log.close(log)
def main(): serverAddr = "" random.seed() # get the command line arguments if len(sys.argv) < 3: print("Invalid numbers of arguments provided. Please try again") sys.exit(1) logFileName = sys.argv[1] port = sys.argv[2] if not port.isdigit() and int(port) < 1024: # check for valid port number print("Please use a port number greater than 1024") sys.exit(1) port = int(port) usedPortNum.append(port) # append to keep track of which port is in used l = Log() # open the log file l.setAndOpenFile(logFileName) # open configuration file try: f = open("ftpserverd.conf", "r") allLines = f.readlines() except FileNotFoundError: print("Cannot find server configuration file.") l.log_("Cannot find server configuration file.") l.close() sys.exit(1) configs = {} for line in allLines: if not line.startswith("#"): mode = line.split("=")[0].lower().strip(" ") status = line.split("=")[1].upper().strip(" \n") configs[mode] = status print(configs) l.log_(str(configs)) if configs["port_mode"] == "NO" and configs["pasv_mode"] == "NO": print("Fatal error. Both port_mode and part_mode are restricted.") l.log_("Fatal error. Both port_mode and part_mode are restricted.") l.close() sys.exit(1) # create socket try: serverSocket = socket.socket( socket.AF_INET, socket.SOCK_STREAM) # create an INET, STREAMing clientSocket serverSocket.setsockopt(socket.SOL_SOCKET, socket.SO_REUSEADDR, 1) # serverAddr = socket.gethostbyname(socket.gethostname()) serverAddr = "0.0.0.0" print(serverAddr) serverSocket.bind( (serverAddr, port) ) # bind the clientSocket to a public host, and an arbitrary port serverSocket.listen(5) # become a server except socket.error as err: errMsg = "Socket creation and connection failed with error %s" % (err) l.log_(errMsg) l.close() sys.exit(1) # start the server while True: try: clientSocket, address = serverSocket.accept() clientAddr = ' '.join(str(v) for v in address) l.logConnectionInfo(clientAddr, str(port)) start_new_thread( runServer, (clientSocket, serverAddr, clientAddr, port, l, configs)) except Exception as error: l.log_(str(error)) sys.exit(1) l.close() serverSocket.close()