Update Invoke-WinUtilSponsors.ps1 (#4589)

This commit is contained in:
Gabi
2026-06-03 21:36:42 +03:00
committed by GitHub
parent 58df36841f
commit 2bee0d6f2c
+2 -42
View File
@@ -1,44 +1,4 @@
Function Invoke-WinUtilSponsors { Function Invoke-WinUtilSponsors {
<# $sponsors = ([regex]::Matches(([regex]::Match((irm https://github.com/sponsors/ChrisTitusTech),'(?s)(?<=Current sponsors).*?(?=Past sponsors)')).Value,'(?<=alt="@)[^"]+')).Value | Where-Object {$_ -ne "ChrisTitusTech"}
.SYNOPSIS return $sponsors
Lists Sponsors from ChrisTitusTech
.DESCRIPTION
Lists Sponsors from ChrisTitusTech
.EXAMPLE
Invoke-WinUtilSponsors
.NOTES
This function is used to list sponsors from ChrisTitusTech
#>
try {
# Define the URL and headers
$url = "https://github.com/sponsors/ChrisTitusTech"
$headers = @{
"User-Agent" = "Chrome/58.0.3029.110"
}
# Fetch the webpage content
try {
$html = Invoke-RestMethod -Uri $url -Headers $headers
} catch {
Write-Output $_.Exception.Message
exit
}
# Use regex to extract the content between "Current sponsors" and "Past sponsors"
$currentSponsorsPattern = '(?s)(?<=Current sponsors).*?(?=Past sponsors)'
$currentSponsorsHtml = [regex]::Match($html, $currentSponsorsPattern).Value
# Use regex to extract the sponsor usernames from the alt attributes in the "Current Sponsors" section
$sponsorPattern = '(?<=alt="@)[^"]+'
$sponsors = [regex]::Matches($currentSponsorsHtml, $sponsorPattern) | ForEach-Object { $_.Value }
# Exclude "ChrisTitusTech" from the sponsors
$sponsors = $sponsors | Where-Object { $_ -ne "ChrisTitusTech" }
# Return the sponsors
return $sponsors
} catch {
Write-Error "An error occurred while fetching or processing the sponsors: $_"
return $null
}
} }