11.11 nntplib -- Client per il protocollo NNTP

Il modulo definisce la classe NNTP che implementa la parte client del protocollo NNTP. Può essere usata per implementare un lettore o un generatore, o un processore automatico di news. Per ulteriori informazioni su NNTP (Network News Transfer Protocol), vedere la Internet RFC 977.

Qui ci sono due piccoli esempi di come può essere usato. Mostra alcune statistiche circa un newsgroup e stampa il soggetto degli ultimi 10 articoli.

>>> s = NNTP('news.cwi.nl')
>>> resp, count, first, last, name = s.group('comp.lang.python')
>>> print 'Group', name, 'has', count, 'articles, range', first, 'to', last
Group comp.lang.python has 59 articles, range 3742 to 3803
>>> resp, subs = s.xhdr('subject', first + '-' + last)
>>> for id, sub in subs[-10:]: print id, sub
... 
3792 Re: Removing elements from a list while iterating...
3793 Re: Who likes Info files?
3794 Emacs and doc strings
3795 a few questions about the Mac implementation
3796 Re: executable python scripts
3797 Re: executable python scripts
3798 Re: a few questions about the Mac implementation 
3799 Re: PROPOSAL: A Generic Python Object Interface for Python C Modules
3802 Re: executable python scripts 
3803 Re: \POSIX{} wait and SIGCHLD
>>> s.quit()
'205 news.cwi.nl closing connection.  Goodbye.'

Per postare un articolo da un file (questo assume che l'articolo possieda intestazioni valide):

>>> s = NNTP('news.cwi.nl')
>>> f = open('/tmp/article')
>>> s.post(f)
'240 Article posted successfully.'
>>> s.quit()
'205 news.cwi.nl closing connection.  Goodbye.'

Il modulo definisce i seguenti elementi:

class NNTP( host[, port [, user[, password [, readermode]]]])
Restituisce una nuova istanza della classe NNTP, rappresentando una connessione al server NNTP eseguito sull'host host, in ascolto sulla porta port. Il valore predefinito di port è 119. Se vengono forniti i facoltativi user e password, o se sono presenti valide credenziali in  /.netrc, i comandi "AUTHINFO USER" ed "AUTHINFO PASS" vengono usati per identificare ed autenticare l'utente al server. Se l'opzione facoltativa readermode è vera, viene inviato un comando "mode reader" prima che sia effettuata l'autenticazione. Reader mode è necessario occasionalmente se vi state connettendo ad un server NNTP sulla macchina locale ed intendete chiamare comandi specifici del lettore, come "group". Se ottenete un inaspettato NNTPPermanentError, è possibile che dobbiate impostare readermode. Il valore predefinito di readermode è None.

class NNTPError( )
Derivata dall'eccezione standard Exception, questa è la classe di base per tutte le eccezioni sollevate dal modulo nntplib.

class NNTPReplyError( )
Eccezione sollevata quando viene ricevuta una risposta inaspettata dal server. Per compatibilità con il passato, l'eccezione error_reply è equivalente a questa classe.

class NNTPTemporaryError( )
Eccezione sollevata quando viene ricevuto un codice di errore compreso nell'intervallo 400-499. Per compatibilità con il passato, l'eccezione error_temp è equivalente a questa classe.

class NNTPPermanentError( )
Eccezione sollevata quando viene ricevuto un codice di errore compreso nell'intervallo 500-599. Per compatibilità all'indietro, l'eccezione error_perm è equivalente a questa classe.

class NNTPProtocolError( )
Eccezione sollevata quando viene ricevuta una risposta dal server che non inizia con un numero compreso nell'intervallo 1-5. Per compatibilità con il passato, l'eccezione error_proto è equivalente a questa classe.

class NNTPDataError( )
Eccezione sollevata quando c'è qualche errore nei dati di risposta. Per compatibilità con il passato, l'eccezione error_data è equivalente a questa classe.



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