blob: 6ca5c69a264de36d99ed9d1962cab19a2c44c251 (
plain) (
blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
|
from datetime import datetime, timedelta, UTC
from pymongo.collection import Collection
from components.subscriptions.main import Subscription
from components.subscriptions.typing import SubsDict
def collect_data(subs_collection: Collection[SubsDict]) -> None:
for sub_dict in subs_collection.find():
sub = Subscription(**sub_dict)
sub._collection = subs_collection
if datetime.now(tz=UTC) - sub.last_fetch > timedelta(seconds=sub.time_between_fetches):
sub.fetch()
|