#!/usr/bin/env python3 """Baut aus kombi_deals.html den Joomla-Artikel-HTML.""" import re from datetime import datetime KOMBI_FILE = "/home/hermes/workspace/kombi_deals_2026-07-06.html" OUTPUT = "/home/hermes/workspace/artikel_deals_montag_2026-07-06.html" with open(KOMBI_FILE) as f: raw = f.read() # Extrahiere den
...
Block (ohne
-Tag selbst) m = re.search(r"
(.*?)
", raw, re.DOTALL) if not m: print("ERROR: Kein
gefunden") exit(1) body_inner = m.group(1) # Ersetze den Amazon-Disclaimer durch Quellen-Footer body_inner = body_inner.replace( '

Preise und Verfügbarkeit können sich schnell ändern. Über die Links (60pro05-21) kauft ihr zum gleichen Preis — Amazon zahlt eine kleine Provision.

', '

Quellen
Amazon.de (CreatorAPI 3.2), BoardGameGeek XML API v2. Stand: 06.07.2026, 09:15 Uhr. Preise inkl. MwSt. und ggf. Versandkosten. Alle Angaben ohne Gewähr.

' ) # Ersetze h1 durch Hook-Titel body_inner = body_inner.replace( '

Brettspiel-Angebote auf Amazon

', '

Jumanji, Monopoly und Evacuation: Die 30 besten Brettspiel-Deals der Woche auf Amazon

' ) # Ersetze p.meta mit Datum body_inner = re.sub( r'

.*?

', '

Stand: 06. Juli 2026

', body_inner, count=1 ) # Entferne onerror-Attribute (nicht Joomla-kompatibel) body_inner = re.sub(r'\s+onerror="[^"]*"', '', body_inner) # Entferne
Brand
aus Non-Brettspiel-Deals # (das sind zusätzliche Marken-Info die im Artikel stört) body_inner = re.sub(r'
[^<]*', '', body_inner) # Baue Intro-Text + Read-More intro = """

Der Montag bringt frische Brettspiel-Deals auf Amazon: Von Jumanji mit 67 % Rabatt über den Strategiespiel-Klassiker Risiko bis hin zu Vladimír Suchýs „Evacuation" mit 45 % Nachlass — wir haben die 30 attraktivsten Angebote der Woche zusammengestellt. Dazu wie immer die besten Deals aus sieben weiteren Kategorien.


""" # Fulltext = Intro + Rest des Body (ohne das erste h1+p.meta, die sind schon im Intro) # Extrahiere alles NACH dem ersten p.meta (die Deal-Liste) parts = re.split(r'

.*?

', body_inner, maxsplit=1) if len(parts) >= 2: fulltext = intro + "\n" + parts[1] else: fulltext = intro + "\n" + body_inner # Baue den finalen Artikel-HTML meta_desc = "Jumanji -67%, Evacuation -45%, Cascadia -32%: Die 30 besten Brettspiel-Deals der Woche auf Amazon — plus Heißluftfritteusen, Laptops, Apple & mehr." meta_keys = "Brettspiel, Deals, Amazon, Angebote, Jumanji, Evacuation, Cascadia, Everdell, Brettspiel-Deals, reduziert" html = f""" Jumanji, Monopoly und Evacuation: Die 30 besten Brettspiel-Deals der Woche auf Amazon {fulltext} """ with open(OUTPUT, "w") as f: f.write(html) print(f"Artikel geschrieben: {OUTPUT}") print(f"Größe: {len(html)} Zeichen")