Could you hire me? Contact me if you like what I’ve done in this article and think I can create value for your company with my skills.

March 7, 2018 / by Zsolt Soczó

.NET Rocks letöltése kocsiban hallgatáshoz

Másold be egy ps1 fájlba, és hagyd úgy éjszakára, reggelre ott lesz az egész.

function GetFeedPageCount ($url) {
  $feed=[xml](New-Object System.Net.WebClient).DownloadString($url)
  $pageCount = $feed.rss.channel.pageCount
  return $pageCount;
}

function DownloadFeed ($url) {
  $feed=[xml](New-Object System.Net.WebClient).DownloadString($url)
  foreach($i in $feed.rss.channel.item) {
    $url = New-Object System.Uri($i.enclosure.url)
    $url.ToString()
    $url.Segments[-1]
    $localFile = $url.Segments[-1]
    if (Test-Path($localFile)) {
      Write-Host "Skipping file, already downloaded"
    }
    else
    {
      Invoke-WebRequest $url -OutFile $url.Segments[-1]
    }
  }
}

# Related blog post here: http://blogs.msdn.com/b/cdndevs/archive/2014/11/18/azure-fridays-a-powershell-script-to-download-rss-videos.aspx

$feedUrl = "http://www.pwop.com/feed.aspx?show=dotnetrocks&filetype=master"
DownloadFeed($feedUrl)

Could you hire me? Contact me if you like what I’ve done in this article and think I can create value for your company with my skills.

LEAVE A COMMENT

3 COMMENTS

  • Antal István March 11, 2018

    Sajna nekem nem műx.
    A foreach kiugrik egyből.
    Nem vagyok PS guru, de csodálkoztam is, hogyan tud ez a cucc iterálni egy sztringben.

    Vagy kell ehhez még valami xml parser extension?

  • Antal István March 11, 2018

    ÁÁ meg is találtam.

    Kimaradt az [xml] a feed letöltésből:

    $feed=[xml](New-Object System.Net.WebClient).DownloadString($url)

    Így már műx!