diff --git a/login.py b/login.py index 435cb11..821d231 100755 --- a/login.py +++ b/login.py @@ -6,7 +6,7 @@ # By: tomoron +#+ +:+ +#+ # # +#+#+#+#+#+ +#+ # # Created: 2024/11/25 16:22:08 by tomoron #+# #+# # -# Updated: 2025/03/26 13:10:42 by tomoron ### ########.fr # +# Updated: 2025/08/11 18:00:29 by tomoron ### ########.fr # # # # **************************************************************************** # diff --git a/scrap.py b/scrap.py index 2f4419b..1354566 100644 --- a/scrap.py +++ b/scrap.py @@ -6,7 +6,7 @@ # By: tomoron +#+ +:+ +#+ # # +#+#+#+#+#+ +#+ # # Created: 2024/11/25 16:39:19 by tomoron #+# #+# # -# Updated: 2025/03/28 13:13:48 by tomoron ### ########.fr # +# Updated: 2025/08/28 23:15:18 by tomoron ### ########.fr # # # # **************************************************************************** # @@ -37,24 +37,36 @@ pushover_req_data = { print(pushover_req_data) if(len(sys.argv) != 2): - print("missing team id, usage :", sys.argv[0], "") + print("missing team id, usage :", sys.argv[0], "") exit(1); -project_id = sys.argv[1] +project_id = sys.argv[1].split('/')[-2] +team_id = sys.argv[1].split('?')[-1].split('=')[-1] +print("team id :", team_id, "\nproject_id :", project_id) start_search_date = date.today().strftime("%Y-%m-%d") -end_search_date = (date.today() + timedelta(days=1)).strftime("%Y-%m-%d") +end_search_date = (date.today() + timedelta(days=3)).strftime("%Y-%m-%d") getUrl = f"https://projects.intra.42.fr/projects/{project_id}/slots.json?start={start_search_date}&end={end_search_date}" +if (len(team_id)): + getUrl = f"&team_id={team_id}" +print(getUrl) connIntra = Intra42() found = set(); while(True): - res = connIntra.get_available_slot(getUrl) - for x in res: - if x["ids"] not in found: - start = dateutil.parser.isoparse(x["start"]).strftime("%d/%m at %H:%M") - end = dateutil.parser.isoparse(x["end"]).strftime("%d/%m at %H:%M") - text = "slot found starting " + start + " ,ending " + end; - pushover_req_data["message"] = text - response = requests.post("https://api.pushover.net/1/messages.json", data=pushover_req_data) - print("request sent", response.status_code, response.text) - print("\a" + text); - found.add(x["ids"]) - time.sleep(1); + try: + res = connIntra.get_available_slot(getUrl) + if(type(res) == type({})): + print("probably invalid url") + time.sleep(5) + continue + for x in res: + if x["ids"] not in found: + start = dateutil.parser.isoparse(x["start"]).strftime("%d/%m at %H:%M") + end = dateutil.parser.isoparse(x["end"]).strftime("%d/%m at %H:%M") + text = "slot found starting " + start + " ,ending " + end; + pushover_req_data["message"] = text + response = requests.post("https://api.pushover.net/1/messages.json", data=pushover_req_data) + print("request sent", response.status_code, response.text) + print("\a" + text); + found.add(x["ids"]) + time.sleep(5); + except: + pass