Seite 1 von 1

Aktuelle Adsense Verdienste on-the-fly auslesen?

Verfasst: 28.11.2005, 12:39
von Airport1
Ein Kollege moechte die Google Adsense Verdienste auslesen ohne sich direkt in Google Adsense einloggen zu muessen, ihn interessiert nur die nackte Zahl (wohl weil er BWL studiert..?). Kommt man direkt an diese dran, gibts evtl. ne API, oder muss man ein Browser Login + bis zur Seite durchklicken + Wert REGEXPen simulieren?

Verfasst:
von

Aktuelle Adsense Verdienste on-the-fly auslesen?

Verfasst: 28.11.2005, 13:07
von DikeMike
hmm schreib doch mal eine e mail an den programmierer von sys sense ... der weiß es

Aktuelle Adsense Verdienste on-the-fly auslesen?

Verfasst: 28.11.2005, 14:22
von ArturO
Ich hab ein Firefox plugin. Man kann die Einnahmen in der Rechten unteren Ecke sehen. Ich muss dafür nix klicken. Wenn er in seinem Studium oft surft, dann könnte er es in erwägung ziehen dieses plugin zu nutzen. Man kann die Anzeige auf die reine Einaheme des heutigen tages beschränken jedoch nicht die Gesamteinnahmen.

Aktuelle Adsense Verdienste on-the-fly auslesen?

Verfasst: 28.11.2005, 14:35
von viggen
yup die firefox extension funktioniert einwandfrei
https://addons.mozilla.org/extensions/m ... php?id=500

alternativ gäbe es auch das google desktop plugin
https://desktop.google.com/ runterladen installieren und dann
https://desktop.google.com/plugins/i/adsensestatus.html isntallieren, funktioniert auch einwandfrei...

mfg
viggen

Aktuelle Adsense Verdienste on-the-fly auslesen?

Verfasst: 28.11.2005, 16:59
von D@ve
Gibt es da auch eine API für PHP die man in die eigene Webseite integrieren kann?

Gruß, Dave

Aktuelle Adsense Verdienste on-the-fly auslesen?

Verfasst: 28.11.2005, 21:30
von Keyser Soze
Ich habe zwar keine "API", aber einen Dirty Hack für PHP. Dazu muss allerdings Curl auf dem Webserver installiert sein. Folgende Codezeilen simulieren einen kompletten Login im Adsense-System und parsen den USD-Betrag heraus (1x gestern + 1x Monat gesamt).

Die folgenden Codezeilen müssen nicht unbedingt so funktionieren, ich habe sie aus einem größeren Skript rauskopiert, bei dem ich noch diverse anderen Konten abfrage für mich selbst.
Irgendwo wird auch der Monatsbetrag in EUR umgerechnet. Das ist noch mit 1,24 angesetzt, müsst ihr also immer an den aktuellen Umrechnungskurs anpassen (oder auskommentieren).

Das Skript ist komplett von mir geschrieben, ich stelle es euch kostenlos zur Verfügung.

Code: Alles auswählen

