6

http://robobrowser.readthedocs.org/en/latest/api.html

browser.open(myurl)に似た RB メソッドを使用して探している API をヒットしようとしていますrequests.post(url,data=data)

robobrowser は requests と beautifulsoup の上に構築されているので、そうする方法があるに違いないと思います。

4

2 に答える 2

5

requests.Session()オブジェクトのオブジェクトを再利用して、同じ Cookie でRoboBrowser独自の を実行できます。POST

response = browser.session.post(...)

ただし、RoboBrowser状態は更新されません。responseオブジェクトをRoboBrowser._update_state()メソッドに渡す必要があります。

browser._update_state(response)

ただし、AJAX リクエストの場合は、これを行う必要はありません。

ライブラリの将来のバージョンでは、その仕組みが変わる可能性があることを考慮してください。文書化された方法ではありません。

ただし、フォームの送信を処理しているため、通常はサイトに投稿します。RoboBrowser.get_form()提供されたライブラリ機能 ( 、その後)に任せRoboBrowser.submit_form()ます。

于 2014-05-19T12:31:02.157 に答える
3

バージョン 0.5.3 以降、次のような POST リクエストを送信できます。

browser.open(url, method='post', data=data)

そしてもちろん、ブラウザの状態とセッションは自動的に更新されます。

于 2015-06-08T02:56:15.533 に答える