diff --git a/main.py b/main.py index 5c32eea..4ffcab4 100644 --- a/main.py +++ b/main.py @@ -1,6 +1,6 @@ import requests, json, os from bs4 import BeautifulSoup -import json +from datetime import date # Config @@ -10,36 +10,55 @@ if API_URL == 'API_URL': print("API_URL is not set") exit() -# Get data +elements = [] req = requests.get("https://www.kinoneo.ru/schedule") if (req.status_code != 200): - print("Отвал кинонео: " + str(req.status_code)) + print("Отвал кинонео: " + str(req.status_code) + " " + req.text) +else: + soup = BeautifulSoup(req.content, "html.parser") + for tag in soup.find_all("div", {"class": "schedule-row"}): + if (tag.text.find("ПУШКИНСКАЯ КАРТА") != -1): + # print(tag.find("span", class_="title-xs")) + genre = " ".join(tag.find_all("span")[1].text.replace(' ', "").replace('\n', '').split()) + title = tag.find("span", class_="title-xs") + url = "https://www.kinoneo.ru" + title.parent.get('href') + imamgeurl = "https://www.kinoneo.ru" + tag.find("img").get('src') + jsonout = { + "city": "Таганрог", + "cinema": "КиноНЕО", + "filmName": title.text, + "genre": genre, + "url": url, + "imageUrl": imamgeurl + } + elements.append(jsonout) -soup = BeautifulSoup(req.content, "html.parser") - -elements = [] -for tag in soup.find_all("div", {"class": "schedule-row"}): - if (tag.text.find("ПУШКИНСКАЯ КАРТА") != -1): - # print(tag.find("span", class_="title-xs")) - genre = " ".join(tag.find_all("span")[1].text.replace(' ', "").replace('\n', '').split()) - title = tag.find("span", class_="title-xs") - url = "https://www.kinoneo.ru" + title.parent.get('href') - imamgeurl = "https://www.kinoneo.ru" + tag.find("img").get('src') - json = { - "city": "Таганрог", - "cinema": "КиноНЕО", - "filmName": title.text, - "genre": genre, - "url": url, - "imageUrl": imamgeurl - } - elements.append(json) +headers = {"X-Platform": "widget", "X-Application-Token": "KMwvMv7qwz4IVNMu48cTot3PBNnYrifO"} +curDate = date.today().strftime("%Y-%m-%d") +req = requests.get("https://kinokassa.kinoplan24.ru/api/v2/release/playbill?city_id=51&date=" + curDate, headers=headers) +if (req.status_code != 200): + print("Отвал Чарли: " + str(req.status_code) + " " + req.text) +else: + releases = json.loads(req.text)["releases"] + for release in releases: + if ("pro_culture" in release["all_qualifiers"]): + genres = "" + for g in release["genres"]: + genres += g["title"] + " " + json = { + "city": "Таганрог", + "cinema": "Чарли", + "filmName": release["title"], + "genre": genres, + "url": "https://kinocharly.ru/51/release/" + str(release["id"]) + "?date=" + curDate, + "imageUrl": release["poster"] + } + elements.append(json) request = requests.post(API_URL, json = elements) - if (request.status_code != 200): print("Не удалось отправить запрос на сервер: " + str(request.status_code) + " " + request.text)