Bonjour,
Je fais actuellement un script afin de récupérer des informations d'une page web d'un site externe.
J'ai lu préalablement le tutoriel des expressions régulières, j'ai assimilé mais j'arrive pas à mettre à 100% en pratique.
Le site que je scrute possède des centaines de ligne de se type là :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2 username":"Zariell","avatar":"4fea4e210efebab49604c3d65d6220c8","userId":"2832660339215456238","createdAt":1321551255,
Je souhaite donc récupérer userId dans toutes ces lignes. J'utilise donc un preg_match() comme ceci :
Ceci me retourne rien... Enfin, il me retourne $erreur = 1 ce qui m'affiche un message d'erreur personnalisé.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13 function recup_userid($url) { global $erreur; $source = file_get_contents($url); $resultat = preg_match('#"userId":"(.+)"\}\}#', $source, $userid); if($resultat) { $erreur = 0; return $userid; } else { $erreur = 1; } }
Le fait qu'il trouve plusieurs résultats identique peut poser problème ? Sur ma page il doit avoir 24 résultats identiques à ce code.
J'ai pourtant déjà utilisé cette même fonction pour chercher un lien et cela m'avait posé aucun problème. Un problème avec les "" peut être ? J'ai déjà essayer de mettre des \ devant, mais ceci ne change absolument rien.
Cordialement Zariell.
Partager