OK, ho finalmente qualche minuto per la revisione.
Cose che non mi tornano e che vorrei che mi spiegassi:
Codice:
postFields["chr"] = str(carat)
E' necessario? Tipicamente non lo è. Funziona rimuovendo il parametro?
Stesso discorso per:
Codice:
postFields["spot"] = ''
postFields["invia_con"] = 's1'
e
Codice:
postFields["BotBootInput_sms"] = somma
In particolare per quest'ultimo: se è necessario, cosa vuol dire e perchè hai settato quel valore?
Codice:
mess2 = mess.replace(' ', '%20')
Altra cosa: quando si usano le espressioni regolari è buona norma inserire un blocco del tipo:
Codice:
try:
savedPage = saver.getvalue()
value = re.search('REGEXP', savedPage).group(1)
except AttributeError:
raise SenderError(self.__class__.__name__)
cosicchè se MoioSMS non riesce a trovare la stringa (sintomo che la pagina è cambiata) ritorna un errore sensato all'utente e non si pianta.
Infine quel che tenti di fare qui:
Codice:
mess2 = mess.replace(' ', '%20')
è ricodificare la stringa nel formato x-www-form-urlencoded. C'è una funzione apposta nella libreria urllib:
Codice:
regina:Desktop silvio$ python
Python 2.4.4 (#1, Oct 18 2006, 10:34:39)
[GCC 4.0.1 (Apple Computer, Inc. build 5341)] on darwin
Type "help", "copyright", "credits" or "license" for more information.
>>> import urllib
>>> urllib.quote("ciao Lazza")
'ciao%20Lazza'
usa quella.
Aspetto tue notizie!