Forum dédié au moteur de recherche et aux techniques d'optimisation par #taggle
Vous n'�tes pas identifi�.
Bonjour,
J'arrive pas a parser le flux xml issu du moteur de recherche msn.
J'ai comme l'impression qu'il bloque ce genre d'utilisation, pourtant il me semble que certain d'entre nous le font sans problème : exemple)
je cherche a utiliser le flux suivant :
http://search.msn.com/results.aspx?q=em … format=rss
mais mon bout de code qui suit tombe en erreur :
$urlxml = "http://search.msn.com/results.aspx?q=emploi+uniface&format=rss"; if($xml = simplexml_load_file($urlxml)){ var_dump($xml); }else{ echo "erreur"; }
Je soupconne MSN d'empecher l'utilisation de ses flux en dehors d'un lecteur RSS.
(en reperant le user-agent ou par le biais de cookies...)
alors :
1- est-ce que c'est possible de le contourner?
2- comment en php5 (un exemple serait parfait)?
Hors ligne
je ne connais pas var_dump()
j'utilise ca
$msn = 'http://search.msn.fr/results.aspx?q=' . $query . '&format=rss&FORM=RSRE'; $xml = simplexml_load_file($msn); foreach ($xml->channel->item as $list) { echo $list->title . $list->description; }
pas de soucis chez moi
edit: ok pour var_dump()
Je vois pas, ton ip doit etre filtré, essai un autre server..
Derni�re modification par pagetronic (27-09-2006 01:47:13)
Hors ligne
merci pagetronic, ca marche avec ton code...
mais je vais pousser la recherche pour voir ce qui cloche chez mon exemple
(l'url n'est pas totalement la même)
Hors ligne
bizarrement, si je teste l'ouverture du flux, cela me provoque une erreur :
if($xml = simplexml_load_file($msn))
conclusion, codez bourrin, ca passe, la gestion des erreurs, c'est du temps perdu
Hors ligne
Chez moi sur celeonet il me les gere bien..
vu que c'est du php5 c'est surement un bug de ton hebergeur
Hors ligne
Chez OVH j'ai jamais réussi !
Hors ligne
OVH est blacklisté par MSN !
Hors ligne
C'est bien dommage, va falloir que je trouve une laternative
Hors ligne
ben tu fais un include depuis un autre server
Hors ligne
Bon ...........
Le sujet a déjà été traité sur un autre post que je ne trouve plus :
Je suis chez OVH en dédié :
J'utilise "magpierss" comme parseur et ça a toujours bien fonctionné :
Je viens de faire un autre test en ligne avec le flux proposé par Vincent :
--http://www.woobuzz.com/msn.php
voici mon code :
<?php require_once 'magpierss/rss_fetch.inc'; $fichier_xml = "http://search.msn.com/results.aspx?q=emploi+uniface&format=rss"; $nombre_element = 10; $rss = fetch_rss($fichier_xml); if (is_array($rss->items)) { $liste = array_slice($rss->items, 0, $nombre_element); foreach ($liste as $item ) { $title = $item[title]; $url = $item[link]; $description = $item[description]; echo "<div id=\"calle\"><div><a class=\"link\" href=\"$url\" rel=\"nofollow\ target=\"_blank\">$title</a></div><span id=\"texteadsnoir\">$description </span></div>\n"; } } ?>
Jeff,
Hors ligne
Je parse les flux de msn en utilisant magpierss. Globalement tout fonctionne mais j'ai un message d'erreur Notice index: lorsque la description du site n'est pas présente sur un des résultats.
J'ai donc mis un texte remplaçant une description inexistante, je pensais que ça suffirait mais toujours cette Notice
Ca n'empèche bien entendu l'affichage du flux mais ce message d'erreur me casse les c*** et je ne sais pas quoi faire.
Hors ligne
C'est curieux, t'a un exemple de requête qui renvoie ce type de résultats ?
Hors ligne
http://www.medecine-douce.biz/medecine-japonaise.html
L'url n'ayant pas de description affichée dans msn est la première
PS: le serveur rame à mort, j'ai test un nouvel hébergement discount qui est pas mal merdique apparement
Hors ligne
Effectivement, MSN est une burne pour placer une page vide en tête
Je penses que dans ton feedparser.php tu dois pouvoir définir que si description est vide, tu affiche un texte par défaut genre : "page d'information sur le *mot-clé*", non ?
Hors ligne