Cookies op Tweakers

Tweakers maakt gebruik van cookies, onder andere om de website te analyseren, het gebruiksgemak te vergroten en advertenties te tonen. Door gebruik te maken van deze website, of door op 'Ga verder' te klikken, geef je toestemming voor het gebruik van cookies. Wil je meer informatie over cookies en hoe ze worden gebruikt, bekijk dan ons cookiebeleid.

Meer informatie

Google maakt robots.txt-parser open source om er internetstandaard van te maken

Google heeft de parser van zijn robots.txt-protocol en de bijbehorende libraries open source beschikbaar gemaakt. Het bedrijf hoopt op die manier dat websitebouwers en bedrijven zorgen dat het Robots Exclusion Protocol een officiële webstandaard wordt.

Alle bestanden rondom het REP zijn op GitHub gezet. Het gaat om de library die het Robots Exclusion Protocol in Googlebot aanstuurt, de crawler die websites indexeert voor de zoekmachine. Google vraagt ontwikkelaars in de komende tijd om hun input over de plannen.

Met het open source maken van de libraries hoopt Google dat het REP tot officiële internetstandaard kan worden verklaard. Tot nu toe was het dat niet, waardoor ontwikkelaars het protocol altijd iets anders konden interpreteren. Daardoor kunnen er problemen ontstaan wanneer code wordt geschreven in bepaalde verwerkers of besturingssystemen, die dan net iets anders werken. Om zulke dingen te voorkomen heeft Google bijvoorbeeld verschillende manieren opgenomen in de code waarop het disallow-commando aan robots.txt kan worden doorgegeven.

Om ervoor te zorgen dat REP een officiële standaard wordt, heeft Google de documentatie ook aan de Internet Engineering Task Force gegeven, de organisatie die gaat over standaardisatie van internetprotocollen. In de documentatie staan bijvoorbeeld eisen over de maximale cache-tijd, minimale eisen voor servers en de maximale grootte van een REP-bestand. In de standaard wordt niet alleen gesproken over robots.txt, maar ook over overdrachtsprotocollen zoals FTP en CoAP.

Door Tijs Hofmans

Redacteur privacy & security

02-07-2019 • 09:51

45 Linkedin Google+

Reacties (45)

Wijzig sortering
"Google heeft zijn robots.txt-protocol"

Alhoewel ik besef dat tech god Google meent alles uitgevonden te hebben is het niet Google's protocol. Een Nederlander, Martijn Koster, staat aan de oorsprong van het protocol, in 1994. Het werd daarna een semi-standaard in gebruik door search engines ver voordat Google uberhaupt bestond.
Is niet Google maar Tweakers die dat schrijft. Het gaat ook helemaal niet om het protocol maar om Google’s implementatie van de parser.

Dit staat in de repo:

The repository contains Google's robots.txt parser and matcher as a C++ library (compliant to C++11).

About the library

The Robots Exclusion Protocol (REP) is a standard that enables website owners to control which URLs may be accessed by automated clients (i.e. crawlers) through a simple text file with a specific syntax. It's one of the basic building blocks of the internet as we know it and what allows search engines to operate.

Because the REP was only a de-facto standard for the past 25 years, different implementers implement parsing of robots.txt slightly differently, leading to confusion. This project aims to fix that by releasing the parser that Google uses.

[Reactie gewijzigd door BitProcessor op 2 juli 2019 10:15]

@Tweakers.net Wanneer krijgen we eens + en - voor de artikelen zelf?
De comments bezitten regelmatig betere kwaliteit informatie dan de artikelen zelf.
@Tweakers.net Wanneer krijgen we eens + en - voor de artikelen zelf?
De comments bezitten regelmatig betere kwaliteit informatie dan de artikelen zelf.
Dat comments regelmatig betere kwaliteit hebben zegt dus al wat over de kwaliteit van tweakers. Ook bij tweakers gaat het om geld, kliks, dus koppen die kliks genereren. Inhoud is snel gemaakt, soms wel eens wat dieper, vaak gewoon copy paste artikel. Zie vaak artikel aangepast na comments.

Tja kwaliteit van tweakers is helaas niet meer wat het ooit geweest is.
Doelgroep is veranderd; van nerd specialist exclusief naar Website van het jaar, radio en advertenties; bereik is groter geworden, dus de content veranderd mee.

Logisch, maar de build en .geek maken dat beetje goed
Maar dit gaat toch wel erg specifiek over hun eigen werkgebied. Dit is alsof zou een automagazine dat uitgegeven wordt door een autobouwer in een artikel over motoren vergeet te vermelden wat van een bepaald type motor de cilinderinhoud is.

