Hörhistorie in den neuen Feed übertragen – mit Claude, ohne Handarbeit (nur Pocketcast)

genau das gleiche Problem wie oben, nur mit Podcast Addict statt Pocket Casts: mein Hörstand (gehört / angespielt / Sterne) hing komplett im alten Feed fest, weil sich mit dem Plattformwechsel alle Feed- und Episoden-IDs geändert haben. Alles von Hand nachpflegen wollte ich nicht. Ich hab das von Claude (Claude Code) erledigen lassen – komplett ohne App-Zugriff oder API, nur über das Backup-File.

Der Unterschied zu Pocket Casts: Podcast Addict hat keine Cloud-API, die man anzapfen könnte. Der komplette Hörstand steckt lokal in einer SQLite-Datenbank, die im Backup-ZIP der App liegt. Der Ablauf, den Claude gefahren ist:

  1. Backup aus der App exportieren (Einstellungen → Backup/Restore → Backup), die ZIP enthält eine podcastAddict.db.
  2. DB entpacken, sofort eine Kopie ziehen – nur mit der Kopie wird gearbeitet, bis alles verifiziert ist.
  3. Schema angeschaut (podcasts- und episodes-Tabelle). Relevante Spalten: seen_status (gehört), position_to_resume (Position in ms), favorite, thumbsRating, playbackDate.
  4. Alte Podcast-Zeilen über die Feed-URL gefunden, alle Episoden mit Status exportiert.
  5. Neuen RSS-Feed geladen und die Episoden daraus geparst.
  6. Matching zwischen alt und neu per normalisiertem Titel, bei Unschärfen zusätzlich über Dauer (±1 Sek.) und Veröffentlichungsdatum abgesichert.
  7. Vor dem Schreiben eine Diff-Vorschau (Tabelle alt→neu) zur Kontrolle, dann UPDATE direkt in der DB-Kopie – strikt gefiltert auf die Episode-IDs des neuen Podcasts, damit nichts anderes angefasst wird.
  8. DB zurück ins ZIP gepackt (gleiche Struktur wie das Original), dann per Restore auf dem Handy eingespielt.

Was ich dabei gelernt habe:

  • Duplikate im alten Bestand sind der eigentliche Stolperstein, nicht das Titel-Matching. Bei mir gab’s z. B. eine Folge, die im alten Bestand mehrfach existierte (Original, Reupload wegen Audiofehler, zusätzliche Fassung aus einem zweiten alten Feed) – jeweils mit unterschiedlichem Hörfortschritt. Da musste ich von Hand entscheiden, welcher Stand gilt.
  • Auch im neuen Feed können doppelte Einträge für dieselbe Folge auftauchen. Kein Beinbruch, solange man zusätzlich zum Titel auch Datum/Dauer abgleicht – dann geht die Zuordnung trotzdem sauber auf.
  • Titel sind fast nie 1:1 identisch – Klammerzusätze wie „(LIVE)" oder Nummerierungen ändern sich gerne mal. Dauer + Datum als zweite Absicherung ist Pflicht, nicht optional.
  • Vor dem eigentlichen Schreiben unbedingt eine Vorschau/einen Diff anschauen lassen, bevor irgendwas final in die Kopie geschrieben wird – bei ein paar hundert Zeilen findet man Fehlzuordnungen sonst nicht mehr.

Für alle mit Podcast Addict also: geht genauso gut wie mit Pocket Casts, nur eben über die lokale Backup-DB statt eine Cloud-API. Man braucht dafür auch kein SQL-Wissen – Claude findet das Schema selbst, baut das Matching und zeigt eine Vorschau, bevor irgendwas geschrieben wird.

2 „Gefällt mir“