Seite 1 von 1

Verfasst: Freitag 26. September 2008, 20:52
von snafu
Achso, ich verstehe...

Hast du schon geprüft ob nach dem Login immer noch nr=3 für das gewünschte Formular steht? Vielleicht hat sich ja alles um eine Stelle verschoben, weil kein Login-Formular mehr da ist. Nur ne Vermutung. Ich kenne die Seite ja nicht nach dem Login...

Also nochmal zur Verdeutlichung:

Code: Alles auswählen

import mechanize

br = mechanize.Browser()
br.open("http://www.stooq.pl/bazy/waluty.html")

br.select_form(nr=2)
br['login'] = 'dein username'
br['haslo'] = 'dein passwort'
br.submit()

br.select_form(nr=3) # hier vielleicht auf 2 ändern?
# Felder ausfüllen, wenn nötig
result = br.submit().read()

try:
    f = open('waluty.prn', 'w')
    f.write(result)
finally:
    f.close()

Verfasst: Freitag 26. September 2008, 20:59
von kickdoll
Das Formularfeld ist nr =3, habe ich eben nochmal geprüft.
Ich denke, dass die Feler nicht ausgefüllt werden müssen weil die Einstellung bereits in meinem Account gespeichert ist.
Check mal dein Postfach.

Verfasst: Samstag 27. September 2008, 14:47
von Leonidas
snafu, warum nutzt du denn für wohlgeformtes XML einen HTML-Soup-Parser? Eben deswegen habe ich ja das XML verlinkt, weil es für die Weiterverarbeitung gedacht ist.

Verfasst: Samstag 27. September 2008, 15:20
von snafu
Ich musste bisher noch nie einen XML Parser nutzen und daher ist mir auf die Schnelle nichts besseres eingefallen.

Verfasst: Samstag 27. September 2008, 15:26
von Leonidas
snafu hat geschrieben:Ich musste bisher noch nie einen XML Parser nutzen und daher ist mir auf die Schnelle nichts besseres eingefallen.

Code: Alles auswählen

lxml.etree.fromstring()
Und raus kommt ein passender ElementTree.