我尝试了python 请求库文档中提供的示例。
使用async.map(rs)
,我得到了响应代码,但是我想获得所请求的每个页面的内容。例如,这不起作用:
out = async.map(rs)
print out[0].content
注意
下面的答案是不适用于请求v0.13.0 +。编写此问题后,异步功能已移至grequests
。但是,你可以将其替换requests
为grequests
下面的内容,它应该可以工作。
我已经留下了这个答案,以反映原始问题,即有关使用请求<v0.13.0
的问题。
要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)
问题内容: 当我使用of方法时,和之间有什么区别? 问题答案: Mozilla开发人员:同步和异步请求 支持同步和异步通信。但是,一般而言,出于性能方面的考虑,异步请求应比同步请求优先。 简而言之,同步请求会阻止代码执行,并可能泄漏内存和事件。这可能会导致严重的问题。使用同步请求的唯一可行理由是更轻松地促进其中的下载。
本文向大家介绍全面解析iOS中同步请求、异步请求、GET请求、POST请求,包括了全面解析iOS中同步请求、异步请求、GET请求、POST请求的使用技巧和注意事项,需要的朋友参考一下 先给大家分别介绍下iOS中同步请求、异步请求、GET请求、POST所代表的意思,然后在逐一通过实例给大家介绍。 1、同步请求可以从因特网请求数据,一旦发送同步请求,程序将停止用户交互,直至服务器返回数据完成,才可以进
Spring MVC 3.2开始引入了基于Servlet 3的异步请求处理。相比以前,控制器方法已经不一定需要返回一个值,而是可以返回一个java.util.concurrent.Callable的对象,并通过Spring MVC所管理的线程来产生返回值。与此同时,Servlet容器的主线程则可以退出并释放其资源了,同时也允许容器去处理其他的请求。通过一个TaskExecutor,Spring M
本文向大家介绍详解XMLHttpRequest(一)同步请求和异步请求,包括了详解XMLHttpRequest(一)同步请求和异步请求的使用技巧和注意事项,需要的朋友参考一下 XMLHttpRequest 让发送一个HTTP请求变得非常容易。你只需要简单的创建一个请求对象实例,打开一个URL,然后发送这个请求。当传输完毕后,结果的HTTP状态以及返回的响应内容也可以从请求对象中获取。 通过XML
问题内容: 我有一个ajax问题: 如果循环6次(在我的foreach循环中),我应该对服务器发出6个异步请求。但是在这种情况下,ajax调用是同步调用的,而不是异步调用的。有人知道为什么会这样吗? 问题答案: 好,谢谢。经过几个小时的分析和反思,我意识到了为什么该脚本会同步运行:我打开script.php文件,并注意到了这一点以及该文件的开头: 因此,我对使用会话的php脚本进行了并行ajax调
问题内容: 所以我有以下代码循环遍历一个对象: 对于每个迭代,我要发出一个请求(发送一条Facebook消息),仅在该请求完成后,我才要进行下一个迭代,这是因为没有任何回调,消息将不会正确地连续发送。 我以前曾遇到过这个问题,但无法解决,我该怎么做? 如果您有任何问题,请询问。谢谢。 问题答案: 我最终遵循了@Matt Diamond的建议,并执行了如下所示的递归函数: 谢谢大家的帮助,不胜感激。