🚀 100 Videos pro Tag? Diese Pipeline macht's möglich.
Vereinbaren Sie ein unverbindliches Strategiegespräch
📊 Business Value
Affiliate-Marketing auf YouTube skaliert nur mit Automation. Diese Pipeline erstellt komplette Produkt-Review-Shorts — von Amazon-Produktdaten bis zum YouTube-Upload — vollautomatisch.
⚙️ Pipeline-Architektur
Amazon API
PA-API v5 GetItems: Titel, Preis, Rating, Features, Bild-URL, Affiliate-Link. AWS Signature V4.
Frame-Generator
Pillow erstellt 4 Frames (1080x1920): Intro mit Produktbild, Features mit Rating, Preis-Slide, QR-Code.
MoviePy Render
Frames zu 15s-Video kombinieren. Optionale Hintergrundmusik (30% Lautstärke). H.264 8Mbit/s Export.
YouTube Upload
YouTube Data API v3: Titel, Beschreibung, Tags (SEO-optimiert), Kategorie, Sprache. Resumable Upload.
💻 Code — Amazon PA-API Integration (AWS Signature V4)
Authentifizierte Amazon-Produktabfrage
class AmazonProductAPI:
def __init__(self):
self.access_key = os.getenv('AMAZON_ACCESS_KEY')
self.secret_key = os.getenv('AMAZON_SECRET_KEY')
self.partner_tag = os.getenv('AMAZON_PARTNER_TAG')
self.endpoint = 'https://webservices.amazon.de/paapi5/getitems'
def _sign_request(self, method, uri, query, headers, payload):
# AWS Signature Version 4
canonical_headers = '\n'.join(
f"{k.lower()}:{v}" for k, v in sorted(headers.items()))
payload_hash = hashlib.sha256(
payload.encode('utf-8')).hexdigest()
canonical_request = (
f"{method}\n{uri}\n{query}\n"
f"{canonical_headers}\n\n"
f"{';'.join(sorted(headers.keys()))}\n"
f"{payload_hash}"
)
# Signing Key via HMAC-Kette
date_key = sign(b'AWS4' + secret, date_str)
region_key = sign(date_key, self.region)
service_key = sign(region_key, 'ProductAdvertisingAPI')
signing_key = sign(service_key, 'aws4_request')
signature = hmac.new(
signing_key,
string_to_sign.encode('utf-8'),
hashlib.sha256
).hexdigest()
return f"AWS4-HMAC-SHA256 Credential=..."
def get_product_details(self, asin):
payload = {
"ItemIds": [asin],
"PartnerTag": self.partner_tag,
"Resources": [
"Images.Primary.Large",
"ItemInfo.Title",
"ItemInfo.Features",
"Offers.Listings.Price",
"CustomerReviews.StarRating"
]
}
# ... API-Call mit signierten Headern
💻 Code — YouTube Shorts Frame-Generator (Pillow)
QR-Code-Frame mit Affiliate-Link (1080x1920)
def create_product_frame(self, product_data, frame_type="qr"):
img = Image.new('RGB', (1080, 1920), color='#E8F5E9')
draw = ImageDraw.Draw(img)
if frame_type == "qr":
draw.text((540, 250), "📱 Jetzt kaufen",
fill='#2E7D32', font=font_title, anchor="mm")
# QR-Code generieren (300x300, grün)
qr = qrcode.QRCode(
version=1, error_correction=ERROR_CORRECT_H,
box_size=10, border=2)
qr.add_data(product_data['affiliate_link'])
qr.make(fit=True)
qr_img = qr.make_image(
fill_color="#2E7D32", back_color="white")
qr_img = qr_img.resize((600, 600), LANCZOS)
img.paste(qr_img, (240, 500))
draw.text((540, 1200), "QR-Code scannen →",
fill='#212121', font=font_subtitle, anchor="mm")
draw.text((540, 1300), "Direkt zu Amazon",
fill='#757575', font=font_text, anchor="mm")
# Affiliate-Hinweis
draw.text((540, 1700),
"* Affiliate-Link - Keine Mehrkosten",
fill='#9E9E9E', font=font_small, anchor="mm")
return img
💻 Code — Video-Rendering & YouTube Upload
MoviePy Komposition + YouTube Data API Upload
# 4 Frames zu 15s-Video kombinieren
frames = [
('intro', 4), ('features', 5),
('price', 3), ('qr', 3)
]
clips = []
for frame_type, duration in frames:
frame_img = self.create_product_frame(
product_data, frame_type)
temp_path = f"temp_{frame_type}.png"
frame_img.save(temp_path)
clip = ImageClip(temp_path).set_duration(duration)
clips.append(clip)
final_clip = concatenate_videoclips(clips, method="compose")
# Optionale Musik (30% Lautstärke)
if background_music:
audio = AudioFileClip(background_music)
audio = audio.set_duration(final_clip.duration)
audio = audio.volumex(0.3)
final_clip = final_clip.set_audio(audio)
# H.264 Export
final_clip.write_videofile("output.mp4", fps=30,
codec='libx264', audio_codec='aac',
bitrate='8000k')
# YouTube Upload via API
body = {
'snippet': {
'title': title[:100],
'description': description,
'tags': ['Saftkanne', 'Produkttest', 'Amazon',
'Shorts', 'Küche', 'Retro'],
'categoryId': '26',
'defaultLanguage': 'de'
},
'status': {'privacyStatus': 'public'}
}
media = MediaFileUpload("output.mp4",
chunksize=-1, resumable=True)
request = youtube.videos().insert(
part='snippet,status', body=body, media_body=media)
response = request.execute()
🎯 Strategische Erkenntnisse
Skalierung ohne Personalkosten
1 Video/Tag manuell = 30/Monat. Pipeline = 30/Stunde. Gleiche Qualität, 40x Output — ohne zusätzliche Videoproduzenten.
Automation ist der einzige Hebel für Content-Skalierung.
API-Compliance durch Sales
Amazon PA-API erfordert 3 Verkäufe/180 Tage. Der Sales-Tracker überwacht das — kein plötzlicher API-Verlust.
Compliance-Monitoring als Teil der Pipeline = kein böses Erwachen.
QR-Code = Attribution
Unique QR-Code pro Video ermöglicht Zuordnung: Welches Short hat den Sale gebracht? Ohne QR-Code rätseln Sie.
Tracking-URL im QR-Code = endlich wissen, was wirkt.
Ihre eigene Video-Pipeline — in 2 Wochen live
Amazon, eBay, eigener Shop — ich baue Ihre automatisierte Content-Produktion. Datenabruf, Videokomposition, Upload. Alles aus einer Hand.