diff options
| author | Pinapelz <yukais@pinapelz.com> | 2025-11-24 22:19:24 -0800 |
|---|---|---|
| committer | Pinapelz <yukais@pinapelz.com> | 2025-11-24 22:19:24 -0800 |
| commit | 52bfc9156a8afcb1324df666f9e07fd57e775b24 (patch) | |
| tree | e64a4ffeda7511919a7828be6a190c14202afacd | |
| parent | 4a7872b52b299376a0837631beeadff3ddecd143 (diff) | |
wac_plus: upload image instead of b64 encode
| -rw-r--r-- | community/wacca_plus/wacca_plus.py | 20 | ||||
| -rw-r--r-- | requirements.txt | 2 |
2 files changed, 9 insertions, 13 deletions
diff --git a/community/wacca_plus/wacca_plus.py b/community/wacca_plus/wacca_plus.py index 90ec661..666a243 100644 --- a/community/wacca_plus/wacca_plus.py +++ b/community/wacca_plus/wacca_plus.py @@ -1,12 +1,11 @@ from datetime import datetime from dotenv import load_dotenv from common import create_database_connection +from catboxpy.catbox import CatboxClient import os import time -import requests import openai import json -import base64 import sys sys.path.append(os.path.abspath(os.path.join(os.path.dirname(__file__), "../../"))) @@ -66,15 +65,12 @@ def check_is_announcement_image(img_url: str): return parsed_result["is_wacca_plus_related"], parsed_result["category"] -def _convert_image_to_base64(img_url: str): - response = requests.get(img_url) - if response.status_code == 200: - img_data = response.content - img_base64 = base64.b64encode(img_data).decode('utf-8') - mime_type = response.headers['Content-Type'] - return f"data:{mime_type};base64,{img_base64}" - else: - raise Exception(f"Failed to fetch image from URL: {img_url}, status code: {response.status_code}") +def _upload_image_to_catbox(image_url: str): + client = CatboxClient() + file_url = client.upload(image_url) + if not file_url or file_url == "": + return image_url + return file_url def parse_announcement_messages(message_json: dict): news_posts = [] @@ -106,7 +102,7 @@ def parse_announcement_messages(message_json: dict): if not is_related: continue - filtered_images.append({"image": _convert_image_to_base64(image["url"]), "url": None}) + filtered_images.append({"image": _upload_image_to_catbox(image["url"]), "url": None}) if len(filtered_images) == 0: continue diff --git a/requirements.txt b/requirements.txt index 26c9faf..1818e90 100644 --- a/requirements.txt +++ b/requirements.txt @@ -1,7 +1,7 @@ beautifulsoup4==4.14.2 +catboxpy==0.1.1.1 firebase_admin==7.1.0 openai==2.8.1 python-dotenv==1.2.1 pytz==2025.2 selenium==4.38.0 -libsql |
