Ich versuche, ein HTML-Formular mit Robobrowser mit Python 3.4 zu kratzen. Ich benutze den Standard-HTML-Parser:Kratzen Sie ein Formular auf der falschen Webseite
self._browser = RoboBrowser(history=True, parser="html.parser")
Es korrekte Web-Seiten funktioniert gut, aber jetzt habe ich falsch geschrieben Seite zu analysieren. Hier ist das HTML-Fragment:
<form method="post" action="decide.php?act=submit_advance">
<table class="td_advanced">
<tr class="td_advance">
<td colspan="4" class="td_advance"></strong><br></td>
<td colspan="3" class="td_left">Case sensitive:<br><br></td>
<td><input type="checkbox" name="case_sensitive" /><br><br></td>
[...]
</form>
Das Schließen strong
Tag ist falsch. Dieser Fehler verhindert, dass der Parser aus lesen alle Eingänge im Anschluss an diese falsche tag:
form = self._browser.get_form()
print(form)
>>> <RoboForm>
Irgendwelche Vorschläge?
Wenn es einen Fehler in robobrowser ist, können Sie ein Problem auf Github einreichen. https://github.com/jmcarp/robobrowser –
Ich denke beautifulsoup soll Tag Suppe verarbeiten, so dass wäre eine Option zu prüfen. –