<?php 
	$google_login = 'dein@login.de';
	$pwd = 'deinpasswort';
	$user_agent = "Mozilla/4.0 &#40;compatible; MSIE 5.01; Windows NT 5.0&#41;";

	// init curl connection
	$total_cash = 0;
	$ch = curl_init&#40;&#41;;
	echo htmlHeader&#40;&#41;;


	// GOOGLE
	function google&#40;$email&#41; &#123;
		global $pwd, $google_url, $google_params, $total_cash, $i;
		echo '<tr><td><font color="blue">G</font><font color="red">o</font><font color="#cc9900">o</font><font color="blue">g</font><font color="green">l</font><font color="red">e</font> ' . &#40;$i + 1&#41; . '</td><td align="right">';
	
		$google_url = 'https&#58;//www.google.com/adsense/login.do';
		$google_params = 'username=' . $email . '&password=' . $pwd;
		$data = getCurlData&#40;$google_url, $google_params&#41;;
		$google_amount_today = parseGoogleCash&#40;$data&#41;;
	
		// Google USD-Betrag von GESTERN ermitteln&#58;
		$google_url = 'https&#58;//www.google.com/adsense/report/aggregate';
		$google_params = 'product=afc&dateRange.dateRangeType=simple&dateRange.simpleDate=yesterday&dateRange.customDate.start.day=1&dateRange.customDate.start.month=6&dateRange.customDate.start.year=2005&dateRange.customDate.end.day=1&dateRange.customDate.end.month=6&dateRange.customDate.end.year=2005&unitPref=page&reportType=property&null=Bericht+anzeigen';
		$data = getCurlData&#40;$google_url, $google_params&#41;;
		$google_amount_yesterday = parseGoogleCash&#40;$data&#41;;
	
		// Google USD-Betrag aktueller MONAT ermitteln&#58;
		$google_params = 'https&#58;//www.google.com/adsense/report/aggregate?product=afc&dateRange.dateRangeType=simple&dateRange.simpleDate=thismonth&dateRange.customDate.start.day=1&dateRange.customDate.start.month=6&dateRange.customDate.start.year=2005&dateRange.customDate.end.day=1&dateRange.customDate.end.month=6&dateRange.customDate.end.year=2005&groupByPref=date&unitPref=page&reportType=property&null=Bericht+anzeigen';
		$data = getCurlData&#40;$google_url, $google_params&#41;;
		$google_amount_month = round&#40;&#40;parseGoogleCash&#40;$data&#41; / 1.24&#41;, 2&#41;;
		$total_cash += $google_amount_month;
	
		echo '' . $google_amount_yesterday . ' ' . $google_amount_month;
		echo '</td></tr>';
		$i++;
	&#125;
	google&#40;$google_login&#41;;
	// GOOGLE end


	function parseGoogleCash&#40;$data&#41; &#123;
		preg_match_all&#40;"|&#40;.*&#41;<tr class=\"totals\">&#40;.*&#41;USD&#40;.*&#41;<td style=\"text-align&#58;right\" nowrap class=\"\" valign=\"top\">   USD &#40;.*&#41;   </td>   </tr>     <tr class=\"averages\">|U",$data,$result&#41;;
		$amount = $result&#91;4&#93;&#91;0&#93;;
		if &#40;$amount != ""&#41; &#123;
			return $amount;
		&#125; else &#123;
			return "0,00";
		&#125;
	&#125;

	// close curl connection
	curl_close&#40;$ch&#41;;
	echo htmlFooter&#40;&#41;;




	// ---- FUNCTIONS ----

	function getCurlData&#40;$url, $params, $post=1&#41; &#123;
		global $ch, $user_agent;
		curl_setopt&#40;$ch, CURLOPT_POST,$post&#41;;
		curl_setopt&#40;$ch, CURLOPT_POSTFIELDS, $params&#41;;
		curl_setopt&#40;$ch, CURLOPT_URL,$url&#41;;
		curl_setopt&#40;$ch, CURLOPT_SSL_VERIFYHOST,  2&#41;;
		curl_setopt&#40;$ch, CURLOPT_USERAGENT, $user_agent&#41;;
		curl_setopt&#40;$ch, CURLOPT_RETURNTRANSFER,1&#41;;
//		curl_setopt&#40;$ch, CURLOPT_HEADER, 1&#41;;
		curl_setopt&#40;$ch, CURLOPT_COOKIEJAR, '/tmp/'&#41;;
		curl_setopt&#40;$ch, CURLOPT_FOLLOWLOCATION, 1&#41;;
		curl_setopt&#40;$ch, CURLOPT_TIMEOUT, 120&#41;;
		curl_setopt&#40;$ch, CURLOPT_SSL_VERIFYPEER, FALSE&#41;;  // this line makes it work under https
		$data=curl_exec&#40;$ch&#41;;
		return $data;
	&#125;

	function htmlHeader&#40;&#41; &#123;
		return '<html><head><title>Kontostand</title></head><body><table>';

	&#125;

	function htmlFooter&#40;&#41; &#123;
		return '</table></body></html>';
	&#125;


	function moneyFormat&#40;$amount&#41; &#123;
		if &#40;$amount != ""&#41; &#123;
			return round&#40;$amount,2&#41;;
		&#125; else &#123;
			return "0,00";
		&#125;
	&#125;


?>

Aktuelle Adsense Verdienste on-the-fly auslesen?

Verfasst: 29.11.2005, 00:13
von D@ve
Ja sowas in der Art nehme ich auch (nur als Tipp: Das Auslesen der CSV-Daten ist einfacher und bringt mehr infos)

Aber ich hatte gehofft, dass es da noch irgendwas "offizielles" gibt...

Gruß, Dave

Aktuelle Adsense Verdienste on-the-fly auslesen?

Verfasst: 29.11.2005, 09:07
von Keyser Soze
Das Skript war schon entstanden, bevor es den CSV-Export gab. Und bisher war ich zu faul, das umzuschreiben ;)