begin process at 2012 05 30 17:14:47
  Trouver un code source :
 
dans
 
Accueil > Forum > 

PHP

 > 

Divers

 > 

Débutant(e)

 > 

Parser Exalead suite a un partenariat avec ces derniers.


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

Parser Exalead suite a un partenariat avec ces derniers.

samedi 1 juillet 2006 à 15:11:22 | Parser Exalead suite a un partenariat avec ces derniers.

Doona

Bonjour à tous et à toutes,

Nous avons comme projet de créer le premier moteur de recherche humanitaire qui a pour nom Doona (www.doona.fr). Exalead a accépté d'être notre partenaire pour l'affichage des résultats. Cependant, vu qu'il ne dispose pas de flux XML propre, nous devons parser leur page. Et j'ai essayé mais j'ai quelques problèmes (ce n'est pas mon métier que d'être dévelloppeur PHP) :

Il est impossible de changer de language (international ou francais), lorsque l'on recherche plusieurs mots, seul le premier est pris en compte, un petit problème avec les liens de pages en bas aussi... Aussi, j'ai remarqué en faisant des textes sur exalead que lorsque l'on cherche des caractères étranges se mettent après " [ Lien ]&..." je pense notament qu'ils sont liés au menu de gauche mais aussi que certaines informations transitent par cette variable dynamique... Mais je ne vois pas comment pouvoir la retrouver...

Je met tout le code ci-dessous afin que vous puissiez y jeter un coup d'oeil... Merci d'ores et déjà de votre aide !

PROBLEME 1 : Les liens pour les pages 1,2,3,4,5... vont vers l'infini qu'il y aient ou non des autres pages (ex: " [ Lien ]")

PROBLEME 2 : Lorsque l'on utilise des guillemets, ils sont mal affiché dans la barre de recherche (ex: " [ Lien ]")

PROBLEME 3 : Exalead ne prend en compte que le premier mot même si on met une expression ou autres...

PROBLEME 4 : Le Da Exalead Code qui pour moi ne signifie rien a l'air de pourtant signifier quelque chose...

Index.php
[code]<html><head><meta http-equiv="content-type" content="text/html; charset=UTF-8">
<?php
include "incl.php";
?>
<title>Recherche Doona :
<?php
$aff=htmlentities($_GET['q']);
echo $aff;
?>
</title>
<style type="text/css">
<!--
.titre-blanc {
 color: #FFFFFF;
 font-size: 14px;
}

.titre-liens {
 color: #AA1111;
 font-size: 17px;
 font-family: Arial;
}
.titre-liens a{
 color: #AA1111;
 font-size: 17px;
 font-family: Arial;
}
.titre-liens a:hover{
 color: #AA1111;
 font-size: 17px;
 font-family: Arial;
}
.desc-liens {
 color: #000000;
 font-size: 14px;
 font-family: Arial;
}

.adresse-liens {
 color: #CC3333;
 font-size: 11px;
 font-family: Arial;
}


.menu {font-size: 12px}
.texte {font-size: 14px}
.ecriture-mini {font-size: 10px; }
.MOYENNE-GRAS { font-size: 12px;
 font-weight: bold;
}
-->
</style>
</head>
<body>

<table width="500" border="0" cellpadding="0" cellspacing="0">
  <tbody><tr><td width="150" height="84" valign="middle"><a href="http://assodoona.free.fr"><img src="../images/doonamini.gif" alt="Accueil de Doona" width="150" height="60" vspace="12" border="0" align="absmiddle"></a></td>