Tweakers is een plek dat over technologie gaat, gemaakt met die technologie. Dit gaat over de technologie waarmee Tweakers zelf gemaakt wordt. Letterlijk en zonder meer gaat het er over.

En dan nog zijn haar journalisten te lui om daarover zelfs maar een klein beetje opzoekwerk te doen?

Dat is dan gewoon low quality junk.

Als ik naar de Mc Donalds junkfood wil consumeren, dan ga ik wel naar daar. Hier op Tweakers consumeert de gebruiker graag hogere kwaliteits onderzoeksjournalistiek wanneer het over de technologie zelf gaat. Net zoals hoe wanneer ik in een Michelinsterrenrestaurant ook geen Big Mac op mijn bord wil zien gedrapt worden. Ook niet met een klodder saus erover. Dat maakt het niet beter.
Omdat Tweakers inmiddels een nieuws-dozenschuiver is verworden, maar de community nog wel de verdieping zoekt.
Uit dezelfde repository van Google:

This document standardizes and extends the "Robots Exclusion
Protocol" <http://www.robotstxt.org/> method originally defined by
Martijn Koster in 1996 for service owners to control how content
served by their services may be accessed, if at all, by automatic
clients known as crawlers.
In dat geval gaat het dus inderdaad om Google "zijn" protocol, omdat het niet meer om het originele robots.txt gaat.
Kwestie van begrijpend lezen lijkt me. Als ze zouden doen alsof ze het uitgevonden hadden dan had er "het robots.txt protocol" gestaan. Nu staat er "zijn" en dat is logisch want de functionaliteit richt zich nu ook specifiek op de samenwerking met de Googlebot crawler.

De blogpost begint notabene met: For 25 years, the Robots Exclusion Protocol (REP) was only a de-facto standard. In de link staat de naam Martijn Koster letterlijk bovenaan.
Het is inderdaad een kwestie van begrijpend lezen...van de redactie, die het bronartikel incorrect vertaald heeft.
Hun robots.txt parser
Ze releasen hun parser om het protocol te kunnen standariseren.
Dan kan dit nog steeds toch Google's versie zijn van het protocol? Dit staat toch letterlijk dan ook in de tekst? Wel een leuk feitje trouwens! :)
De tekst is aangepast, er stond eerst letterlijk dat het Google's protocol was.
En dat is precies de informatie die Google zelf ook geeft, wat je had kunnen zien als je de moeite had genomen om de publicatie van Google zelf door te nemen.

Ik besef dat het altijd lekker is om Google te bashen, maar hou er rekening mee dat het soms .... sóms niet (geheel) terecht is.

[Reactie gewijzigd door gday op 2 juli 2019 10:47]

Ik ging er vanuit dat het de werk van de redactie is om een bron te checken en correct te vertalen.
Niet vergeten dat robots.txt 25jaar is geworden! :o _/-\o_
https://www.greenhills.co.uk/posts/robotstxt-25/
Misschien ook handig voor ons techneuten dat het artikel verwijst naar de Draft RFC op IETF. Veel web-mensen vinden misschien vaak dat ze het IETF kunnen negeren. Maar de wel serieuze mensen zien dat nog altijd als de plek om Internet standaarden met elkaar af te spreken.

Maar blijkbaar heeft Google dat door, want ze lijken betrokken bij deze (Draft) RFC. Zie onderaan.
Ik vind het een prima ontwikkeling, maar vraag mij of bijvoorbeeld de spam-bots zich eraan gaan houden.
maar vraag mij of bijvoorbeeld de spam-bots zich eraan gaan houden.
Natuurlijk niet. Robots.txt is daar ook niet voor bedoeld.

Robots.txt is om de samenwerking tussen zoekmachines & websites te verbeteren, waarbij je als webmaster je voorkeuren aangeeft. Zo kan je bijv. als voorkeur hebben dat je admin-login-pagina niet per ongeluk in de zoekresultaten verschijnt. Ook kan je "verzoeken" om gewoon je hele site niet te laten verschijnen in zoekmachines, wat we wel eens gebruiken voor interne tools.

Natuurlijk is het niet-verschijnen-in-zoekmachines geen vervanger voor een login + beveiliging, maar het voorkomt wel dat gebruikers bij plekken terecht komen die niet relevant zijn voor hun.

[Reactie gewijzigd door Gamebuster op 2 juli 2019 10:01]

