InternetArchiveBot/How the bot fixes broken links/nl
Het proces van het repareren van gebroken links vindt plaats in vier stappen: het analyseren van de inhoud van de pagina, het scannen van de links die op de pagina staan, het maken van archieven van links en het bewerken van de pagina.
De pagina analyseren
Eerst haalt de bot een groep van 5.000 artikelen om mee te werken uit de API van de wiki. Voordat de batch wordt gestart, zal de bot controleren of er vanaf de beheerinterface wijzigingen zijn aangebracht. Zodra de Commissie de wijzigingen in de configuratie heeft toegepast, zal zij verder werken met de batch van 5.000 artikelen, die meestal in alfabetische volgorde zijn.
De bot begint zijn pagina-analyse door de wikitext van de pagina volledig te scannen. Het probeert zoveel mogelijk informatie te verzamelen over citatiesjablonen die URL's bevatten, URL's tussen vierkante haken en URL's die duidelijk zijn geplaatst, met inachtneming van <nowiki>, <pre>, <code>, <syntaxhighlight>, <source> en HTML-opmerkingen. Het probeert ook relevante informatie te zoeken over de links die het vindt, bijvoorbeeld of een andere redacteur of bot de link dood heeft verklaard, of dat er al archief-URL's aan zijn gekoppeld. De volgende stap is het analyseren van de informatie die door de parser wordt geretourneerd om er metadata over te maken.
De metadata voor elke referentie - een bron met een link erin - is gebaseerd op de gegevens van de parser, waaronder: toegangstijd, archieftijd, archief-URL, de oorspronkelijke URL, of de URL dood is, of deze wordt beschouwd als een paywall-URL, of het een misvormde referentie is, of het een referentie is die desgewenst kan worden uitgebreid tot een sjabloon, of de URL al als dood wordt behandeld of niet. Als de toegangstijd niet wordt gevonden in de verwijzing, zal InternetArchiveBot proberen de toegangstijd te extrapoleren door aan te nemen dat het tijdstip waarop de link aan de pagina is toegevoegd, het tijdstip was waarop de link voor het laatst werd geopend. Als er een archief-URL wordt gevonden die de bot niet de oorspronkelijke URL onthult die het zou moeten weergeven, zal de bot dit extrapoleren om te verifiëren dat het archief daadwerkelijk bij de referentie hoort.
Opmerking met betrekking tot URL's in sjablonen: InternetArchiveBot verwerkt standaard geen URL's in onbekende sjablonen, omdat het niet weet hoe het wijzigen van dat sjabloon de weergegeven pagina kan beïnvloeden. Alle sjablonen die niet zijn geconfigureerd als een citatiesjabloon worden beschouwd als onbekende sjablonen. Het configureren van sjablonen gebeurt met de Citatie Sjablonen configurator.
De links scannen
Nadat elke link is geanalyseerd, zal de bot, indien zo ingesteld, proberen te bepalen of de link daadwerkelijk dood is of niet, door een snelle scan uit te voeren, met URL-zoeken tussen pauzes om overbelasting te voorkomen. Meerdere URL's in hetzelfde domein worden in serie opgevraagd met een pauze van één seconde. URL's van een ander domein worden gegroepeerd voor een asynchrone vraag. Alleen URL's die voldoen aan een bepaald criterium worden opgenomen voor scannen.
De URL's die moeten worden gescand, moeten niet in de afgelopen zeven dagen zijn gescand. Als de laatste scan van de URL echter resulteerde in een reactie waarbij de URL als dood werd gemarkeerd, wordt de wachttijd verlaagd tot drie dagen. Een URL moet drie opeenvolgende scans mislukken om als dood te worden beschouwd. Dit betekent dat het minimaal negen dagen duurt voordat een URL als dood wordt beschouwd. De wachttijd wordt teruggebracht tot zeven dagen zodra het als dood wordt beschouwd. Als een dode URL wordt gescand en werkend wordt gevonden, wordt de status onmiddellijk opnieuw ingesteld. URL's en domeinen die zijn ingesteld in de permabele staat (d.w.z. permanent levend) worden altijd gezien als levend, tenzij het op wiki wordt getagged als een dode link, en de bot is geconfigureerd om de tag te accepteren over zijn eigen beoordeling. Permabele verbindingen worden niet gescand. URL's en domeinen die zijn ingesteld op permadead (d.w.z. blijvend dood) worden altijd zonder uitzondering als dood gezien, deze worden niet gescand.
Naast de twee genoemde permanente staten, scant de bot ook geen links die volgens hem voor aanmeldingen zijn. Omdat websites als die niet nauwkeurig kunnen worden beoordeeld zonder te weten dat de reactie te wijten is aan ontbrekende referenties, of als de pagina eigenlijk down is. Als gevolg hiervan zal de bot de URL alleen als dood beschouwen als hij handmatig in de bot is ingesteld, of als hij op Wikipedia is getagged. De bot zoekt naar sjablonen, of parameterswaarden in de CS1- sjablonen die worden ingesteld door de gebruiker die de site identificeert als een vrij of betaald account nodig om toegang tot het materiaal te krijgen. Als het domein wordt gevonden, wordt het gemarkeerd als een abonnement en de bot stopt met het controleren.
Dode links archiveren
Nadat alle links zijn gescand, gaat de bot verder met het zoeken naar archieven voor links die dood zijn bevonden. Als dit is geconfigureerd, kan het ook zoeken naar archieven voor alle werkende links. Als de bot in het verleden eerder een archief-URL van een bepaalde link heeft ontdekt, zal hij uitstellen naar de oude versie. InternetArchiveBot kan meer dan 20 verschillende archiveringsdiensten herkennen en gebruiken. Als er geen archief bestaat voor een levende link, zal de bot proberen een kopie van de link op te slaan in de Wayback Machine als dit is geconfigureerd, en de resulterende momentopname gebruiken als de nieuwe archief-URL. Als er geen archiefmomentopname voor een dode link wordt gevonden, beschouwt de bot deze als onherstelbaar en markeert deze als een permanent dode verwijzing. Als de referentie een archief-URL lijkt te hebben, maar deze niet wordt herkend als een geldig archief, of als de URL niet overeenkomt met de momentopname, wordt deze vervangen door een URL die de bot als geldig beschouwt. Dit waarborgt de integriteit van de referenties en helpt de effecten van fouten en vandalisme te minimaliseren.
De pagina bewerken
Zodra de bot klaar is met het analyseren van de links, zal het proberen vast te stellen of het een herhaalde bewerking uitvoert die in het verleden is teruggedraaid. Als het detecteert dat het een bewerking herhaalt, zal het proberen te achterhalen waarom de bewerking is teruggedraaid, inclusief of het is gerapporteerd als een vals-positief. Als wordt vastgesteld dat de bewerking mogelijk een vals-positief was, wordt de vals-positieve melding gedaan namens de terugdraaiende gebruiker en wordt de bewerking pas opnieuw uitgevoerd nadat een ontwikkelaar de melding heeft beoordeeld.
Ten slotte wordt er een bewerking op het artikel geplaatst. De bot zal onderweg ook wat opruimen en wat andere kleine wijzigingen aanbrengen in referenties die het van plan is te bewerken. Meestal zal de bot de sjabloonafstand consistenter maken, om het gebruik van HTTPS op specifieke archief-URL's af te dwingen indien beschikbaar, en om soms gewoon UrlStatus op een citeersjabloon van levend naar dood te schakelen. Als de bot een referentie tegenkomt die geen citatiesjabloon gebruikt, zal de bot de kale URL-referentie omzetten in een referentie die een citaatsjabloon gebruikt als hij dit kan doen zonder het formaat van de referentie te verbreken. Als een kale referentie een archiefsjabloon heeft, een sjabloon dat een link naar de archiefmomentopname van de originele URL's weergeeft, en de sjabloon als verouderd wordt beschouwd, zal de bot deze converteren naar de gewenste standaardinstelling.
Nadat de bewerking is uitgevoerd, zal de bot, indien geconfigureerd om dit te doen, een bericht op de overlegpagina achterlaten met een beschrijving van de wijzigingen die het op de pagina heeft aangebracht. Als alternatief kan de bot worden geconfigureerd om alleen berichten op de overlegpagina achter te laten in plaats van het artikel te bewerken.