鍍金池/ 問答/Python  網(wǎng)絡(luò)安全/ 在pyhton中有沒有一種庫(kù)或框架 可以動(dòng)態(tài)生成任務(wù),并監(jiān)控其狀態(tài),并根據(jù)其狀態(tài)

在pyhton中有沒有一種庫(kù)或框架 可以動(dòng)態(tài)生成任務(wù),并監(jiān)控其狀態(tài),并根據(jù)其狀態(tài)或?qū)傩?,?shí)時(shí)的去掉任務(wù)或繼續(xù)運(yùn)行

看了celery aps 之類的庫(kù),可是網(wǎng)上中文資料太少,還是一頭霧水
說一下需求:
1 比如體育比賽,一天有一百場(chǎng),生成這一百場(chǎng) 比賽的URL 每個(gè)為一個(gè)任務(wù)扔到任務(wù)隊(duì)列里
2 根據(jù)其狀態(tài)比如結(jié)束時(shí)間,在這個(gè)時(shí)間前 每20分鐘爬取一次數(shù)據(jù)。時(shí)間到了就剔除這個(gè)任務(wù)不再爬取
3 任務(wù)會(huì)返回?cái)?shù)據(jù)存入數(shù)據(jù)庫(kù)
有沒有類似這樣的解決方案 要用到什么樣的技術(shù) 求大佬們解惑

回答
編輯回答
大濕胸

可以用redis。

100場(chǎng)比賽,以比賽編號(hào)為value,時(shí)間為score 放入zset,這樣就會(huì)自動(dòng)按時(shí)間排序。

然后你每次去取 zset的第一個(gè)元素,根據(jù)value去取具體的比賽截止時(shí)間,未超過則觸發(fā)爬蟲,然后時(shí)間+20分鐘,超過則從 zset刪除。

也可以不用redis的zset,使用一個(gè)有序集合代替。

2017年8月24日 22:13