2011-01-26 16 views
5

Sono su Windows 7.Python FTP per iPad

non riesco a collegarmi al mio iPad con un semplice script Python:

HOST = '192.168.1.122' 
try: 
    f = ftplib.FTP(HOST) 
except (socket.error, socket.gaierror), e:  
    MessageBox.Show('ERROR: cannot reach "%s"' % HOST) 
    return   
try: 
    f.connect(HOST,2121) 
    f.login() 
except ftplib.error_perm: 
    MessageBox.Show('ERROR: cannot login anonymously') 
    f.quit() 
    return 

Gli errori che ho è "getaddrinfo restituisce un elenco vuoto" e il messaggio "non può raggiungere ..." ... Impossibile risolverlo ...

Ho provato a FTP con diversi programmi sull'iPad senza successo. Funziona con FTP o casella DOS o utilizzando un software FTP. Ho provato anche un altro server FTP sul mio PC e funziona.

Sono obbligato a utilizzare la porta 2121, quindi non posso cambiarlo.

Qualsiasi indizio o esperienza?

+2

Avete un server FTP in esecuzione sul vostro iPad? –

+0

Prenderò in considerazione in considerazione del fatto che afferma che funziona utilizzando il software FTP: 'Se i FTP via casella DOS o utilizzando un software FTP funziona ' – Jimmy

+0

presumo, che qualcosa come http://www.savysoda.com/WiFiFTP sia installato. – keatch

risposta

4

Si consiglia di leggere i documenti prima di tutto:

classe ftplib.FTP ([host [, user [, passwd [, acct [, timeout]]]]]) Restituisce una nuova istanza della Classe FTP. Quando viene assegnato l'host , viene effettuata la chiamata al metodo connect (host). Quando l'utente è dato, inoltre, il metodo di chiamata login (utente, passwd, acct) viene effettuato (dove passwd e acct sono predefiniti alla stringa vuota quando non viene fornita). Il parametro di timeout opzionale specifica un timeout in secondi per il blocco delle operazioni come il tentativo di connessione (se non specificato, verrà utilizzata l'impostazione di timeout predefinita globale ).

Quindi, se si fa f = ftplib.FTP (HOST) non riesce perché cercherà di connettersi alla porta standard (21) e non 2121. Si dovrebbe ottenere un'istanza di ftplib e un uso successivo f. connect (HOST, 2121).

http://docs.python.org/library/ftplib.html

+0

sì, questa è la cosa. Ho letto i documenti, ma non sarei qui se potessi averlo passato da solo, vero? Grazie mille, questo ha davvero fatto il trucco ... – Maurizio

+1

Questo è Ok Maurizio, solo indicando leggi i documenti perché (quasi io) sempre "provo" prima di leggere ... Felice di sapere che ora ha funzionato! In bocca al lupo! – webbi