2010-08-05 4 views
0
from mechanize import * 
import cookielib 
from BeautifulSoup import BeautifulSoup 

br = Browser() 
br.open('http://casesearch.courts.state.md.us/inquiry/inquiry-index.jsp') 
br.select_form(name="main") 
br.find_control(name="disclaimer").selected = True 
reponse = br.submit() 
print reponse.read() 

Ci-dessus est mon code. Maintenant, je m'attends à ce qu'il affiche le code HTML de ce http://casesearch.courts.state.md.us/inquiry/processDisclaimer.jis mais il ne le fait pas au lieu de renvoyer le code HTML de la même page. Je ne comprends pas pourquoi?Les formulaires ne sont pas soumis avec MECHANIZE dans PYTHON!

+0

Essayez d'utiliser 'mechanize' dans le shell Python . Cela vous permettra d'expérimenter ce qui fonctionne. –

Répondre

1

Ajouter .items[0]:

br.find_control(name="disclaimer").items[0].selected 

Un extrait de code plus complet ressemble à ceci:

import mechanize 

br = mechanize.Browser() 
br.open('http://casesearch.courts.state.md.us/inquiry/inquiry-index.jsp') 
br.select_form(name="main") 
br.find_control(name="disclaimer").items[0].selected = True 
reponse = br.submit() 
print reponse.read() 
+0

Merci! :) Cela a fonctionné. – Shubham

0

Vous sautez quelques bits. Je suis surpris que ça n'explose pas.

reponse = br.submit() 
print reponse.read() 

devrait être:

br.submit() # returns nothing 
print br.response().read() 
+0

Smae résultat! C'est le retour du HTML mais de la même page pas de la page qui est retournée lorsque la page est soumise dans le navigateur. – Shubham

Questions connexes