Google bot detecteren

Status
Niet open voor verdere reacties.

bram555

Nieuwe gebruiker
Lid geworden
2 aug 2012
Berichten
4
Hoi hoi,
ik weet niet of dit het juiste forum is. (als dat niet is mijn excuses hiervoor)

ik heb 2 vraagjes
Ik ben bezig met een script dat een zoekrobot kan detecteren en daarvan mij op de hoogte kan stellen via een simpele email.
hij werkt momenteel volledig 100% via een de localhost ip.

waaraan kan ik een zoekrobot herkennen?
en een andere vraag die eigenlijk een beetje erbij valt.

is het wel toegestaan (qua SEO) dat ik deze mag detecteren?

dit is een gedeelte van m`n script waar ik m`n vraagjes over heb:

PHP:
<?php
//gedeelte van het script waar ik m`n vraagjes over heb.
$r=$_SERVER['REMOTE_ADDR'];

//Ik gebruik om te testen de localhost ip omdat ik het op een locale server test...
if (eregi("127.0.0.1", $r)) {
    $robotje = "1";
}
//verder in het script dat ik heb wordt ik op de hoogte gebracht via een emailtje. als het een waarde 1 is.
?>

ik vindt het zelf fijn wanneer een zoekrobot is langs geweest namelijk.

alvast bedankt ;)
 
Googlebot en andere bots zijn (vaak) te herkennen aan de user agent. In PHP kan je deze opvragen via $_SERVER['HTTP_USER_AGENT'].

Je mag ze detecteren. Alleen als je daarvan misbruik maakt door een zoekbot een andere (versie van je) website aan te bieden kunnen ze je straffen door je lager op te nemen in de zoekresultaten.
 
PHP:
[quote="Supersnail, post: 4598835"]Googlebot en andere bots zijn (vaak) te herkennen aan de [url=http://www.useragentstring.com/pages/Googlebot/][u]user agent[/u][/url]. In PHP kan je deze opvragen via $_SERVER['HTTP_USER_AGENT'].

Je mag ze detecteren. Alleen als je daarvan misbruik maakt door een zoekbot een andere (versie van je) website aan te bieden kunnen ze je straffen door je lager op te nemen in de zoekresultaten.[/QUOTE]

ah... dus zo kan je ze dus herkennen, ik dacht altijd aan het IP adres.

het script dat ik gemaakt heb is puur voor email notificatie voor als er een zoekbot is geweest. (een soort deurbel zeg ik maar :d)
dit heb ik ervan gebakken (voor de liefhebbers) :)
[PHP]
<?
//we willen natuurlijk weten wanneer er een zoekrobot eventjes langskomt
//is wel zo prettig

$u_agent=$_SERVER['HTTP_USER_AGENT']; 
//controleren welke bot het is.

//is het google?
if (stripos($u_agent, "Googlebot")) {
    $botnaam = "Google";
}
//is het yahoo!?
if (stripos($u_agent, "slurp")) {
    $botnaam = "Yahoo!";
}
//ah we hebben dus een zoekrobotje op de site!
if (isset($botnaam))
{
$to = "mijneigen@email.ext";
$from = "noreply@adres.ext";
$subject = $botnaam." heeft de site bezocht";
$message = "Hallo webmaster,\r\n
De zoekrobot van ".$botnaam." is zojuist langsgeweest op de website. \r\n 
Dit is een automatisch bericht, op dit bericht antwoorden is niet nodig.
";
$headers = "From: website systeem<".$from.">";
//we stellen de webmaster op de hoogte
mail($to,$subject,$message,$headers);
//als alles goed is heeft de webmaster een email gekregen over het bezoek
}
?>
bedankt voor je hulp. :thumb:
(ik heb het script inmiddels draaien en nu wachten op zoekrobot, ik krijg vanzelf een emailtje zoals je ziet)
 
Laatst bewerkt:
Op basis van het IP adres kan je ze ook herkennen, maar (zeker grote) zoekmachines hebben zoveel bots op zoveel IP adressen dat dat ondoenlijk is.

Waarom gebruik je eigenlijk eregi in je script?
This function has been DEPRECATED as of PHP 5.3.0. Relying on this feature is highly discouraged.

Bovendien, als je geen reguliere expressie gebruikt maar een string, kan je beter stripos gebruiken.
 
bedankt voor je advies, die zal ik in m`n script aanpassen.
Zo te zien heeft stripos de zelfte werking als eregi alleen net even anders.
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan