Recevoir un mail avec son CA AdSense

WRInaute discret
J'aimerais faire un script qui m'envoie tous les jours sur mon mail le CA Adsense de la journée passée et le total du mois en cours.

Quelqu'un a déjà fait et pourrait-avoir la gentillesse de nous faire partager son script PHP ?

Merci
 
WRInaute discret
Ouais ce serait pas mal mais je ne pense pas que c'est ça qui va m'empêcher de me connecter sur adsense :lol:

Sinon dsl je ne peux pas trop t'aider je suis plutot débutant en php et je ne sais pas trop comment choper les CSV :/
 
WRInaute discret
en fait, ca me parait plus compliqué que parser un CSV car faut faire un script qui se loggue sur Adsense...

Y'a personne qui a fait ce genre de code ?
 
WRInaute accro
Hé hé, j'ai une solution avec Firefox, il y a un plugin qui vous donne vos stats Adsense et vous pouvez choisir l'affichage par jour, par mois... :
Adsense Notifier 0.4
 
WRInaute discret
le plugin c'est juste une alternative au site web adsense, quels sont les avantages ?

j'ai vraiment besoin de recevoir un mail...
 
WRInaute occasionnel
Voila un truc qui pourrait t'aider...

Code:
<?
//***************** GOOGLE ********************
$username="XXXX"; 
$password="YYYY"; 
$cookie="moncookie"; 
$destination="/adsense/reports-aggregate?product=afc&dateRange.dateRangeType=simple&dateRange.simpleDate=today"; 

$postdata="destination=".urlencode($destination)."&username=".urlencode($username)."&password=".urlencode($password)."&null=Login"; 


$ch = curl_init("https://www.google.com/adsense/login.do"); 
curl_setopt ($ch, CURLOPT_URL,"https://www.google.com/adsense/login.do"); 
curl_setopt ($ch, CURLOPT_SSL_VERIFYPEER, FALSE); 
curl_setopt ($ch, CURLOPT_USERAGENT, "Mozilla/4.0 (compatible; MSIE 5.01; Windows NT 5.0)"); 
curl_setopt ($ch, CURLOPT_TIMEOUT, 20); 
curl_setopt ($ch, CURLOPT_FOLLOWLOCATION,1); 
curl_setopt ($ch, CURLOPT_RETURNTRANSFER, 1); 
curl_setopt ($ch, CURLOPT_COOKIEJAR, $cookie); 
curl_setopt ($ch, CURLOPT_COOKIEFILE, $cookie); 
curl_setopt ($ch, CURLOPT_POSTFIELDS, $postdata); 
curl_setopt ($ch, CURLOPT_POST, 1); 

$result = curl_exec ($ch); 

curl_close($ch); 

preg_match('/\<tr class\="totals"\>.*\<td.*\>.*\<\/td\>.*\<td.*\>(.*)\<\/td\>.*\<td.*\>(.*)\<\/td\>.*\<td.*\>(.*)\<\/td\>.*\<td.*\>(.*)\<\/td\>.*\<td.*\>(.*)\<\/td\>.*<\/tr>/simU', $result, $array); 
foreach ($array as $key => $value) {$array[$key] = trim($value, "\x22\x27\n\r ");}
list($full,$Impressions,$Clicks,$Rate,$CPM,$Earnings) = $array; 

putenv('TZ=US/Pacific'); 
$output="Stats du " . date("d-m-Y H:i:s")." \nImpressions : ".$Impressions." \nClics : ".$Clicks." \nTaux de clics : ".$Rate." \nCPM : ".$CPM." \nGains du jour : ".$Earnings."\r\n"; 

mail("email@example.com", "Rapport Adsense du " . date("d/m/Y", time()), $output, "From: moi@example.com"); 


//***************** GOOGLE ********************
?>

Amuse toi bien (change juste le login, le mot de passe, et l'email de destination...)

Stéphane
 
WRInaute discret
STFProd, you're a PHP killer !!

franchement, ton code sent plus que bon ;)

merci merci

et en plus c'est en https !

la classe ce STFProd
 
WRInaute discret
juste une question, faut changer le cookie ??? il sert à quoi ?

c'est pour la connexion j'imagine mais bon
 
WRInaute occasionnel
le fichier de cookie va se créer automatiquement, il sert à éviter de se faire déconnecter des stats, et de suivre les redirections sans problème...

You're welcome ! ;)
 
WRInaute discret
ah ok super, il est crée où ce fichier de cookie ?

en passant c'est pas plus simple d'utiliser la requete CSV plutot que de parser la page HTML ?
 
WRInaute occasionnel
à vrai dire, j'ai jamais cherché à comprendre le CSV qu'ils donnent, il est plus rapide de parser le HTML à mon avis...

le cookie est créé à la racine de ton script... tu peux le mettre ailleurs si tu veux, mais bon, ce n'est pas bien grave... ;)
 
WRInaute occasionnel
euh..... je doute que Google enregistre la moindre info primordiale la dedans, mais tu peux l'effacer à la fin du script si t'as vraiment peur ! :)

Maintenant, il faut pas etre parano non plus hein !
 
WRInaute discret
ben je me disais que si y'a un id de session dans le cookie et que quelqu'un lit le cookie à priori il peut récupérer la session, non ?
 
WRInaute occasionnel
Peut-être, mais comment veux-tu qu'on récupère ça ???

je te rappelle que tu vas mettre ton login et mot de passe en clair dans un fichier php !!! :)

change le nom du cookie si tu veux :
Code:
$cookie = "junior56onthebeach9823_u.exe";
Je doute qu'on s'amusera à trouver et à ouvrir un tel fichier ......
 
WRInaute discret
tu as raison, c clair !
g mis un nom impossible à deviner pour le cookie + j'ai rajouté
unlink($cookie) à la fin pour effacer le fichier...
ca devrait suffire ;)

sinon, curieusement g pas les memes stats entre le retour du script et l'interface en ligne, bizarre non ?

le script à l'air d'être "en avance", une idée ?
 
WRInaute discret
g l'impression que ca depend entre interface US et interface france pour le site adsense...

ou alors que tous les serveurs adsense ne sont pas synchro ???
 
WRInaute discret
Je pense que tous les serveurs ne sont pas synchro, j'avais eu une différence entre mes stats génrés à partir du addon firefox et ceux que je suis allé voir directement sur le site.
 
WRInaute discret
j'ai l'impression que tu as raison prosense car dès fois je me loggue et me deloggue et recommence de suite et g pas les memes resultats...
 
WRInaute occasionnel
et pourquoi tu veux ça, pour cliquer sur tes propre pub et se loger avec l'ip de ton hebergeur comme ça ils te localiserons pas?
c ça?
 
WRInaute discret
depuis aujourd'hui, j'ai une erreur lors de l'execution script

Warning: unlink(moncookie): No such file or directory in .... x.php

celui ci marchait a bien marché depuis que je l'ai installé, et puis maintenant j'ai cette erreur sans avoir fait de modif

Avez vous une idée ?

merci
 
WRInaute occasionnel
supprime la ligne, ca ne sert à rien...

ou alors fait un:
ca supprimera le contenu...
Code:
$fp=fopen("cookiefile","w"); fclose($fp);
vérifie qu'il y ait le fichier moncookie à la racine...
 
WRInaute passionné
Bonjour

Le script marche pas chez moi, peut etre qu'il date un peu, mais je voulais justement l'utiliser pour consulter mes gains sur mon telephone mobile avec impossible de me loger.. aussi j'aimerai bien avoir les gains de la veille si quelqu'un peu m'aider.. merci
 
Discussions similaires
Haut