PYTHON : 如何让我的 request.get() 持续几秒钟?
PYTHON : How to make my request.get() last for a few second?
为了测试我的 API,我需要向我的查看器 url 发送一个请求,其中有一个跟踪服务可以告诉我 API 我花了多少时间在页面上(经典)。
我的测试中有这个小功能:
def does_it_track(response, **kwargs):
# some unrelated actions
r = requests.get('my_viewer_url')
这个请求工作正常,但它只持续不到一秒钟,它不允许我测试我的统计生成器,也不允许我的跟踪器精度。
我试过了:
这个 SO 问题:how to make python request.get wait a few seconds? 它没有帮助
睡眠方法(但是我得到了has no attribute 'sleep'
要重复发送请求,但它显然会创建多个统计信息,我只需要更长的一个
有人知道 "not-to-complicated-way" 让我的请求在我的页面上等待吗?
我是 python 2.7
谢谢!
试试 VCR,它可能会帮助您解决问题。
事实上,您可以保存您的请求并查看发生了什么。
"how many time you've spent on the page" 与 HTTP request/response 循环无关,但与您的浏览器有关。
从服务器的角度来看,服务器收到一个请求,returns一个响应,然后作业就结束了,期间 - 从客户端的角度来看,一旦服务器返回响应,HTTP 事务就是结束了。这里甚至没有 "page" 的概念,只有 HTTP 请求和响应。
您的 "tracker"(显然)使用 javascript 从浏览器本身发送数据(很可能是每 X 秒发送一次请求,表明该页面仍在浏览器中显示)。 IOW,测试这个的唯一方法是使用将执行 javascript.
的无头浏览器
为了测试我的 API,我需要向我的查看器 url 发送一个请求,其中有一个跟踪服务可以告诉我 API 我花了多少时间在页面上(经典)。
我的测试中有这个小功能:
def does_it_track(response, **kwargs):
# some unrelated actions
r = requests.get('my_viewer_url')
这个请求工作正常,但它只持续不到一秒钟,它不允许我测试我的统计生成器,也不允许我的跟踪器精度。
我试过了:
这个 SO 问题:how to make python request.get wait a few seconds? 它没有帮助
睡眠方法(但是我得到了
has no attribute 'sleep'
要重复发送请求,但它显然会创建多个统计信息,我只需要更长的一个
有人知道 "not-to-complicated-way" 让我的请求在我的页面上等待吗?
我是 python 2.7
谢谢!
试试 VCR,它可能会帮助您解决问题。 事实上,您可以保存您的请求并查看发生了什么。
"how many time you've spent on the page" 与 HTTP request/response 循环无关,但与您的浏览器有关。
从服务器的角度来看,服务器收到一个请求,returns一个响应,然后作业就结束了,期间 - 从客户端的角度来看,一旦服务器返回响应,HTTP 事务就是结束了。这里甚至没有 "page" 的概念,只有 HTTP 请求和响应。
您的 "tracker"(显然)使用 javascript 从浏览器本身发送数据(很可能是每 X 秒发送一次请求,表明该页面仍在浏览器中显示)。 IOW,测试这个的唯一方法是使用将执行 javascript.
的无头浏览器