[解決済み] Pythonリクエストによる非同期リクエスト
2022-03-06 21:08:30
質問
のドキュメントに記載されているサンプルを試してみました。 リクエストライブラリ python用です。
とともに
async.map(rs)
レスポンスコードは取得できますが、リクエストされた各ページの内容を取得したいのです。例えばこれではうまくいきません。
out = async.map(rs)
print out[0].content
解決方法は?
注意事項
以下の回答は
ではない
は、v0.13.0+のリクエストに適用されます。非同期機能は
grequests
この質問が書かれた後に しかし、あなたは単に
requests
で
grequests
のようにすれば、うまくいくはずです。
元の質問が、requests < v0.13.0の使用についてだったのを反映して、この回答をそのままにしています。
で複数のタスクを行うには
async.map
非同期
しなければならない。
- 各オブジェクトで何をしたいのか、関数を定義する(あなたのタスク)。
- その関数をイベントフックとしてリクエストに追加します。
-
呼び出す
async.map
すべてのリクエスト/アクションのリストで
例
from requests import async
# If using requests > v0.13.0, use
# from grequests import async
urls = [
'http://python-requests.org',
'http://httpbin.org',
'http://python-guide.org',
'http://kennethreitz.com'
]
# A simple task to do to each response object
def do_something(response):
print response.url
# A list to hold our things to do via async
async_list = []
for u in urls:
# The "hooks = {..." part is where you define what you want to do
#
# Note the lack of parentheses following do_something, this is
# because the response will be used as the first argument automatically
action_item = async.get(u, hooks = {'response' : do_something})
# Add the task to our list of things to do via async
async_list.append(action_item)
# Do our list of things to do via async
async.map(async_list)
関連
-
Pythonコンテナのための組み込み汎用関数操作
-
[解決済み】TypeError: unhashable type: 'numpy.ndarray'.
-
[解決済み】Python regex AttributeError: 'NoneType' オブジェクトに 'group' 属性がない。
-
[解決済み] PandasでDataFrameの行を反復処理する方法
-
[解決済み] バイトを文字列に変換する
-
[解決済み] モジュールの関数名(文字列)を使って、モジュールの関数を呼び出す。
-
[解決済み] java.net.URLConnectionを使用してHTTPリクエストを発生させ処理する方法
-
[解決済み] Pythonで大きなファイルをリクエストでダウンロードする
-
[解決済み】ネストされたディレクトリを安全に作成するには?
-
[解決済み】Pythonに三項条件演算子はありますか?
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
python string splicing.join()とsplitting.split()の説明
-
Pythonによるjieba分割ライブラリ
-
Python百行で韓服サークルの画像クロールを実現する
-
[解決済み】TypeError: unhashable type: 'numpy.ndarray'.
-
[解決済み】pygame.error: ビデオシステムが初期化されていない
-
[解決済み】ImportError: PILという名前のモジュールがない
-
[解決済み】socket.error: [Errno 48] アドレスはすでに使用中です。
-
[解決済み】Flask ImportError: Flask という名前のモジュールがない
-
[解決済み】Python: OverflowError: 数学の範囲エラー
-
[解決済み] asyncioでrequestsを使うにはどうしたらいいですか?