mirror of
https://github.com/JonasunderscoreJones/turbo-octo-potato.git
synced 2025-10-25 02:59:18 +02:00
Compare commits
3 commits
2f421d81b8
...
ccca4cb42b
| Author | SHA1 | Date | |
|---|---|---|---|
| ccca4cb42b | |||
| fb8a94d97c | |||
| 3ef4f18f92 |
3 changed files with 82 additions and 8 deletions
1
.gitignore
vendored
1
.gitignore
vendored
|
|
@ -4,3 +4,4 @@ __pycache__
|
|||
.working
|
||||
rkpop_data.json
|
||||
/turbo-octo-potato
|
||||
mcmod_metadata.json
|
||||
67
rpop_webhook.py
Normal file
67
rpop_webhook.py
Normal file
|
|
@ -0,0 +1,67 @@
|
|||
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()
|
||||
|
|
@ -6,6 +6,7 @@ import re
|
|||
import json
|
||||
import time
|
||||
import sys
|
||||
import rpop_webhook
|
||||
|
||||
def fetch_main_reddit_wiki_page(subreddit_name, page_name):
|
||||
|
||||
|
|
@ -247,6 +248,7 @@ 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"
|
||||
|
|
@ -325,3 +327,7 @@ 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()
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue