2009-10-06 9 views
6

Ciao, sono seduto in un Greyhound Bus con Wifi e voglio collegare un secondo dispositivo alla rete. Ma devo accettare un contratto su schermo e il dispositivo non ha un browser. Per accettare il contratto è necessario accettare il seguente modulo. Il dispositivo non ha CURL ma tutto lo standard python 2.6. librerie.Come eseguire una richiesta di post in Python?

<form method="POST" name="wifi" id="wifi" action="http://192.168.100.1:5280/"> 
    <input type="image" name="mode_login" value="Agree" src="btn_accept.gif" /> 
    <input type="hidden" name="redirect" value="http://stackoverflow.com/">  
</form> 

Come scrivere un rapido script python per accettare il contratto?

risposta

2

Penso che questo dovrebbe fare il trucco:

import urllib 
data = urllib.urlencode({"mode_login":"Agree","redirect":"http://stackoverflow.com"}) 
result = urllib.urlopen("http://192.168.100.1:5280/",data).read() 
print result 
+0

Sembra che ci sia un piccolo problema con la sintassi e non posso provarlo subito, ma penso che possa funzionare. Fornendo l'argomento dati dovrebbe iniziare una richiesta POST. – Janusz

+0

Ah, c'era un "mancante – Kimvais