get_standard_data.py 862 B

1234567891011121314151617181920212223242526272829
  1. # -*- coding:utf-8 -*-
  2. """获取学段标准数据"""
  3. from cachetools import TTLCache, cached
  4. import requests
  5. from tools.loglog import logger, log_err_e
  6. cache = TTLCache(maxsize=100, ttl=86400)
  7. def get_standard_data(student_stage: int):
  8. if student_stage in cache:
  9. return cache[student_stage]
  10. url = "https://dcjxb.yunzhixue.cn/api-dev/standard/study"
  11. params = {"stage": student_stage}
  12. response = requests.get(url, params=params)
  13. if response.status_code == 200:
  14. data_obj = response.json()['data']
  15. return_data = data_obj['totalVocabulary'], data_obj['readingAccuracy'], data_obj['readingLevel'], data_obj['readingSpeed']
  16. cache[student_stage] = return_data
  17. return return_data
  18. if __name__ == '__main__':
  19. print(get_standard_data(3))
  20. print(cache)
  21. print(1 in cache, 2 in cache, 3 in cache)