Parecchi metodi sono disponibili in due versioni: uno per gestire testo ed un'altro per i file binari. Questi vengono chiamati per i comandi che vengono usati, seguiti da "lines" per la versione testo e "binary" per la versione binaria.
Le istanze FTP hanno i seguenti metodi:
level) |
0
, non produce alcun output di debugging.
Un valore di 1
produce un quantitativo moderato di messaggi di
output, generalmente una singola riga per richiesta. Un valore di
2
o maggiore produce il massimo quantitativo di messaggi di
debugging, registrando ogni riga inviata e ricevuta sulla connessione
sotto controllo.
host[, port]) |
21
, come indicato dalle
specifiche del protocollo FTP. Raramente è necessario specificare un
numero differente di porta. Questa funzione dovrebbe essere chiamata
solo una volta per istanza; non dovrebbe essere chiamata mai se un
host è già stato fornito quando l'istanza è stata creata. Tutti gli
altri metodi possono essere usati dopo che la connessione è stata
stabilita.
) |
[user[, passwd[, acct]]]) |
'anonymous'
. Se l'utente user è
'anonymous'
, la password predefinita è 'anonymous@'
.
Questa funzione dovrebbe essere chiamata solamente una volta per ogni
istanza, dopo che una connessione è stata stabilita; non dovrebbe
essere chiamata mai se un host ed un utente vengono forniti quando è
stata creata l'istanza. Molti comandi FTP sono consentiti solamente
dopo che il client si è autenticato.
) |
command) |
command) |
command, callback[, maxblocksize[, rest]]) |
'RETR filename'
. La funzione callback viene
chiamata per ogni blocco di dati ricevuti, con un singolo argomento
stringa contenente il blocco di dati. L'argomento facoltativo
maxblocksize specifica la misura massima del blocco da leggere
sull'oggetto socket di basso livello, creato per eseguire il
trasferimento in corso (che sarà anche la misura massima del blocco di
dati passato al callback). Viene scelto un ragionevole valore
predefinito. rest ha lo stesso significato che ha nel
metodo transfercmd().
command[, callback]) |
'LIST'
). La funzione
callback viene chiamata per ogni riga, rimuovendo il carattere
CRLF. La callback, stampa in modo predefinito la riga su
sys.stdout
.
boolean) |
command, file[, blocksize]) |
``STOR nomefile''
. file è un oggetto file aperto
che viene letto fino ad EOF usando il proprio metodo
read() in blocchi di misura blocksize che
ha il valore predefinito 8192.
Modificato nella versione 2.1:
è stato aggiunto un valore predefinito per
blocksize.
command, file) |
cmd[, rest]) |
Se viene fornita l'opzione rest, allora viene inviato un comando "REST" al server, passando rest come un argomento. rest è usualmente una posizione in byte all'interno del file richiesto, chiedendo al server di ricominciare nuovamente ad inviare i byte del file dalla posizione indicata, saltando sui byte iniziali. Notare, comunque, che la RFC 959 richiede solamente che rest sia una stringa contenente caratteri nell'intervallo stampabile dal codice ASCII 33 al codice ASCII 126. Il metodo transfercmd(), comunque, converte rest in una stringa, ma non ne controlla la validità del contenuto. Se il server non riconosce il comando "REST", verrà sollevata un'eccezione error_reply. Se questo avviene, chiamare semplicemente transfercmd() senza il comando rest.
cmd[, rest]) |
None
. cmd e rest hanno lo stesso
significato degli equivalenti in transfercmd().
argument[, ...]) |
argument[, ...]) |
sys.stdout
. Il metodo restituisce None
.
fromname, toname) |
filename) |
pathname) |
pathname) |
) |
dirname) |
filename) |
None
. Notare che il comando
"SIZE" non è standardizzato, ma viene supportato da molte comuni
implementazioni di server.
) |
) |