get_standard_data.py 811 B

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