<td width="418" valign="middle"><table width="360" border="0" align="center" cellpadding="0" cellspacing="0">
  <form action=" [ Lien ]" name="f" class="ecriture-mini">
    <tr>
      <td width="360" align="left" valign="middle" nowrap><div align="left">
        <input name="q" type="text" id="q" onKeyUp="changeVal();" value="<?php echo $aff; ?>" size="35" autocomplete="off">
        <input name="submit2" type="submit" value="Recherche">
        <br>
        <span class="menu"><img src="../images/exalead.gif" width="96" height="34" vspace="5" align="absmiddle">
          <input name="st" value="int" <?php if($_GET[st]=='int'){echo 'checked="checked"';} ?> type="radio">
          Web international&nbsp;
          <input name="st" value="local" <?php if($_GET[st]=='local'){echo 'checked="checked"';} ?> type="radio">
          Web francophone</span>
        <input name="hl2" type="hidden" id="hl" value="fr">
      </div></td>
    </tr>
  </form>
</table></td>
</tr>
</tbody></table>
<table width="490" height="101" border="0" cellpadding="0" cellspacing="10">
  <tbody>
    <tr>
      <td width="470" height="81" align="left" valign="middle"><div align="center">
        <div align="left">
          <fieldset>
            <legend><span class="police-normale">Publicités rémunérant l'association</span>. </legend>
            <div align="center"><img src="../images/pub.gif" width="468" height="60"><br>
              <span class="ecriture-mini">Recherche partenaire publicité (bannière CPM 1 à 2€)</span> </div>
            </fieldset>
        </div>
      </div></td>
    </tr>
  </tbody>
</table>
<table bgcolor="#e5ecf9" border="0" cellpadding="0" cellspacing="0" width="100%"><tbody><tr>
  <td width="20" align="right" nowrap="nowrap" bgcolor="#CC3333" class="titre-blanc">&nbsp;</td>
  <td width="179" align="right" nowrap="nowrap" bgcolor="#CC3333" class="titre-blanc"><p align="left"><span class="Style1 Style4"><font size="+1">Résultats de la recherche</font></span></p></td>
  <td width="787" align="right" nowrap="nowrap" bgcolor="#CC3333" class="titre-blanc"><?php echo "Résultats <b>".($n+1)."</b> à <b>".$nmax."</b> pour <b>".$aff."</b>"; ?></td>
  <td width="20" align="right" nowrap="nowrap" bgcolor="#CC3333" class="titre-blanc">&nbsp;</td>
</tr></tbody></table>
<?php
if($nb=="Aucun&nbsp;r&eacute;sultat&nbsp;trouv&eacute;"){
echo "Votre recherche n'a pas abouti ; Aucun résultat disponible !";}
else {
$i=1;
while($i<11){
echo "<div class='titre-liens'><a href=".$liens[$i].">".$titres[$i]."</a></div><div class='desc-liens'>".$descs[$i]."</div><div class='adresse-liens'>".$liens[$i]."</div><br>";
$i++;}
include "page.php";}
?>
<center>
  <p>

  <table width="100%" height="43" border="0" cellpadding="0" cellspacing="0">
    <tbody><tr>
     
   <td height="43" align="center" valign="middle" bgcolor="#CC3333"><table border="0" align="center" cellpadding="0" cellspacing="0">
      <form action=" [ Lien ]" name="f" class="ecriture-mini">
        <tr>
          <td align="left" valign="middle" nowrap>
            <div align="left">
     <input name="st" type="hidden" id="hl22" value="int">
     <input name="q" type="text" id="q" onKeyUp="changeVal();" value="<?php echo $aff; ?>" size="40" autocomplete="off">
              <input name="submit" type="submit" value="Recherche">
              <input name="hl" type="hidden" id="hl2" value="fr">
     <br>
            </div></td>
          </tr>
  </form></table></td>
    </tr></tbody></table>
</center><center>
  <table align="center" border="0" cellpadding="0" cellspacing="0" width="100%">
    <tbody>
      <tr>
        <td align="center" valign="middle" class="ecriture-mini"><br>
            <table align="center" border="0" cellpadding="0" cellspacing="0" width="260">
              <tbody>
                <tr>
                  <td width="20%" align="center" n class="ecriture-mini"><a href="aide.php?page=apropos">A propos</a> - <a href=" [ Lien ]" target="_blank">Blog</a> - <a href="aide.php?page=help">Aide</a> - <a href="aide.php?page=contact">Contact</a></td>
                </tr>
              </tbody>
          </table></td>
      </tr>
      <tr>
        <td height="6" class="ecriture-mini"><div align="center">Résultats de la recherche affichés grâce à <a href=" [ Lien ]" target="_blank">Exalead</a><br>
          Moteur de recherche © <a href="index.php">Doona</a><br>
        </div></td>
      </tr>
    </tbody>
  </table>
