Repository 32bit  Forum
Repository 64bit  Wiki

Aiuto con script python

Postate qui per tutte le discussioni legate a Linux in generale.

Moderatore: Staff

Regole del forum
1) Citare sempre la versione di Slackware usata, la versione del Kernel e magari anche la versione della libreria coinvolta. Questi dati aiutano le persone che possono rispondere.
2) Per evitare confusione prego inserire in questo forum solo topic che riguardano appunto Gnu/Linux in genere, se l'argomento è specifico alla Slackware usate uno dei forum Slackware o Slackware64.
3) Leggere attentamente le risposte ricevute
4) Scrivere i messaggi con il colore di default, evitare altri colori.
5) Scrivere in Italiano o in Inglese, se possibile grammaticalmente corretto, evitate stili di scrittura poco chiari, quindi nessuna abbreviazione tipo telegramma o scrittura stile SMS o CHAT.
6) Appena registrati è consigliato presentarsi nel forum dedicato.

La non osservanza delle regole porta a provvedimenti di vari tipo da parte dello staff, in particolare la non osservanza della regola 5 porta alla cancellazione del post e alla segnalazione dell'utente. In caso di recidività l'utente rischia il ban temporaneo.

Aiuto con script python

Messaggioda Eberoth » mar giu 05, 2012 17:02

Salve,
Premetto che sono praticamente a digiuno di python (avevo cominciato a studiarlo, ma poi altri impegni hanno avuto la meglio), quindi il mio problema potrebbe essere frutto di banale ignoranza.

Detto questo, da tempo uso uno script python per controllare la presenza di messaggi non letti nel mio account gmail ed ha sempre funzionato benissimo. Oggi ho attivato un nuovo account su gmx.com e quindi ho provato a riadattare lo script in modo da gestire i messaggi sul mio nuovo indirizzo. Ma quando lo lancio da shell per provarlo mi restituisce questi errori:

Codice: Seleziona tutto
Traceback (most recent call last):
  File "prova.py", line 37, in <module>
    if __name__ == '__main__' : main()
  File "prova.py", line 35, in main
    check_mail(Server, username, passwd)
  File "prova.py", line 16, in check_mail
    mb.login(username, passwd)
  File "/usr/lib64/python2.6/imaplib.py", line 500, in login
    raise self.error(dat[-1])
imaplib.error: authentication failed


Il codice dello script, epurato dai miei dati personali, è:
(l'username è effettivamente nella forma riportata)

Codice: Seleziona tutto
#!/usr/bin/env python
# -*- coding: utf-8 -*-

import sys
import imaplib
import pynotify

def check_mail(Server, username, passwd):
   
   try:
      mb = imaplib.IMAP4_SSL(Server)
   except:
      print 'An error occurred!'
      sys.exit()
      
   mb.login(username, passwd)
   res = mb.status('INBOX', '(UNSEEN)')

   num_msg = int(res[1][0].split()[-1][0:-1])
   
   if num_msg == 0:
      print 'No new messages'
   else:
      print '%d New messages' % (num_msg)
      n = pynotify.Notification('GMX: %d new message(s)!' % num_msg)
      n.show()
      
   mb.logout()


def main():
   Server = 'imap.gmx.com'
   username = 'user.name@gmx.com'
   passwd = 'passwd'
   check_mail(Server, username, passwd)

if __name__ == '__main__' : main()


So che avere psw e username in chiaro non è il massimo come sicurezza, ma ad oggi è il meglio che riesco a fare (ogni suggerimento è ben accetto).
Avatar utente
Eberoth
Linux 2.4
Linux 2.4
 
Messaggi: 379
Iscritto il: lun ago 24, 2009 8:22
Slackware: -current
Kernel: 3.13.6
Desktop: KDE4
Distribuzione: Slackel64

Re: Aiuto con script python

Messaggioda targzeta » mar giu 05, 2012 19:23

Anche io non sono espertissimo in python, però quel:
Codice: Seleziona tutto
imaplib.error: authentication failed
mi sembra un buon punto di inizio, no?

Emanuele
Linux Registered User #454438
Se pensi di essere troppo piccolo per fare la differenza, prova a dormire con una zanzara -- Dalai Lama
20/04/2013 - Io volevo Rodotà
Avatar utente
targzeta
Iper Master
Iper Master
 
Messaggi: 6189
Iscritto il: gio nov 03, 2005 14:05
Località: Carpignano Sal. (LE) <-> Pisa
Nome Cognome: Emanuele Tomasi
Slackware: current
Kernel: latest stable
Desktop: IceWM

Re: Aiuto con script python

Messaggioda Eberoth » mar giu 05, 2012 20:15

Sì, lo sembrava anche a me prima di passare un'ora su google senza riuscire a risolvere... la maggior parte dei risultati risultati non ha nulla a che vedere col mio caso (e praticamente tutti riguardano gmail), il resto punta ai vari manuali su imaplib.py che, però, consistono in una lunga lista di opzioni, comandi e variabili... abbastanza inutili visto il mio livello di python ed il loro carattere estremamente generale.
Al momento so solo che il problema è nell'autenticazione, ma non ho idea di quale sia il problema né di cosa fare per risolverlo.
Avatar utente
Eberoth
Linux 2.4
Linux 2.4
 
Messaggi: 379
Iscritto il: lun ago 24, 2009 8:22
Slackware: -current
Kernel: 3.13.6
Desktop: KDE4
Distribuzione: Slackel64


Torna a Gnu/Linux in genere

Chi c’è in linea

Visitano il forum: Nessuno e 2 ospiti