IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)

Vous êtes nouveau sur Developpez.com ? Créez votre compte ou connectez-vous afin de pouvoir participer !

Vous devez avoir un compte Developpez.com et être connecté pour pouvoir participer aux discussions.

Vous n'avez pas encore de compte Developpez.com ? Créez-en un en quelques instants, c'est entièrement gratuit !

Si vous disposez déjà d'un compte et qu'il est bien activé, connectez-vous à l'aide du formulaire ci-dessous.

Identifiez-vous
Identifiant
Mot de passe
Mot de passe oublié ?
Créer un compte

L'inscription est gratuite et ne vous prendra que quelques instants !

Je m'inscris !

Google Plus pour PHP : listez votre fil d'actualité personnel sur votre site
. Un code proposé par thomasmds

Le , par thomasmds

0PARTAGES

1  0 
Bonjour,

Je vous propose un nouvel élément à utiliser : Google Plus pour PHP

Ce petit code source va vous permettre de lister sur votre propre site web le contenu de votre fil d'actualité personnel de Google Plus.

Il s'agit bien entendu d'un petit script personnel en attendant une vrai solution plus complète et moins "bidouillée". Mais elle devrait convenir pour le moment.

Vous pouvez voir le résultat sur mon site personnel http://www.thomasmoreira.com

Qu'en pensez-vous ?

Une erreur dans cette actualité ? Signalez-nous-la !

Avatar de Thes32
Expert confirmé https://www.developpez.com
Le 12/08/2011 à 18:18
Citation Envoyé par Doksuri Voir le message
Salut,

ce petit script a l'air fort interessant (je testerai ce w-e)

-> mais est-ce legal ?
Je ne vois rien d'illégal dedans.

Aussi j'ai déjà vu quelques script du genre sur github mais j'aime bien celui ci.
Citation Envoyé par Doksuri Voir le message

-> google ne va-t-il pas proposer (ou propose-t-il deja ?) un genre d'api pour recuperer les infos ?
Pas d'api pour le moment. Il proposera certainement, mais pour l'instant ce sont ce genre de script qui sauve la vie.
1  0 
Avatar de Shikiryu
Membre éclairé https://www.developpez.com
Le 14/08/2011 à 0:43
Code : Sélectionner tout
http://plusfeed.appspot.com/$userId
ça donne un RSS des posts publics de la personne.
Ensuite, parser le RSS avec simpleXML ou Domdocument et c'est finit.
1  0 
Avatar de stealth35
Expert éminent sénior https://www.developpez.com
Le 14/08/2011 à 19:48
ouai pas top dutout de paser du HTML de cette façon, DOMDocument est fait pour et est bien plus simple

Code : Sélectionner tout
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
$id  = "109887903456802277373";
$url = "https://plus.google.com/$id/posts";

$old = libxml_use_internal_errors(true);

$doc = new DOMDocument();
$doc->loadHTMLFile($url);

libxml_clear_errors();
libxml_use_internal_errors($old);

$xpath = new DOMXpath($doc);
$query = $xpath->query('//a[@class="ot-anchor O-F-Q-k"]');

foreach($query as $node)
{
    $text = $node->nodeValue;
    $link = $node->getAttribute('href');
    
    echo "<a href=\"$link\">$text</a><br />"; 
}
en ce qui concerne l'api elle existe déjà même si y'a pas grand chose dedans :
https://code.google.com/apis/explore...plus&_v=v1

pour ce qui est de la légalité, on va plutot dire que le HTML datamining est vraiment très mal vu et y'a de gros risque de blacklistage
1  0 
Avatar de Thes32
Expert confirmé https://www.developpez.com
Le 12/08/2011 à 10:59
oh Cool ! Tu pourrais le faire sous forme d'une fonction/classe ? où l'on pourrait passer des paramètre comme le nom du user, le mot de passe, le nombre d'actus à afficher...

