Shortlink auflösen mit PowerShell
Jeder kennt sie inzwischen: Die Shortlinks im Internet. Auf Facebook, Amazon, Youtube und anderen Online Plattformen sind sie zu finden. Aber welche URL oder Website steckt dahinter? Einen Shortlink auflösen kann man schnell und einfach auch mit PowerShell 🙂
Shortlink auflösen mit PowerShell
Shortlink – Dienste, wie bit.ly, goo.gl oder tinyurl.com, sind sehr praktisch. Vorallem, wenn man einen Link verschicken will, ist es besser wenn der Link zur Seite kurz ist. Das Problem ist allerdings, dass man nicht weiß auf welcher Seite man landet. 🙁
Daher kann man mit PowerShell zuvor einen Shortlink auflösen, um zu sehen was sich dahinter versteckt.
Zunächst brauchen wir das PowerShell Script um den Shortlink auflösen zu können:
<# .SYNOPSIS Expand Short URLs .DESCRIPTION Unshortens the short URL using the UnTiny.me web API http://untiny.me/api .PARAMETER URL Short URL to be expanded .EXAMPLE PS > Expand-ShortURL -URL https://goo.gl/quuacW, http://goo.gl/VG9XdU ShortURL LongURL -------- ------- https://goo.gl/quuacW https://geekeefy.wordpress.com/ http://goo.gl/VG9XdU https://raw.githubusercontent.com/PrateekKumarSingh/PowershellScrapy/master/MACManufacturers/MAC_Manufacturer_Reference.csv .EXAMPLE PS > 'https://goo.gl/quuacW' |Expand-ShortURL ShortURL LongURL -------- ------- https://goo.gl/quuacW https://geekeefy.wordpress.com/ .NOTES Blog URL - http://geekeefy.wordpress.com #> Function Expand-ShortURL { Param( [Parameter( Mandatory = $true, HelpMessage = 'Short URL to be expanded', ValueFromPipeline = $true, Position = 0 )] [ValidateNotNullOrEmpty()] [string[]] $URL ) Begin{ } Process { Foreach($Item in $URL){ try { [PSCustomObject]@{ ShortURL = $Item LongURL = Invoke-WebRequest -Uri "http://untiny.me/api/1.0/extract?url=$Item&format=text" -ErrorAction Stop |` ForEach-Object Content } } catch { $_.exception.Message } } } End{ } }
Das Script speichern wir unter expand-shorturl.ps1 ab. Übrigens nutzt das Script den Webservice untiny.me 🙂
Zuerst laden wir das Script wieder mit dem Befehl:
. .\expand-shorturl.ps1
Außerhalb der PowerShell werden Funktionen nach dem Ausführen eines PowerShell – Skripts wieder entladen. Wird ein Skript aber mit einem “.
” geladen, kann die Funktion auch noch nach dem Ende des Skripts aufgerufen werden.
Nun rufen wir die Funktion auf, die uns die Lange, bzw. richtige URL ausspuckt:
Expand-ShortURL -url https://bit.ly/2JCl6mS