</center></body></html>[/code]

Incl.php
[code]<?php
if($_GET[p]==""){
$_GET[p]=1;}

$q=$_GET['q'];
$n=($_GET['p']-1)*10;
/* scope= all OR language OR country */
if($_GET['st']=="local"){
$scope="language";}
if($_GET['st']=="int"){
$scope="all";}
$search="";
$file = "http://exalead.fr/search/C=0MGwAMwA%3d/?U=&C=0MGwAMwA%3D&2t=0&2q=&language=fr&2n=".$n."&q=".$q."&scope=".$scope;
$open = fopen($file,"r");
while (!feof($open)) {
     $search .=fgets($open, 4096);
   }
$max=split('<span>documents 1-', $search);
$nmaxs=split('<a', $max[1]);
$nmax=$nmaxs[0];
$nbresult=split('<td class="s40"><b>', $search);
$nb4=split('</b>', $nbresult[1]);
$nb3=$nb4[0];
$nb2=explode(".", $nb3);
$i=0;
$long=sizeof($nb2);
while($i<$long){
$nb.=$nb2[$i];
$i++;}
$virelehaut=split('<td class="d1" valign="middle">', $search);
$i=1;
while ($i<($nmax+1)) {
$hautvirer .=$virelehaut[$i]."<br><br><br>";
$i++;
}
$virelebas=split('<table', $hautvirer);
$hautvirer=$virelebas[0];
$i=0;
while($i<($nmax)){
$no=$n+$i;
$hautvirer=str_replace('/redir?n='.$no.'&amp;u=http%3a%2f%2f', 'http://', $hautvirer);
$i++;}
$hautvirer=str_replace('%2f', '/', $hautvirer);
$lesliens=split('<a class="s46" href="', $hautvirer);
$i=1;
$liens=array();
$titres=array();
while($i<($nmax+1)){
$lien=split('"', $lesliens[$i]);
$liens[$i]=$lien[0];
$lestitres=split('<a class="s46" href="'.$liens[$i].'">', $hautvirer);
$lestitres=$lestitres[1];
$lestitres=split('</a>', $lestitres);
$titres[$i]=$lestitres[0];
$i++;
}

$descs=array();
$lesdescs=split('<div class="s47">', $hautvirer);
$i=1;
while($i<($nmax+1)){
$descriptions=split('</div>', $lesdescs[$i]);
$descs[$i]=$descriptions[0];
$i++;
}


$i=1;
$liens=array();
while($i<($nmax+1)){
$lien=split('"', $lesliens[$i]);
$liens[$i]=$lien[0];
$i++;
}
?>[/code]

Page.php
[code]<?php
$p=$_GET['p'];

if($p==""){
$p=1;}