Il est très sympa sinon
0  0 
Avatar de Thes32
Expert confirmé https://www.developpez.com
Le 12/08/2011 à 11:03
et pourquoi pas ajouté une petite touche d'AJAX ?
0  0 
Avatar de Doksuri
Expert confirmé https://www.developpez.com
Le 12/08/2011 à 18:04
Salut,

ce petit script a l'air fort interessant (je testerai ce w-e)

-> mais est-ce legal ?
-> google ne va-t-il pas proposer (ou propose-t-il deja ?) un genre d'api pour recuperer les infos ?
0  0 
Avatar de thomasmds
Membre régulier https://www.developpez.com
Le 12/08/2011 à 18:41
Merci beaucoup, c'est sympa, c'était la première fois que je poster du code ici.

Malheureusement je ne touche pas encore assez à l'AJAX. Mais même en y connaissant le principe j'ai du mal a voir en quoi ça servirait ici.

Si vous avez des idées d'améliorations je les attends.

Pour la fonction, je vais le faire ok, j'avais hésiter, et puis je me suis dit que d'inclure simplement la fonction là où l'on veut suffisait.

Ensuite, pour l'API, je pensais aussi qu'il en existait, ou du moins des fichiers XML comme sur Twitter. Mais je n'ai rien trouvé.

0  0 
Avatar de thomasmds
Membre régulier https://www.developpez.com
Le 13/08/2011 à 0:15
Je l'ai faite en Fonction, mais je ne sais pas comment on fait pour modifier le code que j'ai posté.

Si quelqu'un peut me le dire ça serait sympa. Merci.

Et j'en ai profité pour l'amélioré un tout petit peu, et surtout éliminer les quelques bugs.
0  0 
Avatar de thomasmds
Membre régulier https://www.developpez.com
Le 13/08/2011 à 22:12
Bon, puisque je ne sais pas comment on modifie le code , je le poste ici :

La nouvelle version c'est une simple fonction qui renvoie un tableau des liens :

Code : Sélectionner tout
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
<?php
/*	Lister les liens de votre fil d'actualités de Google Plus.
 *	
 *  Créer par Thomas Moreira : www.thomasmoreira.com
 *	Twitter : @thomasmds
 *
 */

function Liste_GPlus($user = "109887903456802277373", $nb_liens = 1) {
	//traitement du nombre de liens a renvoyer
	if ($nb_liens < 1) { $nb_liens = 1; }
	
	//récupération de la page google plus
	$File = file_get_contents("https://plus.google.com/$user/posts");
	
	//Création d'un tableau séparant tous les posts
	$tableau = explode('<div id="update-', $File);
	
	$tab_liens = array();
	
	$compteur = 0;
	foreach ($tableau as $value) {
		if($compteur > 0 AND $compteur < $nb_liens+1)
		{
			//recuperation des positions exactes des liens
			$pos1 = strpos($value, "O-F-Q");
			$pos2 = strpos($value, "</div>", $pos1);
			
			if ($pos1)
			{
				$tab_liens[0] = $compteur;
				$tab_liens[$compteur] = substr($value, $pos1+7, $pos2-$pos1-1);
			}
			else
			{
				$compteur--;
			}
		}
		$compteur++;
	}
	// Retourne un tableau numéroté. La case 0 contient le nombre de liens retournés.
	return $tab_liens;
}
?>
0  0 
Avatar de thomasmds
Membre régulier https://www.developpez.com
Le 14/08/2011 à 1:13
Citation Envoyé par Shikiryu Voir le message
Code : Sélectionner tout
http://plusfeed.appspot.com/$userId
ça donne un RSS des posts publics de la personne.
Ensuite, parser le RSS avec simpleXML ou Domdocument et c'est finit.

Et ben merci bien . Je cherchais quelque chose comme ça, et comme je n'avais rien trouvé j'ai créé ma propre fonction.

Bon maintenant que c'est fait je garde la mienne jusqu'à ce que l'API de google sorte.
0  0