Get-FeedInfo (modification of post by view diff)
embed code: <script type="text/javascript" src="http://PoshCode.org/embed/1698"></script>download | new post
Takes an array of RSS feed URLs and gets the site URL and title..
- function Get-FeedInfo([string[]]$feeds) {
- # $feeds is an array of rss/atom URLs
- $blogs=@(); $broken=@(); $feeds = $feeds | sort -unique {$_}
- foreach($feed in $feeds){
- try {
- $xml = Get-WebPageContent $feed;
- } catch {
- $broken += $feed
- $xml = $null
- }
- if($xml.html.rss) { $xml = $xml.html; write-warning $feed }
- if($xml.rss) {
- $blogs += New-Object PSObject -Property @{
- title= $xml.rss.channel.title
- link = $xml.rss.channel.link | ? { $_ -is [string] }
- feed = $feed
- }
- } elseif($xml.feed) {
- $blogs += New-Object PSObject -Property @{
- title= $xml.feed.title.'#text'
- link = $xml.feed.link |? {$_.rel -eq 'alternate' } | select -expand href
- feed = $feed
- }
- } else {
- $broken += $feed
- $blogs += New-Object PSObject -Property @{ feed = $feed }
- }
- }
- Write-Output $blogs, $broken
- }
Submit a correction or amendment below (click here to make a fresh posting)
After submitting an amendment, you'll be able to view the differences between the old and new posts easily.
PowerShell Code Repository