Spambots hielden zich er sowieso al niet aan. Robots.txt is al langer een "standaard", niks houdt echter een persoon tegen om het bestand volledig te negeren en alsnog alles te indexeren. Of sterker nog: iemand kan juist naar de robots.txt kijken om te zien wat er "verboden" is om te indexeren en daar juist verder in duiken (wat ook vaak genoeg wordt gedaan bij pentesting).

[Reactie gewijzigd door stuiterveer op 2 juli 2019 09:59]

Maar daar gebruik je dan een spider trap voor, toch?
Natuurlijk niet. Maar dat is ook niet het doel ervan.
Het was al een de facto standaard en weinig voor interpretatie vatbaar. Er mag best een "echte" standaard van gemaakt worden maar dat gaat niet veel aan de situatie veranderen.

Het grootste manko aan de standaard blijft hiermee helaas overeind: het toestaan van 'user-agent' matchers in de standaard. Slechte crawlers zullen zich er toch niet aan houden dus en je hebt altijd mensen die denken dat Google de enige valide spider is en dus al gauw regels a la
User-agent: googlebot
Allow: /

User-agent: *
Disallow: /
gaan schrijven. Het whitelisten / blacklisten van URLs is zeker nuttig, maar user-agent matching is eigenlijk alleen maar concurrentiebelemmering.
Als website eigenaar mag je toch zelf over je content bepalen? Je kiest zelf dan ook of je je expliciet bij een zoekmachine wil aanmelden of niet. Als ik niet wil dat een bepaalde (valide) zoekmachine mijn site indexeert is dat aan mij om te bepalen.

Dat de functie er in zit is dus niks mis mee.
tja en als crawler mag je zelf beslissen of je wel of niet die robots.txt negeert..
Ook weer niet helemaal. Niet altijd zonder gevolgen in ieder geval. Er zijn diverse service providers die crawlers blacklisten op basis van of ze robots.txt gehoorzamen of niet. Doe je dat niet dan krijg je een IP-blokkade.
Als het een bewuste keuze is, ja zeker. Je ziet in het wild echt vaak constructies zoals het voorbeeld dat ik gaf, en dat is echt niet omdat ze dit precies als zodanig bedoelen. Na contact met beheerders kreeg ik ook vaak het antwoord dat ze zich niet realiseerden dat er andere zoekmachines waren die zo buitengesloten werden.

Mijn punt is dat het concurrentiebelemmerend is omdat er twee kanten bij het verhaal betrokken zijn. De webmaster die wil dat zijn site gevonden wordt en de bezoeker die de website wil vinden. Als veel websites alleen door Google geïndexeerd mogen worden volgens de robots.txt dan kan je als concurrerende zoekmachine je gebruikers nooit de resultaten geven die ze verwachten.
Mjah als je liever niet wilt dat er iets gecrawled wordt, kun je er maar beter access control op los laten dan te hopen dat (alle) crawlers zich aan een robots.txt houden.
Access control is een andere use-case dan doorzoekbaarheid. Je wil helemaal niet allerlei vuile trucks moeten toepassen om te proberen detecteren of iets een web-crawler is of niet. Zowel jij als website beheerder als de web-crawler hebben een belang in goede doorzoekbaarheid.

M.a.w. maak afspraken. Dat is waarvoor het IETF en iets als de Robots.txt standaard dient.

Dingen trachten te 'verbieden' of 'onbeschikbaar te maken met trucks' en zo verder zijn eigenlijk slechte en slechte tijdelijke maatregels. Er is niets mis met afspraken te maken. Mensen doen dat vaak. Afspraken maken is slimmer dan 'slimme' trucks te bedenken (die de boel breken). De web wereld heeft een lange geschiedenis van hun eigen plek in de wereld van technologie onnozel slecht vol met zulke dwaze trucks te dumpen.

Het zou bv. goed zijn voor de wereld van de website-beheerders om héél strict de Do-Not-Track te gaan respecteren. Zoals het goed zou zijn dit door harde en stricte wetgeving verplicht te maken. Of anders volgen er zware boetes en sancties, en verbannen van IP addressen van web-servers op ALLE internet providers van heel de EU. En dit tot de website wel de Do-Not-Track respecteert. Ik vind dat we ook gerust mogen beginnen met het verplicht maken van web-crawlers om de Robots.txt standaard te respecteren, bij wet en afgedwongen door de rechtbanken.

