Mit Mechanize (und Python) kann ich auf eine Website gehen, einloggen, ein Formular finden, einige Antworten ausfüllen und dieses Formular einreichen. Ich weiß jedoch nicht, wie ich die "Antwort" -Seite öffnen kann - das heißt, die Seite, die automatisch geladen wird, sobald Sie das Formular abgeschickt haben.Wie erhalte ich die URL der Antwort-Seite, nachdem ich ein Formular in mechanize eingereicht habe?
Hier ist der Python-Code:
br.select_form(name="simTrade")
br.form["symbolTextbox"] = "KO"
br.form["quantityTextbox"] = "10"
br.form["previewOrderButton"]
preview = br.submit()
print preview.read
Mit dem obigen Code, kann ich sehen, was die Antwortseite hält. Aber ich möchte diese Seite öffnen und mit ihr interagieren. Wie kann ich das mit Mechanisieren machen? Vielen Dank.
EDIT: So beantwortete ich meine eigene Frage bald nach dem Posten dieses. Hier ist der Code:
br.select_form(name="simTrade")
br.form["symbolTextbox"] = symbol
br.form["transactionTypeDropDown"] = [order_type]
br.form["quantityTextbox"] = amount
br.form["previewOrderButton"]
no_url = br.submit()
final = no_url.geturl()
x = br.open(final)
print x.read()
Um den HTML-Quellcode der Antwortseite zu erhalten (die Seite, die geladen wird, wenn Sie ein Formular einreichen), hatte ich einfach die URL br.submit zu erhalten(). Und dafür gibt es eine eingebaute Mechanisierungsfunktion, geturl().
Ich verstehe nicht, ist die Seite standardmäßig nicht geöffnet? – Dunno
Die Seite bleibt offen, aber ich möchte die URL dieser Seite abrufen und über Mechanize auf ihren HTML-Code zugreifen. Dadurch kann ich mit der Seite weiter interagieren. – user1822552
Fügen Sie Ihre Antwort in die Antwortbox unten auf der Seite ein. und akzeptiere es – esnadr