From 35c3e11b6e80da6680255e8998aa207e778ab9e9 Mon Sep 17 00:00:00 2001 From: "A.M. Rowsell" Date: Thu, 30 Jan 2025 16:28:11 -0500 Subject: [PATCH 1/2] Added encoding string, comments --- discorss.py | 3 +++ 1 file changed, 3 insertions(+) diff --git a/discorss.py b/discorss.py index 9dc64b1..4c3df17 100755 --- a/discorss.py +++ b/discorss.py @@ -1,4 +1,5 @@ #!/usr/bin/env python +# -*- coding: UTF-8 -*- # SPDX-License-Identifier: MPL-2.0 # SPDX-FileCopyrightText: © 2025 A.M. Rowsell @@ -44,10 +45,12 @@ def main(): now = time.mktime(time.localtime()) last_check = app_config["lastupdate"] for hook in app_config["feeds"]: + # Get the feed feed = feedparser.parse(hook["url"]) published_time = time.mktime(feed.entries[0]["published_parsed"]) published_time = published_time + hook["offset"] print(feed.entries[0]["published"], published_time, now) + # Generate the webhook webhook = { "embeds": [ { From 38e78bcdf45454993d2093abe4bce59634c2bd7d Mon Sep 17 00:00:00 2001 From: "A.M. Rowsell" Date: Thu, 30 Jan 2025 16:28:30 -0500 Subject: [PATCH 2/2] Still debugging errors, seems to be json encoding issue? --- discorss.py | 12 ++++++++---- 1 file changed, 8 insertions(+), 4 deletions(-) diff --git a/discorss.py b/discorss.py index 4c3df17..bf39fed 100755 --- a/discorss.py +++ b/discorss.py @@ -59,15 +59,19 @@ def main(): "description": getDescription(feed), "provider": "DiscoRSS", } - ], + ] } customHeader = { - "User-Agent": "DiscoRSS (https://git.frzn.dev/amr/discorss.git, 0.1)" + "user-agent": "DiscoRSS (https://git.frzn.dev/amr/discorss, 0.1)", + "content-type": "application/json", } if published_time > last_check and published_time < now: - r = requests.post(hook["webhook"], json=webhook, headers=customHeader) + print(json.dumps(webhook)) + r = requests.post( + hook["webhook"], data=json.dumps(webhook), headers=customHeader + ) print(webhook["embeds"][0]["title"]) - print(r.text, r.status_code, r.headers) + print(r.text, r.status_code, r.json()) app_config["lastupdate"] = now with open(config_file_path, "w") as config_file: json.dump(app_config, config_file, indent=4)