Naar inhoud springen

Gebruiker:Wikiwernerbot/https.py

Uit Wikipedia, de vrije encyclopedie
import pywikibot
import requests
import sys
site = pywikibot.Site()

for pagina in site.search("insource:/http:/", namespaces = 10): # 12 en hoger zijn gedaan.
    print(pagina.title())
    pagechanged = False
    for url in list(pagina.extlinks()):
        if url[0:5] != "http:" or pagina.text.find(url) == -1:
            continue
        try:
            urlhead = requests.head(url, timeout = 60)
        except:
            print("Fout bij uitvoeren headrequest:", sys.exc_info()[0])
            continue
        if urlhead.status_code == 301 and urlhead.next.url == "https://" + url[7:]:
            pagina.text = pagina.text.replace(url, urlhead.next.url)
            pagechanged = True
    if pagechanged: # Saven zonder dat er iets veranderd is, levert wel de vertraging op vanuit user_config.py
        try:
            pagina.save("[[Speciaal:Permalink/59792408#Links naar HTTP sites, vervangen voor HTTPS bij gelijke content|Botverzoek]]: vervangen http:// door https://")
        except:
            print("De pagina kon niet opgeslagen worden.")