Sie können wiederverwenden das requests.Session()
Objekt eines RoboBrowser
Objekt Ihrer eigenen POST
s mit den gleichen Cookies zu tun:
response = browser.session.post(...)
Der RoboBrowser
Zustand wird jedoch nicht aktualisiert werden; Sie müssten das Objekt response
an die Methode RoboBrowser._update_state()
übergeben.
browser._update_state(response)
Für AJAX-Anforderungen müssten Sie dies jedoch nicht tun.
Beachten Sie, dass zukünftige Versionen der Bibliothek ändern können, wie das funktioniert; Es ist keine dokumentierte Methode.
Jedoch normalerweise Sie würden auf einer Website veröffentlichen, weil Sie eine Formularübermittlung bearbeiten; Überlassen Sie dies der bereitgestellten Bibliotheksfunktionalität (RoboBrowser.get_form()
, dann RoboBrowser.submit_form()
).
Sie würden normalerweise die Form Funktionalität schreiben verwenden; Warum musst du überhaupt posten? –
Sie meinen, die Seite verwendet AJAX-Anfragen von JavaScript? Verwenden Sie in diesem Fall 'response.session'. –