Google Analytics API mit PHP – Teil 1: Authentifizierung

So können Sie die Google Analytics Daten per PHP mit der Data Export API abfragen.

Vor wenigen Tagen hat Google nach langer Zeit endlich eine Schnittstelle für den Web-Analytics-Dienst Google Analytics zur Verfügung gestellt. Mit der Data Export API können Sie die gespeicherten Daten abfragen.

Google stellt dafür bereits vorgefertigte Clients für Java und JavaScript zur Verfügung. Bisher gibt es jedoch keine Bibliothek für Abfragen mit PHP.

Im ersten Teil der Serie möchte ich die Authentifizierung bei Google vorstellen. Diese ist notwendig um die Account-Daten und Statistiken abzufragen.

Für die Authentifizierung ist es notwendig die Daten an Google per HTTP-Post zu übertragen. Es gibt unterschiedliche Möglichkeiten dies umzusetzen. Ich habe mich für das PEAR-Paket HTTP_Request entschieden. Sie sollten es Ihrer PEAR-Installation hinzufügen. Im Anschluss können Sie es folgendermaßen in Ihrem Script nutzen.

require_once('HTTP/Request.php');

Um sich nun bei Google zu authentifizieren, müssen Sie den Nutzernamen und Ihr Google Analytics Passwort wissen. Zusammen mit einem festgelegten Service- und Account-Typ müssen Sie alle Parameter per POST an Google senden. Folgender Code übernimmt dies:

$AUTH_URL 	= 'https://www.google.com/accounts/ClientLogin';

$email 		= 'ihremail@domain.com';
$password 	= 'ihrpasswort'

// neues Request-Objekt erstellen
$req = new HTTP_Request($AUTH_URL);
$req->setMethod(HTTP_REQUEST_METHOD_POST);

// Parameter hinzufügen
$req->addPostData('Email',        $email);
$req->addPostData('Passwd',       $password);

$req->addPostData('accountType',  'GOOGLE');
$req->addPostData('service',      'analytics');  
$req->addPostData('source',       'meshed.de-test-0.1');

// Request senden
$response = $req->sendRequest();

Wenn Sie nun der Request absendet haben und Sie sich erfolgreich authentifizieren konnten, erhalten Sie als Response eine Nachricht die aus drei Zeilen besteht. Darin ist auch das sogenannte Auth-Token enthalten. Sie benötigen dies um alle weiteren Abfragen an den Account durchzuführen.

Der folgende Code zeigt, wie Sie das Auth-Token aus dem Response-Body auslesen können.

$authArray = array();

// Zeilen des Responses in Array speichern    
$lines = explode("n",$req->getResponseBody());

// Zeilen durchgehen
foreach ($lines as $line) {
  
  // Schlüssel vom Wert trennen
  $keyValue = explode("=", $line);

  $key = $keyValue[0];
  $value = $keyValue[1];

  // Daten in Array schreiben
  $authArray[$key] = $value;   
    
}

// Auth-Token ermitteln
$auth = $authArray['Auth'];

In der Variable $auth ist nun der Auth-Token gespeichert.

In dem nächsten Teil der Serie erkläre ich Ihnen, wie Sie Ihre Google-Analytics Kontodaten abfragen können.

Abonnieren Sie meinen News-Feed, um die folgenden Artikel zur Google Analytics API nicht zu verpassen.


0 0 0


Diskussion

avatar placeholder
26. Apr 2009 von Google Analytics API mit PHP ansprechen | Der PHP Hacker

[…] die ersten Anwendungen und Beispiele auf. Tobias hat nun mit einer Reihe begonnen, in der er die Google Analytics API Nutzung mit PHP erklärt – auf Deutsch. Für Anfänger und Profis, die schnelle Code-Beispiele brauchen […]

avatar placeholder
27. Apr 2009 von Google Analytics API mit PHP – Teil 2: Account-Daten abrufen

[…] wie Sie Ihre Google Analytics Konto-Daten abrufen können, lesen Sie bitte den ersten Teil Authentifizierung dieser Serie. Im folgenden Beispiel wird das Auth-Token $auth aus dem ersten Artikel […]

avatar placeholder
29. Apr 2009 von Neues aus der Google Welt | Hodenkaiser

[…] angenommen und direkt 2 Code beispiele zum Thema veröffentlicht. Zum  einen geht es um die Authentifizierung und wie man seine Account Daten abrufen […]

avatar placeholder
9. Mai 2009 von Anleitungen und Klassen: Google Analytics API | StarSt0rm Design

[…] wie die Authentifizierung bei Google funktioniert und wie man auf die Daten zugreifen kann. Google Analytics API mit PHP – Teil 1: Authentifizierung Google Analytics API mit PHP – Teil 2: Account-Daten […]

avatar placeholder
29. Mai 2009 von sumpfbiber

Inspirierendes Stück Code! Gibt es alternativ zu cUrl und dem Pear HTTP Request noch weitere Möglichkeiten sich bei Google zu authentifizieren?

avatar placeholder
28. Feb 2010 von Australien-Blog » Blog Archive » Google Analytics API mit PHP und Zend auslesen

[…] (basierend auf einem Skript von Tobias Redman) […]

Mitdiskutieren

*