开了AutoDL 算力实例,但是空闲CPU太少,又不可能时刻监听
写个爬虫吧,5秒轮询一次请求
import time
import requests
# gpu信息 index 你想监听哪个gpu空闲 -1是全部 num代表你希望坚挺的空闲卡数量
gpudata = {
'indexs': [-1],
'num': 1
}
# 验证当前的实例是否有空闲的
url = 'https://www.autodl.com/api/v1/instance'
# 请求头这些 直接复制浏览器上面的参数就行 我的就不挂上去了
headers = {
'cookie':'',
'user-agent': '',
'referer':'',
'authorization':'',
}
# 获取autodl后台是否有空闲cpu
def get_gpu_idle_num():
data = {"date_from": "", "date_to": "", "page_index": 1, "page_size": 10, "status": [], "charge_type": []}
resp = requests.post(url,data=data,headers=headers)
json_data = resp.json()
datas = json_data['data']['list']
indexs = gpudata["indexs"]
gpunum = gpudata["num"]
if indexs[0] == -1:
# 监听全部
for index in range(0, len(datas)):
num = data['gpu_idle_num']
if num >= gpunum:
# 这里是发送邮件的地方 可以看看别人用python发送邮件的 我用的是QQ邮箱
raise Exception('已发送邮件,默认关闭')
else:
for index in indexs:
if index == -1 or index >= len(datas):
continue
data = datas[index]
num = data['gpu_idle_num']
if num >= gpunum:
# 这里是发送邮件的地方 可以看看别人用python发送邮件的 我用的是QQ邮箱
raise Exception('已发送邮件,默认关闭')
if __name__ == '__main__':
index = 1
while True:
print(f'第{str(index)}次请求')
get_gpu_idle_num()
time.sleep(5)
index += 1