Benutzer:Plozessor/UpdateGlbLinks
Zur Navigation springen
Zur Suche springen
#
# In der Variable $lbseiten muss eine Liste mit den Namen der Landschaftsbestandteil-Seiten sein (z. B. mit "$lbseiten = Get-Clipboard" aus Excel eingefügt)
#
# Wo halt PyWikibot installiert ist
Set-Location c:\UTIWIN\pywikibot2\core
$lbseiten | ForEach-Object {
$newpage = $_
$newlink = "* [[" + $_ + "]]"
Write-Host $_ -ForegroundColor Blue
$urlpart = $_.replace(" ", "_")
$url = 'https://de.wikipedia.org/wiki/' + $urlpart + '?action=raw'
$result = Invoke-WebRequest $url
$lines = $result.content.split("`n")
$links = $lines | Where-Object { $_ -match "^\*\s*\[\[" }
$pages = $links | ForEach-Object {
$_.replace("* [[", "").replace("]]", "")
}
$pages | ForEach-Object {
Write-Host $_ -ForegroundColor Yellow
$urlpart2 = $_.replace(" ", "_")
$url2 = 'https://de.wikipedia.org/wiki/' + $urlpart2 + '?action=raw'
$result2 = Invoke-WebRequest $url2
$lines2 = $result2.content.split("`n")
$links2 = $lines2 | Where-Object { $_ -match "^\*\s*\[\[" }
if ($links2) {
if ($newlink -in $links2) {
Write-Host 'exists!!!' -ForegroundColor DarkRed
}
else {
$lastline = $links2 | Select-Object -last 1
$newlastline = $lastline + "\n" + $newlink
Write-Host $lastline -ForegroundColor Red
# Aufruf PyWikibot ggf. anpassen
& c:\utiwin\python\python.exe pwb.py replace -lang:de -family:wikipedia -page:$urlpart2 -summary:"Link zur neuen Liste der geschützten Landschaftsbestandteile eingefügt" -always $lastline $newlastline
}
}
}
}