Afspraken zijn goed. Afspraken zijn niet slecht. Het Internet is volwassen. Afspraken moeten er zijn en moeten afgedwongen worden door de wet. Zo kan de technologie betrouwbaar gebruikt worden door de bevolking. En zo hoeven we ons niet constant bezig te houden met degene die 'slimme trucks' bedenken. Zo hoef jij niet je ganse web-server vol met dwaze access controls in te stellen die eigenlijk niet reflecteren wat jij als content-provider wil voor de niet-robot bezoekers.
Afspreken zijn zeker goed en nodig, maar realiseer je ook dat er genoeg mensen zijn die zich bewust niet aan die afspraken willen houden. Niet alleen uit gemakzucht, maar omdat ze publieke content willen stelen.
En dat is waarom er rechtspraak is die zich aan de moderne tijd zal moeten aanpassen. Uiteindelijk doet de rechtspraak dat altijd wel. Maar helaas is ze zoals altijd reactief en dus per definitie steeds te laat. Maar uitstel hoeft geen afstel te zijn.

Wat ik wel vind is dat deze rechtspraak om haar op de tanden te hebben over de gehele EU moet gelden, en dat sancties steeds over de gehele EU zone moeten van toepassing zijn. M.a.w. als een website beheerder echt hardnekkig vindt dat hij het varken moet blijven uithangen en de wet niet hoeft te respecteren: dan verbannen we zijn IP adres bij alle Internet Providers van de ganse EU zone en bij ernstige inbreuken dan pakken we hem op om het even waar in de ganse EU waar hij één voet op bodem zet. Meteen bij de douane. Oppakken, gevangenis in, voor de rechtbank, straf uitzitten én zijn IP adres verbannen. Hoe groot en belangrijk zijn bedrijf ook is.

Het zal rap gedaan zijn met het varken uit te hangen.
Helemaal mee eens. Maar het probleem is dat rechtspraak achter de feiten aanloopt en schade al gedaan kan zijn. Rechtspraak kan natuurlijk ook preventief werken, maar als de eigenaar niet te achterhalen is, of deze zich buiten de EU bevindt, gaat dat erg lastig worden. Iets dat beiden vaak voor kan komen.
Rechtspraak is een onderdeel van layered security, om je website effectief te beschermen zal je ook andere methodes moeten implementeren.
Maar het is ook een kat-en-muis spel, heb je geen last van muizen, dan is het preventief nemen van een kat (geadvanceerde access control) misschien overkill.
Ik doelde helemaal niet op "vuile trucks".
Meer dat als iets openbaar is, het gecrawled gaat worden (het is een regel en afspraak waar niet iedereen zich aan zal houden). Ergo als je niet wilt dat het gecrawled wordt, zul je moeten zorgen dat het geen publieke informatie is, ergo door het achter access control te stoppen.

Daarnaast lezen niet alleen robots de robots.txt; het geeft aan iedereen een inzicht in het feit dat jij kennelijk sommige informatie niet gecrawled wil hebben om het eender welke reden, wat op zich al interessante informatie kan zijn. Zet bijvb gerust je mongodb in je robots.txt, niemand die het ziet of vindt toch ? :+

[Reactie gewijzigd door gekkie op 2 juli 2019 15:52]

Je verwart opnieuw security met het bekomen van goede doorzoekbaarheid. Jouw mongodb moet waarschijnlijk inderdaad niet publiek beschikbaar zijn. Dat heeft dus niets met robots.txt te maken.

En aangezien het er niets mee te maken heeft, hoort het ook niet echt thuis in een discussie over robots.txt.

Wat betreft dat bepaalde actoren zich niet aan afspraken zullen houden, daar kunnen we rechtspraak voor maken en/of aanpassen. Bijvoorbeeld is er een zoek-engine die zaken die in jouw robots.txt staat indexeert zodat men niet op de entry-pagina terecht komt die jij wenselijk vindt; dan kunnen we dat soort zoek-engines wettelijk vragen zich aan de standaarden van robots.txt te houden.

Dat is echter iets anders dan dat jij security er mee probeert te implementeren. Je monogdb ongewenst publiek maken heeft met weinig of niets anders te maken dan dat je een security-fout hebt geprogrammeerd. Daar kan robots.txt niets aan doen, en daar dient robots.txt niet voor.
Welke rechtspraak ?
Sinds wanneer zijn RFC's wettelijk af te dwingen, dan heb ik nog wel wat te cashen.
Heel veel meer dan een vriendelijk verzoek om niet te crawlen is het niet, waarbij je tevens tegelijk aan de hele wereld kenbaar maakt dat je iets niet gecraweld wilt hebben.

Ik mis tot nu toe nog steeds waarvoor jij denkt dat de robots.txt dan wel nuttig is ?

[Reactie gewijzigd door gekkie op 2 juli 2019 18:22]

