diff --git a/.gitignore b/.gitignore index 71b88ed..5bd6cf0 100644 --- a/.gitignore +++ b/.gitignore @@ -3,5 +3,4 @@ __pycache__ .working rkpop_data.json -/turbo-octo-potato -mcmod_metadata.json \ No newline at end of file +/turbo-octo-potato \ No newline at end of file diff --git a/rpop_webhook.py b/rpop_webhook.py deleted file mode 100644 index 99b4326..0000000 --- a/rpop_webhook.py +++ /dev/null @@ -1,67 +0,0 @@ -import os -import requests -import json -import dotenv -import datetime - -def send_webhook(): - # Load the webhook URL from the environment variables - dotenv.load_dotenv() - - # Replace with your actual webhook URL - webhook_url = os.getenv('DISCORD_WEBHOOK_URL') - - today = datetime.datetime.today().date() - - # Get the date from 7 days ago - seven_days_ago = today - datetime.timedelta(days=7) - - # request with the date and http://api.jonasjones.dev/v1/kcomebacks/filter/daterange?start=2023-12-1&end=2023-12-16&limit=50&offset=0 - response = requests.get(f"http://api.jonasjones.dev/v1/kcomebacks/filter/daterange?start={seven_days_ago}&end={today}&limit=50&offset=0") - - # Check if the request was successful - if response.status_code != 200: - print(f"Failed to fetch data. Status code: {response.status_code}") - exit() - - # Parse the JSON response - data = response.json() - data = data['results'] - - # check if there are 50 or more comebacks - if len(data) >= 50: - # request with offset 50 - response = requests.get(f"http://api.jonasjones.dev/v1/kcomebacks/filter/daterange?start={seven_days_ago}&end={today}&limit=50&offset=50") - # Check if the request was successful - if response.status_code != 200: - print(f"Failed to fetch data. Status code: {response.status_code}") - exit() - - # Parse the JSON response - data2 = response.json() - - # join the lists - data += data2['results'] - - # Create the message content - content = "# Here are the comebacks from this week:\n" - for i in data: - content += f"{i['date']} > {i['title']} - {i['artist']}: {i['links'] if i['links'] != [] else '*No Links*'}\n" - - # Message content - message = { - "content": content, - } - - # Make the POST request to the webhook URL - response = requests.post(webhook_url, data=json.dumps(message), headers={"Content-Type": "application/json"}) - - # Check if the request was successful - if response.status_code == 204: - print("Webhook sent successfully!") - else: - print(f"Failed to send webhook. Status code: {response.status_code}") - - -if __name__ == "__main__": - send_webhook() \ No newline at end of file diff --git a/rpopfetch.py b/rpopfetch.py index 34213df..6469cae 100644 --- a/rpopfetch.py +++ b/rpopfetch.py @@ -6,7 +6,6 @@ import re import json import time import sys -import rpop_webhook def fetch_main_reddit_wiki_page(subreddit_name, page_name): @@ -87,10 +86,10 @@ def convert_monthly_content_to_json(content, year, month): parts[3] = parts[3][1:] if (parts[3].startswith("[") and parts[3].endswith(")")): parts[3] = parts[3][1:parts[3].find("](")] - + if (parts[3].startswith("*[") and parts[3].endswith(")*")): parts[3] = parts[3][2:parts[3].find("](")] - + releasetype = [] # parse the release type @@ -173,19 +172,19 @@ def convert_monthly_content_to_json(content, year, month): else: # if the song links are not provided, replace the string with an empty list parts[6] = [] - + # add the reddit link to the list of links reddit = parts.pop(5) if reddit != "": parts[5].append(reddit) - + # remove the "th", "st", "nd", "rd" from the day parts[0] = parts[0].replace('th', '').replace('st', '').replace('nd', '').replace('rd', '') # make the links an empty list if it's null if parts[5] == [None]: parts[5] = [] - + # create a json entry from the parsed data json_entry = { "date": f"{year}-{month}-{parts[0]}", @@ -196,7 +195,7 @@ def convert_monthly_content_to_json(content, year, month): "links": parts[5] } - + json_data.append(json_entry) except Exception as e: @@ -248,7 +247,6 @@ def fetch_monthly_page(wiki_link, subreddit_name): return None UPLOAD_TO_CDN = True if "--cdn" in sys.argv else False -SEND_WEBHOOK = False if "--no-webhook" in sys.argv else False if "-nwh" in sys.argv else True # reddit infos subreddit_name = "kpop" @@ -316,7 +314,7 @@ if content: # save json_data to file with open(f"rkpop_data.json", "w") as f: f.write(json.dumps(json_data, indent=4)) - + print("Fetched", len(json_data) - 1, "entries.") cdn_upload_cmd = "rclone copy rkpop_data.json cdn:cdn/api/kcomebacks/" @@ -327,7 +325,3 @@ if content: elif input("Upload to cdn? [Y/n]") in ["Y", "y", ""]: print("Uploading...") os.system(cdn_upload_cmd) - - -if SEND_WEBHOOK: - rpop_webhook.send_webhook()