|
@@ -2,8 +2,8 @@ import pnalib
|
2
|
2
|
import datetime
|
3
|
3
|
|
4
|
4
|
restaurant_info = [
|
5
|
|
- [ "(TaY) Amica Minerva", "http://www.amica.fi/minerva", "", "middle", "https://www.amica.fi/modules/json/json/Index?costNumber=0815&language=fi" ],
|
6
|
|
- [ "(TaY) Tampereen normaalikoulun ravintola", "http://www.amica.fi/tampereennormaalikoulu", "", "middle", "https://www.amica.fi/modules/json/json/Index?costNumber=0811&language=fi" ],
|
|
5
|
+ [ "(TaY) Amica Minerva", "https://www.fazerfoodco.fi/ravintolat/Ravintolat-kaupungeittain/tampere/minerva/", "", "middle", "https://www.fazerfoodco.fi/modules/json/json/Index?costNumber=0815&language=fi" ],
|
|
6
|
+ #[ "(TaY) Tampereen normaalikoulun ravintola", "http://www.amica.fi/tampereennormaalikoulu", "", "middle", "https://www.amica.fi/modules/json/json/Index?costNumber=0811&language=fi" ],
|
7
|
7
|
[ "(TTY) Ravintola Reaktori", "https://www.fazerfoodco.fi/ravintolat/Ravintolat-kaupungeittain/tampere/reaktori/", "", "middle", "https://www.fazerfoodco.fi/modules/json/json/Index?costNumber=0812&language=fi" ]
|
8
|
8
|
]
|
9
|
9
|
|
|
@@ -20,38 +20,46 @@ def get_restaurants(use_old, week):
|
20
|
20
|
for count, info in enumerate(restaurant_info):
|
21
|
21
|
title = info[0]
|
22
|
22
|
url = info[4]
|
23
|
|
- temp_fname = "amica_{count}.temp.js".format(count = count)
|
24
|
|
- data = pnalib.get_json_file(url, temp_fname, use_old)
|
25
|
|
- if not data:
|
26
|
|
- continue
|
27
|
|
-
|
28
|
|
- week_foods = {}
|
29
|
|
- lunch_menus = data["MenusForDays"]
|
30
|
|
- if not lunch_menus:
|
31
|
|
- continue
|
32
|
|
- for lunch_menu in lunch_menus:
|
33
|
|
- date = lunch_menu["Date"].split("T")[0]
|
34
|
|
- try:
|
35
|
|
- week_day = date_strings.index(date)
|
36
|
|
- except:
|
37
|
|
- continue
|
38
|
|
- current_day_foods = []
|
39
|
|
- set_menus = lunch_menu["SetMenus"]
|
40
|
|
- html = lunch_menu.get("Html", "")
|
41
|
|
- if len(html):
|
42
|
|
- current_day_foods.append(handle_html(html))
|
43
|
|
- else:
|
44
|
|
- for set_menu in set_menus:
|
45
|
|
- meals = set_menu["Components"]
|
46
|
|
- food = []
|
47
|
|
- for meal in meals:
|
48
|
|
- food.append(format_meal_allergies(meal))
|
49
|
|
- current_day_foods.append("\n".join(food))
|
50
|
|
- week_foods[week_day] = current_day_foods
|
51
|
|
-
|
|
23
|
+ week_foods = handle_one(use_old, date_strings, count, url)
|
52
|
24
|
restaurants.append([title, "", week, week_foods, info])
|
53
|
25
|
return restaurants
|
54
|
26
|
|
|
27
|
+def handle_one(use_old, date_strings, count, url):
|
|
28
|
+ temp_fname = "amica_{count}.temp.json".format(count = count)
|
|
29
|
+
|
|
30
|
+ week_foods = {}
|
|
31
|
+ data = pnalib.get_json_file(url, temp_fname, use_old)
|
|
32
|
+ if not data:
|
|
33
|
+ print("Fazer no data")
|
|
34
|
+ return week_foods
|
|
35
|
+
|
|
36
|
+ lunch_menus = data["MenusForDays"]
|
|
37
|
+ if not lunch_menus:
|
|
38
|
+ print("Fazer no MenusForDays")
|
|
39
|
+ return week_foods
|
|
40
|
+
|
|
41
|
+ for lunch_menu in lunch_menus:
|
|
42
|
+ date = lunch_menu["Date"].split("T")[0]
|
|
43
|
+ try:
|
|
44
|
+ week_day = date_strings.index(date)
|
|
45
|
+ except:
|
|
46
|
+ print("Fazer no date dates=({}), key=({})".format(date_strings, date))
|
|
47
|
+ continue
|
|
48
|
+ current_day_foods = []
|
|
49
|
+ set_menus = lunch_menu["SetMenus"]
|
|
50
|
+ html = lunch_menu.get("Html", "")
|
|
51
|
+ if len(html):
|
|
52
|
+ current_day_foods.append(handle_html(html))
|
|
53
|
+ else:
|
|
54
|
+ for set_menu in set_menus:
|
|
55
|
+ meals = set_menu["Components"]
|
|
56
|
+ food = []
|
|
57
|
+ for meal in meals:
|
|
58
|
+ food.append(format_meal_allergies(meal))
|
|
59
|
+ current_day_foods.append("\n".join(food))
|
|
60
|
+ week_foods[week_day] = current_day_foods
|
|
61
|
+ return week_foods
|
|
62
|
+
|
55
|
63
|
# Onko enää tarpeellinen?
|
56
|
64
|
def handle_html(html):
|
57
|
65
|
menus = html.split("<p>")
|