Bonjour ^^
Voilà, je dois réaliser un crawler dans le but de simplifier des sites de presse (dans le cadre d'un projet scolaire) et j'ai un problème dans l'extraction des liens.
Quand je le teste sur des exemples banals, ça marche mais quand je le teste sur des sites de presse, ben ça marche plus >_<
voilà sur quoi je le teste :
$url = "<a href="ofpolitique.asp?idDOC=121880&idCLA=3635" class="Noir">
<img src="http://photos.ouestfrance-enligne.com/2004/02/12/N1GE02A_20040211_vig.jpg" border="0" align="right" hspace="4">
<b>La gauche dépose un recours devant le Conseil constitutionnel</b>
La loi Perben II contestée sitôt votée
L'Assemblée nationale a voté hier le projet de loi sur la grande criminalité par 340 voix (UMP, UDF) contre 173 (PS, PCF) et 9 abstentions. Pour le Parlement, le texte est maintenant définitivement adopté. Mais le PS en appelle déjà au Conseil constitutionnel pour en obtenir l'annulation, au moins partielle.</a><a href="ofpolitique.asp?idDOC=121880&idCLA=3635" class="Noir"><img src="/commun/images/PuceFlchBtnLire.gif" width="10" height="6" border="0">Lire l'article</a>";
et voici mon code :
while($x = stristr($url, "<a ")){
$href = substr($x, 3, strpos($x, ">") -3);
$texte = $x;
if (($debut=strpos($href, """))!=0) {
$href = substr($href, $debut+1);
$fin = strpos($href, """);
$href = substr($href, 0, $fin);
}
elseif (($debut=strpos($href, "'"))!=0) {
$href = substr($href, $debut+1);
$fin = strpos($href, "'");
$href = substr($href, 0, $fin);
}
else {
$debut=strpos($href, "=");
$href = substr($href, $debut+1);
}
$texte = substr($texte, strpos($texte, ">") +1);
$texte = substr($texte,0, strpos($texte, "</a>"));
$liens[$href] = $texte;
$url = substr($url, strpos($url, "</a>") +4);
}
print_r($liens);
donc le problème est que sur les deux liens que je veux récupérer (dans la variable $url), il ne m'en sort qu'une seule et je ne vois absolument pas pourquoi :(
Quelqu'un aurait-il la bonté de m'aider ? ^^