mirror of
https://github.com/fleschutz/PowerShell.git
synced 2025-01-28 16:48:39 +01:00
Update list-news.ps1
This commit is contained in:
parent
701fe3fa65
commit
f23f3518b6
@ -5,8 +5,10 @@
|
||||
This PowerShell script lists the latest news by using RSS (Really Simple Syndication) feeds.
|
||||
.PARAMETER RSS_URL
|
||||
Specifies the URL to the RSS feed (Yahoo News by default)
|
||||
.PARAMETER MaxCount
|
||||
Specifies the number of lines to list (20 by default)
|
||||
.PARAMETER MaxLines
|
||||
Specifies the maximum number of lines to list (24 by default)
|
||||
.PARAMETER Speed
|
||||
Specifies the speed to write the text (10 ms by default)
|
||||
.EXAMPLE
|
||||
PS> ./list-news
|
||||
.LINK
|
||||
@ -15,18 +17,18 @@
|
||||
Author: Markus Fleschutz | License: CC0
|
||||
#>
|
||||
|
||||
param([string]$RSS_URL = "https://yahoo.com/news/rss/world", [int]$MaxCount = 20)
|
||||
param([string]$RSS_URL = "https://yahoo.com/news/rss/world", [int]$MaxLines = 24, [int]$Speed = 10)
|
||||
|
||||
try {
|
||||
[xml]$Content = (Invoke-WebRequest -URI $RSS_URL -useBasicParsing).Content
|
||||
[int]$Count = 1
|
||||
foreach ($Item in $Content.rss.channel.item) {
|
||||
& "$PSScriptRoot/write-typewriter.ps1" "→ $($Item.title)" 20 # ms speed
|
||||
if ($Count++ -eq $MaxCount) { break }
|
||||
& "$PSScriptRoot/write-typewriter.ps1" "→ $($Item.title)" $Speed
|
||||
if ($Count++ -eq $MaxLines) { break }
|
||||
}
|
||||
$Source = $Content.rss.channel.title
|
||||
$Date = $Content.rss.channel.pubDate
|
||||
" By *$($Source)* as of $Date"
|
||||
" (by *$($Source)* as of $Date)"
|
||||
exit 0 # success
|
||||
} catch {
|
||||
"⚠️ Error in line $($_.InvocationInfo.ScriptLineNumber): $($Error[0])"
|
||||
|
Loading…
Reference in New Issue
Block a user