echo "<table width='100%' height='22px' border='0' align='center' cellpadding='0' cellspacing='0'>
    <tbody>
      <tr>
        <td align='center' valign='middle' class='ecriture-mini'><table border='0'>
          <tr>";
   
   if($p<5){
   $p1=1;
   $p2=2;
   $p3=3;
   $p4=4;
   $p5=5;
   $p6=6;
   $p7=7;
   $p8=8;
   $p9=9;
   $p10=10;
}
   
   else if (($n+10)>195) {
   $p1=191;
   $p2=192;
   $p3=193;
   $p4=194;
   $p5=195;
   $p6=196;
   $p7=197;
   $p8=198;
   $p9=199;
   $p10=200;}
   
   else {
   $p1=$p-4;
   $p2=$p-3;
   $p3=$p-2;
   $p4=$p-1;
   $p5=$p;
   $p6=$p+1;
   $p7=$p+2;
   $p8=$p+3;
   $p9=$p+4;
   $p10=$p+5;}
   
   $table = array($p1,$p2,$p3,$p4,$p5,$p6,$p7,$p8,$p9,$p10);
   $pp=$p-1;
   $ps=$p+1;
   
   if($p>1){
   echo "<td width='14'><a href='http://assodoona.free.fr/search/?q=".$_GET[q]."&hl=fr&submit=Recherche&st=".$_GET[st]."&p=".$pp."'><img src='http://assodoona.free.fr/images/prec.gif' alt='Precedent' border='0' align='absmiddle'></a></td>";}
   
   $i = 0;
   
   while ($i < 10) {
   
   if($table[$i]==$p){
   echo "<td width='14'><b>".$table[$i]."</b></td>";}

   else {
   echo "<td width='14'><a href='http://assodoona.free.fr/search/?q=".$_GET[q]."&hl=fr&submit=Recherche&st=".$_GET[st]."&p=".$table[$i]."'>".$table[$i]."</a></td>";}
   
   $i++;}
            echo "<td width='14'><a href='http://assodoona.free.fr/search/?q=".$_GET[q]."&hl=fr&submit=Recherche&st=".$_GET[st]."&p=".$ps."'><img src='http://assodoona.free.fr/images/suiv.gif' alt='Suivant' border='0' align='absmiddle'></a></td></tr></table>";
   
?>[/code]

Merci à tous ceux qui nous aiderons...



Cette discussion est classée dans : font, recherche, liens, size, split


Répondre à ce message

Sujets en rapport avec ce message

Boutons et textbox comme liens (simple) [ par piR ] Je suppose que c'est simple, mais je n'y connais pas grand-choseMa page de démarrage contient un champ de recherche Google, que j'ai trouvé sur leur s amélioration d'un moteur de recherche [ par Coundelitch ] bonjour !J'aimerai savoir quelles sont les solutions envisagable, afin d'améliorer mon moteur de recherche.Pour info c'est un moteur de recherche en P recherche d'editeur sql [ par elvis78 ] bonjour a tout les developpeurs.je debute en programmation et j'aimerais savoir ou je pourrais trouver un editeur sql gratuit.Un grand merci a celui q forum san mySQL... [ par DreaMaker ] Salut tout le monde g bien cherché mais g pas trouvé des forums dans mySQL et avec un seul fichier PHP, mais ou les messages sont stokés dans des fich Besoin de l'aide d'un king en php [urgent] [ par lambert__ch ] Bonjour tout le monde.je suis actuellement occupé à faire un site pour l'entreprise d'un pote et je suis confronté à un problème PHP, alors je cache r recherche de script annuaire mais pas de liens [ par perchu ] bonjour,je suis à la recherche d'un script PHP comme celui-ci : http://skate.agoride.com/annuaire/recherche-spot.aspUn genre de moteur de recherche an créer formulaire avec zone de texte - menu déroulant (1 choix) - upload fichier [ par sokebana ] Bonjourje débute complètement et bien entendu je veux un formulaire bien trop complexe pour moi...j'ai réussi à faire un formulaire simple avec que de Décalage entre IE/Firefox et Google Chrome [ par BenamourJr ] Bonjour, J'ai un problème de décalage de mes éléments positionnés via position: relative (j'ai essayé en absolute et ca ne change absolument rien). J formatage formulaire [ par Thanos125 ] bonjour a tous et toutes, j'ai un problème avec la réception de message via mon formualire de contact.lorsque je reçois mon message les carartère accé Creation d'un moteur de recherche [ par Coundelitch ] bonjour !Je dois créer un moteur de recherche en PHP. Ce moteur cherchera dans un dossier des fichiers au format HTML.C'est peut-etre simple mais le p


Nos sponsors


Sondage...

CalendriCode

Mai 2012
LMMJVSD
 123456
78910111213
14151617181920
21222324252627
28293031   

Consulter la suite du CalendriCode

A découvrir



 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 0,936 sec (4)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales