Wie kann ich dem Dateinamen oder den Dateimetadaten ein Veröffentlichungsdatum eines Podcasts hinzufügen?

Wie kann ich dem Dateinamen oder den Dateimetadaten ein Veröffentlichungsdatum eines Podcasts hinzufügen?

ich benutzegPodderum Podcasts herunterzuladen.

Ich habe mir zum Beispiel die Podcasts heruntergeladen fürEconTalkund dies ist der erste Podcast:

Bildbeschreibung hier eingeben

gPodder sagt mir, dass dieser Podcast am „16.03.2006“ „veröffentlicht“ wurde.

Wie füge ich diese Information ( yyyy-mm-dd, „2006-03-16“) entweder vor den Dateinamen oder irgendwo in die Metadaten der Datei ein?

Mein Ziel ist, dasselbe für alle Podcasts zu tun, die ich heruntergeladen habe, und nicht nur für diesen einen.


Derzeit yyyy-mm-ddscheinen diese Informationen nirgendwo in den Metadaten der Datei aufzutauchen:

Bildbeschreibung hier eingeben

Antwort1

Sieht so aus, als ob gPodder bereits eineintegrierte Erweiterungwelches dies tut. Sie müssen es nicht herunterladen, da es im Lieferumfang enthalten ist.

  1. KlickengPodder>Einstellungen.
  2. Drücke denErweiterungenTab.
  3. Aktivieren Sie das Kontrollkästchen nebenEpisoden nach dem Download umbenennen.
  4. Drücke denKonfiguration bearbeitenSchaltfläche unten rechts im Einstellungsfenster.
  5. Aktivieren Sie das Kontrollkästchen nebenErweiterungen.rename_download.add_sortdate.
  6. Schließen Sie die restlichen Fenster.

Alle zukünftig heruntergeladenen Podcast-Dateinamen sollten dann mit dem Präfix "JJJJ-MM-TT-".

Optional können Sie auch aktivierenErweiterungen.Download umbenennen.Podcast-Titel hinzufügenum den Titel auch dem Dateinamen voranzustellen.


Sie können auch die folgende PowerShell verwenden, um vorhandene Dateien umzubenennen:

#
# PrependDateToPodcasts.ps1
#
Param (
  [Parameter(Mandatory=$true, Position=0)][string]$FeedURL,
  [Parameter(Mandatory=$true, Position=1)][string]$Directory,
  [Parameter()][switch]$DryRun = $false
)

$XML = Invoke-WebRequest $FeedURL
$Podcasts = ($XML | Select-Xml "rss/channel/item").Node

$Podcasts | ForEach-Object {
  $Filename = Split-Path $_.enclosure.url -Leaf
  $Date = [datetime](($_.pubDate -replace " [A-Z]{3}$", "") -replace "^\w{3}", "") | Get-Date -Format "yyyy-MM-dd"

  $FilePath = Join-Path $Directory $Filename
  $FilenameNew = "${Date} - ${Filename}"

  if (Test-Path $FilePath) {
    Write-Host "Renaming `"${Filename}`" to `"${FilenameNew}`"."
    if (!$DryRun) {
      Rename-Item $FilePath $FilenameNew
    }
  }
}
# Preview changes before actually running.
.\PrependDateToPodcasts.ps1 "http://files.libertyfund.org/econtalk/EconTalk.xml" "C:\path\to\gPodder\Downloads\EconTalk" -DryRun

# Rename for real.
.\PrependDateToPodcasts.ps1 "http://files.libertyfund.org/econtalk/EconTalk.xml" "C:\path\to\gPodder\Downloads\EconTalk"

verwandte Informationen