fix: QC-Ratings aus 7 älteren Artikeln entfernt (CHECK 10)

This commit is contained in:
Hermes Agent
2026-06-23 23:47:51 +02:00
parent e73e0e88de
commit 4d90e4249d
656 changed files with 2602398 additions and 3 deletions
+71
View File
@@ -0,0 +1,71 @@
#!/usr/bin/env python3
"""Upload image to Joomla Media + Create article."""
import json, subprocess, sys
# Read token
with open('/home/hermes/.hermes/joomla_token.txt') as f:
token = f.read().strip()
print(f"Token length: {len(token)}")
# Step 1: Upload media
print("\n=== Uploading media ===")
media_cmd = [
'curl', '-s', '-X', 'POST',
'https://www.brettspiel-news.de/api/index.php/v1/media/files',
'-H', 'Accept: application/vnd.api+json',
'-H', f'X-Joomla-Token: {token}',
'-F', 'file=@/home/hermes/workspace/dune_uprising_sale_2026-06-20.png',
'-F', 'path=images/Spiele/2026',
]
result = subprocess.run(media_cmd, capture_output=True, text=True, timeout=30)
print(result.stdout)
try:
media_data = json.loads(result.stdout)
if 'data' in media_data:
media_attrs = media_data['data'].get('attributes', {})
media_filename = media_attrs.get('path', media_attrs.get('filename', ''))
print(f"Uploaded: {media_filename}")
elif 'errors' in media_data:
print(f"ERROR: {json.dumps(media_data['errors'], indent=2)}")
except json.JSONDecodeError:
print(f"Raw: {result.stdout}")
# Step 2: Create article
print("\n=== Creating article ===")
with open('/home/hermes/workspace/daily_article_2026-06-20.html') as f:
article_html = f.read().strip()
title = '„Spione gegen Frust" vom Clank!-Designer Paul Dennen: Dune Imperium Uprising heute 26 % reduziert'
payload = {
'title': title,
'introtext': '',
'text': article_html,
'catid': 61,
'state': 0,
'access': 6,
'created_by': 560,
'language': 'de',
'featured': 1
}
article_cmd = [
'curl', '-s', '-X', 'POST',
'https://www.brettspiel-news.de/api/index.php/v1/content/articles',
'-H', 'Accept: application/vnd.api+json',
'-H', 'Content-Type: application/json',
'-H', f'X-Joomla-Token: {token}',
'-d', json.dumps(payload),
]
result = subprocess.run(article_cmd, capture_output=True, text=True, timeout=30)
print(result.stdout)
try:
art_data = json.loads(result.stdout)
if 'data' in art_data:
art_id = art_data['data'].get('id', 'UNKNOWN')
print(f"Article created! ID: {art_id}")
elif 'errors' in art_data:
print(f"ERROR: {json.dumps(art_data['errors'], indent=2)}")
except json.JSONDecodeError:
print(f"Raw: {result.stdout}")