10 votes

Exporter des podcasts depuis une application iOS au format OPML

J'ai finalement décidé de passer de l'application Apple Podcast à Overcast, mais je ne trouve pas le moyen de déplacer mes abonnements. A ( question similaire ) a été posée il y a un certain temps, mais iTunes a changé depuis, et la nouvelle application MacOS n'a pas ces menus. Je me demandais donc si quelqu'un connaissait un autre moyen d'obtenir un fichier OPML.

15voto

L'application Podcasts semble stocker ses données dans une base de données sqlite. En utilisant les informations contenues dans cette base, nous pouvons créer un fichier OPML qu'Overcast (ou toute autre bonne application de podcast) acceptera.

Voici un script que j'ai créé pour créer le fichier OPML :

#!/bin/bash

sql() {
    sqlite3 "${HOME}/Library/Group Containers/"*.groups.com.apple.podcasts/Documents/MTLibrary.sqlite "select ${1} from ZMTPODCAST ${2:+"where ${2} = '${3}'"};" |\
        sed -e 's/&/\&/g' \
            -e 's/</\&lt;/g' \
            -e 's/>/\&lgt;/g' \
            -e "s/'/\&apos;/g"
}

opml_export=${HOME}/Desktop/podcasts.opml
cat > ${opml_export} << HEAD
<?xml version="1.0" encoding="utf-8"?>
<opml version="1.0">
  <head><title>Podcast Subscriptions</title></head>
  <body>
    <outline text="feeds">
HEAD

sql ZUUID | while read -r uuid ; do
    feed_url=$(sql ZFEEDURL ZUUID "${uuid}")
    home_url=$(sql ZWEBPAGEURL ZUUID "${uuid}")
    title=$(sql ZTITLE ZUUID "${uuid}")
    cat <<EOT
<outline type="rss" text="${title}" title="${title}" xmlUrl="${feed_url}" htmlUrl="${home_url}" />
EOT
done >> ${opml_export}

cat >> ${opml_export} << TAIL
    </outline>
  </body>
</opml>
TAIL

Pour les personnes qui ne savent pas comment exécuter des scripts sur la ligne de commande, c'est facile :

  • copier l'intégralité du texte de la case grise ci-dessus
  • ouvrir l'application Terminal
  • à l'invite de votre terminal, tapez :
    • pbpaste > export_podcasts.sh coller le texte dans un fichier portant le nom approprié
    • frapper return puis tapez :
    • chmod u+x export_podcasts.sh , ce qui rend votre fichier exécutable
    • frapper return puis tapez :
    • ./export_podcasts.sh , en exécutant votre script.

Cela créera podcasts.opml sur votre bureau.

Pour transférer ce fichier sur votre iPhone, vous pouvez utiliser AirDrop ou iCloud Drive :

AirDrop - Assurez-vous que votre Mac et votre iPhone ont activé AirDrop, vous pouvez faire un clic droit sur le fichier, puis Share > AirDrop et touchez l'icône représentant l'avatar de votre iPhone et le nom de votre téléphone. Cela devrait automatiquement ouvrir le fichier sur votre iPhone et vous permettre de commencer l'importation dans Overcast.

iCloud Drive - Si iCloud Drive est configuré sur votre Mac et votre iPhone, vous pouvez déplacer podcasts.opml dans un dossier iCloud Drive sur votre Mac, puis ouvrez le fichier à partir de l'application Fichiers sur l'iPhone. Vous devriez alors être invité à "Ouvrir avec Overcast", qui devrait alors importer les podcasts dans le fichier.

LesApples.com

LesApples est une communauté de Apple où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres utilisateurs d'appareils Apple, poser vos propres questions ou résoudre celles des autres.

Powered by:

X