jipe32
Messages postés277Date d'inscriptionjeudi 23 novembre 2000StatutMembreDernière intervention11 mai 2010
-
10 oct. 2008 à 14:51
Ordinastie
Messages postés93Date d'inscriptionsamedi 29 janvier 2005StatutMembreDernière intervention17 octobre 2008
-
11 oct. 2008 à 03:45
Bonjour à tous...
Je suis en train de me faire un crawler pour récupérer les liens des videos de Youtube pour me faire des listes...
J'arrive à récupérer les liens, mais j'ai plusieurs fois les mêmes...
Voici mon code:
<?php
set_time_limit(0); // Pas de limite de temps
ini_set('user_agent', 'Mozilla/5.0 (Windows; U; Windows NT 5.1; fr; rv:1.9.0.1) Gecko/2008070208 Firefox/3.0.1'); //Simuler un navigateur
$ch = curl_init();
$timeout = 0; // Timeout cURL
curl_setopt ($ch, CURLOPT_URL, "http://fr.youtube.com/results?search_query=Bob+Marley&search_type=&aq=f");//URL de la recherche
curl_setopt ($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt ($ch, CURLOPT_CONNECTTIMEOUT, $timeout);
$file_contents = curl_exec($ch);
Ordinastie
Messages postés93Date d'inscriptionsamedi 29 janvier 2005StatutMembreDernière intervention17 octobre 20082 11 oct. 2008 à 03:45
Bonjour,La solution consiste à appeler array_unique sur un array ne contenant que les id des vidéos. Il faut donc que tu process ton array récupéré par le patern de ta regexp une première fois.Sinon, tu peux faire comme ça, ça devrait marcher aussi :preg_match_all('//', $file_contents, $regs);foreach($regs['id'] as$num => $id) $videos[$id] = $regs['title'][$num];Ca devrait faire ce que tu souhaites.Ordinastie.