在两次之间随机发送请求

时间:2017-09-28 12:15:48

标签: python python-2.7 random-time-generation

如果我想在两次之间的随机时间执行命令,我该怎么做?

例如,在10秒到60分钟之间的随机时间发送以下请求?

import requests

r = requests.get('https://api.github.com/events')

3 个答案:

答案 0 :(得分:2)

最简单的实现方法是让你的程序在10到3600秒之间随机休眠。

您可以使用time.sleep()方法暂停程序,使用random.randint(x, y)方法生成xy之间的随机数

import time, random, requests

time.sleep(random.randint(10, 3600))
r = requests.get('https://api.github.com/events')

答案 1 :(得分:1)

您可以使用random模块

import random
import time

secondstowait = random.randint(10, 60)
minutestowait = random.randint(0, 59) * 60 # converts minutes to seconds

time.sleep(secondstowait + minutestowait)

来自sleep()模块的time功能显然会使您的程序停止请求的秒数

答案 2 :(得分:0)

虽然有很多方法可以做到这一点,但您可以尝试使用全功能库来避免重新发明轮子,这可以满足更复杂的要求。由于您的示例代码段是python,请查看Simpy

这是一个优秀的全功能库,就像你的例子,更复杂的全功能模拟。