11.13.1 Oggetti Telnet

Le istanze Telnet hanno i seguenti metodi:

read_until( expected[, timeout])
Legge fino a che una data stringa, expected, viene incontrata, o fino a che non sono trascorsi i secondi relativi al timeout.

Quando non viene trovata alcuna corrisponda, restituisce al suo posto qualsiasi cosa disponibile, possibilmente la stringa vuota. Solleva l'eccezione EOFError se la connessione è chiusa e non ci sono dati elaborati disponibili.

read_all( )
Legge tutti i dati fino all'EOF; resta in attesa fino alla chiusura della connessione.

read_some( )
Legge come minimo un byte di dati elaborati fino al raggiungimento dell'EOF. Restituisce '' se viene trovato un EOF. Blocca se non ci sono dati immediatamente disponibili.

read_very_eager( )
Legge qualsiasi cosa che ci sia senza il blocco dell' I/O (zelante).

Solleva l'eccezione EOFError se la connessione viene chiusa e non ci sono dati elaborati disponibili. Altrimenti restituisce '' se non vi sono dati disponibili. Non blocca finché è nel mezzo di una sequenza IAC.

read_eager( )
Legge tutti i dati disponibili e leggibili.

Solleva l'eccezione EOFError se la connessione è chiusa e non ci sono dati elaborati disponibili. Altrimenti restituisce '' se non ci sono dati elaborati disponibili. Non blocca finché è nel mezzo di una sequenza IAC.

read_lazy( )
Processa e restituisce i dati già nella coda (pigro).

Solleva l'eccezione EOFError se la connessione è chiusa e non ci sono dati disponibili. Altrimenti restituisce '' se non ci sono dati elaborati. Non blocca finché è nel mezzo di una sequenza IAC.

read_very_lazy( )
Restituisce ogni dato disponibile nella coda di elaborazione (molto pigro).

Solleva l'eccezione EOFError se la connessione è chiusa e non ci sono dati disponibili. Restituisce '' se altrimenti non ci sono dati elaborati disponibili. Questo metodo non è mai bloccante.

read_sb_data( )
Restituisce i dati raccolti attraverso una coppia SB/SE (sotto opzione Inizio/Fine). La chiamata dovrebbe accedere a questi dati quando viene invocata attraverso un comando SE. Questo metodo non è mai bloccante.

Nuovo nella versione 2.3.

open( host[, port])
Si connette all'host. Il secondo argomento facoltativo è il numero della porta, che ha il valore predefinito della porta standard Telnet (23).

Non tentare di riaprire un'istanza già connessa.

msg( msg[, *args])
Stampa un messaggio di debug quando il livello di debug è > di 0. Se sono presenti argomenti extra, vengono sostituiti nel messaggio utilizzando l'operatore standard di formattazione delle stringhe.

set_debuglevel( debuglevel)
Imposta il livello di debug. Maggiore è il valore di debuglevel e maggiore sarà il numero di informazioni di debug ottenute (su sys.stdout).

close( )
Chiude la connessione.

get_socket( )
Restituisce l'oggetto socket utilizzato internamente.

fileno( )
Restituisce il descrittore di file dell'oggetto socket utilizzato internamente.

write( buffer)
Scrive una stringa nel socket, raddoppiando ogni carattere IAC. Questo sistema si può bloccare se la connessione è bloccata. Può sollevare l'eccezione socket.error se la connessione è chiusa.

interact( )
Funzione di interazione. Emula un vero client Telnet stupido.

mt_interact( )
Versione multithread di interact().

expect( list[, timeout])
Legge finché c'è una corrispondenza con una delle espressioni regolari nella lista list.

Il primo argomento è una lista di espressioni regolari, sia compilate (istanza re.RegexObject) che non compilate (stringhe). Il secondo argomento, facoltativo, è un timeout in secondi; il suo comportamento predefinito è bloccare indefinitamente.

Restituisce una tupla di tre elementi: l'indice nella lista della prima espressione regolare che corrisponde; l'oggetto corrispondente restituito; il testo letto fino alla corrispondenza da verificare, inclusa la parte corrispondente.

Se viene trovata la fine del file e non è stato letto del testo, viene sollevata l'eccezione EOFError. Altrimenti, quando non corrisponde niente, restituisce ((-1, None, text)) dove text è il testo ricevuto (che potrebbe essere una stringa vuota se è intervenuto un timeout).

Se un'espressione regolare termina con una elemento di corrispondenza multipla (come un .*) o più di un'espressione che possa avere corrispondenza con lo stesso input, i risultati sono indeterminati e possono dipendere dalle temporizzazioni I/O.

set_option_negotiation_callback( callback)
Ogni volta che un'opzione telnet viene letta nel flusso in arrivo, questo callback (se impostato) viene chiamato con i seguenti parametri: callback(telnet socket, comando (DO/DONT/WILL/WONT), opzione). Nessun'altra azione viene accettata da telnetlib successivamente.

Vedete Circa questo documento... per informazioni su modifiche e suggerimenti.