BrownMenu 是一个用于 布朗大学 餐厅产品的 JSON REST API,目前仅涵盖 The Ratty 餐厅,因为这是学生认为最棒的餐厅。该数据由大学提供,并嵌入到网站页面的 iframe 中。这些 iframe 显示的是 Google 电子表格中的菜单视图,也是目前所有数据的来源。
BrownMenu 的核心实现
-
数据抓取:通过
scrape.py
实现了抓取逻辑,自动提取每周、每餐的菜单数据。 -
缓存机制:
server.py
是基于 Flask 框架的服务器,在第一次请求时抓取一周的数据并缓存至内存,一天之内后续请求直接从缓存中读取,优化响应时间。
未来改进方向
- 更好的持久性:目前的内存缓存不具备历史数据分析能力,因此将考虑更持久的存储方式,便于进行长期的菜单数据分析。
暂无评论