Welke rechtspraak ?
Lees jij eigenlijk waarop je reageert? Hierop reageerde je. M'n ongewijzigde reactie staat vlak boven je neus:
Wat betreft dat bepaalde actoren zich niet aan afspraken zullen houden, daar kunnen we rechtspraak voor maken en/of aanpassen.
Er kunnen m.a.w. afspraken, wijzigingen en toevoegingen in de wetgeving van overheden en de EU gemaakt worden (bv. na akkoord binnen de EU) die het verplicht stellen om bepaalde standaarden na te leven voor diensten zoals web-crawlers.
Ik mis tot nu toe nog steeds waarvoor jij denkt dat de robots.txt dan wel nuttig is ?
Ja dat zal wel als je niet leest waarop je reageert. Daar heb ik nu echt wel meer dan voldoende uitleg over gegeven. Anderen hier ook (zie bv. @Gamebuster's eerdere reactie). De RFC waar dit over gaat en waar ik eerder al naar verwees ook, nl. in het introduction segment er van..

[Reactie gewijzigd door freaxje op 2 juli 2019 19:57]

[...]
Lees jij eigenlijk waarop je reageert? Hierop reageerde je. M'n ongewijzigde reactie staat vlak boven je neus:
Aanpassen dus niet, maken lijkt me lastig aangezien dat nog voor geen enkele internet standaard gedaan is (en dit lijkt me dan niet echt de eerst uitverkorene om dat wel te gaan doen).
Er kunnen m.a.w. afspraken, wijzigingen en toevoegingen in de wetgeving van overheden en de EU gemaakt worden (bv. na akkoord binnen de EU) die het verplicht stellen om bepaalde standaarden na te leven voor diensten zoals web-crawlers.
Koffiekan, Theekan, en de Alles kan.
Tot nu toe krijgen we nagenoeg niets rond het internet wettelijk geregeld (en gehandhaafd) en jij denkt dat dat met robots.txt wel gaat gebeuren ?
Ja dat zal wel als je niet leest waarop je reageert. Daar heb ik nu echt wel meer dan voldoende uitleg over gegeven. Anderen hier ook (zie bv. @Gamebuster's eerdere reactie). De RFC waar dit over gaat en waar ik eerder al naar verwees ook, nl. in het introduction segment er van..
Het enige waar van ik zie dat er iets over het nut van robots.txt in die paragraaf zie staan is:
It may be inconvenient for service owners if crawlers visit the entirety of their URI space.
Mjah ik vind dus dat je er betrekkelijk weinig mee op schiet en ben dus benieuwd welke concrete " inconveniences" jij er dan in jouw praktijk mee weet te voorkomen ?
ik zou sowieso niet in je robots.txt onbeveiligde directory's zetten want robots.txt is het eerste bestand waar hackers naar kijken.
hmmm.... heb ik wel gedaan 😱
User-agent: *
Disallow: /
Bij het beschermen van systemen is het gebruikelijk om meerdere lagen van security toe te passen, layered security. Robots.txt kan je zien als de eerste laag, waar de webbeheerder zijn/haar wensen aangeeft. Om data goed te beschermen tegens crawlers, moet je inderdaad ook andere methodes toepassen, maar de één sluit de ander niet uit, ze vullen elkaar vaak juist aan.
Het voordeel van robots.txt is dat het gemakkelijk op te zetten is voor een websitebeheerder, een nadeel is dat het meer een soort van etiquette regels zijn.
Efficientere methodes met access control zijn echter zeer lastig te implementeren als het gaat om het afschermen van publieke resources van crawlers. Vaak gaat het om een afweging tussen security en usabiltiy, bijvoorbeeld met captcha testen en andere heurstieke methodes.
Wel ironisch dat het hele bedrijfsleven en opleidingen hameren op documenteren voordat je met technische uitwerkingen aan de slag gaat, en vervolgens gebruikt Google een technische uitwerking i.p.v. documentatie om een standaard op te zetten.

[Reactie gewijzigd door Engineer op 2 juli 2019 15:07]

Op dit item kan niet meer gereageerd worden.


OnePlus 7 Pro (8GB intern) Nintendo Switch Lite LG OLED C9 Google Pixel 3a XL FIFA 19 Samsung Galaxy S10 Sony PlayStation 5 Smartphones

Tweakers vormt samen met Tweakers Elect, Hardware.Info, Autotrack, Nationale Vacaturebank, Intermediair en Independer de Persgroep Online Services B.V.
Alle rechten voorbehouden © 1998 - 2019 Hosting door True