Vous êtes ici Codes PHP et MySQL > Recherches > Recherche des mots clés connexes

 

Recherche des mots clés connexes

Cherche les mots clés connexes à un ou plusieurs mots clés.
Il utilise Google pour trouver les autres mots clés. Pour l'utiliser il faut appelé la méthode search

Ex : search("Mot clé",2,100);
 
mercier133
Site de l'auteur voir
[18] sources en PHP voir
Code vu 2759 fois
Enregistré le 05 Jan 2010
  • Digg ce code sur digg.com
  • Bookmark ce code sur del.icio.us
  • Bookmark ce code sur Google
  • Bookmark ce code sur Yahoo
  • Ajoute Recherche des mots clés connexes
  • Partage ce code sur Facebook
 
 
 
 

Code Source


01.
02.
03.
04.
05.
06.
07.
08.
09.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
33.
34.
35.
36.
37.
38.
39.
40.
41.
42.
43.
44.
45.
46.
47.
48.
49.
50.
51.
52.
53.
54.
55.
56.
57.
58.
59.
60.
61.
62.
63.
64.
65.
66.
67.
68.
69.
70.
71.
72.
73.
74.
75.
76.
77.
78.
79.
80.
81.
82.
83.
84.
85.
86.
87.
88.
89.
90.
91.
92.
93.
94.
95.
96.
97.
98.
99.
100.
101.
102.
103.
104.
105.
106.
107.
108.
109.
110.
111.
112.
113.
114.
115.
116.
117.
118.
119.
120.
121.
122.
123.
124.
125.
 
<?php
/******************************************************************************/
/*                                                                            */
/*                       __        ____                                       */
/*                 ___  / /  ___  / __/__  __ _____________ ___               */
/*                / _ \/ _ \/ _ \_\ \/ _ \/ // / __/ __/ -_|_-<               */
/*               / .__/_//_/ .__/___/\___/\_,_/_/  \__/\__/___/               */
/*              /_/       /_/                                                 */
/*                                                                            */
/*                                                                            */
/******************************************************************************/
/*                                                                            */
/* Titre          : Recherche des mots clés connexes                          */
/*                                                                            */
/* URL            : http://www.phpsources.org/scripts552-PHP.htm              */
/* Auteur         : mercier133                                                */
/* Date édition   : 05 Jan 2010                                               */
/* Website auteur : http://simplegc.freeheberg.com                            */
/*                                                                            */
/******************************************************************************/
 
set_time_limit(0);

//Methode qui cherche et affiche les résultats !
function search($q,$niveau_max=2,$nb_result=20){
        $url "http://www.google.com/search?q=".urlencode($q).
"&num=$nb_result&hl=fr";
        $lesmots = array();
        $niveau 0;
        if($nb_result>0analyse_page($url);
        
        $niveau 0;
        $url "http://google.com/complete/search?output=toolbar&q=".urlencode(
$q)."";
        analyse_suggest($url);
        $url "http://www.google.com/search?q=define:".urlencode($q).
"&num=100&hl=fr";
        analyse_page($url);

        arsort ($lesmots);
        $x0;
        foreach($lesmots as $m=>$n){
            $x++;
            echo $m .", ";
        }
}
function parse_result($result){
    $result strtolower($result);
    $result ereg_replace("<([script|style])[^>]>[^<]</([script|style])>","",
$result);//on supprime les balise de style
    return $result;
}
function analyse_suggest($url){
    $suggest file_get_contents($url);

    $xml = new SimpleXMLElement($suggest);
    $result $xml->xpath('CompleteSuggestion/suggestion');
    foreach($result as $suggest){
        foreach($suggest->attributes() as $key => $val){ filtre_mots($val);
filtre_mots($val);}
    }
}
function analyse_page($url){
    global $niveau,$niveau_max;
  if($meta = @get_meta_tags($url)){
    
        array_walk(explode(",",$meta["keywords"]),"filtre_mots");
        array_walk(explode(" ",$meta["description"]),"filtre_mots");

  }
    
    $result parse_result(@file_get_contents($url)); 
    trouve_mots($result);
    $niveau++;
    if($niveau<$niveau_max){    
        trouve_url($result);
    }

}
function trouve_url($html){
    global $niveau;
        preg_match_all('|(http://[a-zA-Z0-9/+-=%&:_.~\?#a-zA-Z0-9]++)|U',$html,
$matches); 
        array_walk($matches[1],"filtre_liens");
}

function filtre_liens($lien){
    if(ereg("(google|youtube|dailymotion|q=cache:|wikipedia|yahoo)",$lien)) 
return false;
    analyse_page($lien);
}
function filtre_mots($mot){
    global $lesmots;
    if(eregi(" ",trim($mot))){
        $mots explode(" ",$mot);
        foreach($mots as $motfiltre_mots($mot);
    }
    else {
        if(ereg(
"(\.|/|\'|»|,|;|\(|\)|!|\{|\}|\||\?|\+|www|plus|plan du" .
" site|annuaire|forum|blog|euros |accueil|publicit|cached|reference library|he" .
"lp|most-recent questions|pages similaires|index|liens|contact|fermer|imprimer" .
"|home|voir tous|lire la suite|http|ftp|avec|tous|notre|tout|site|vous|votre|p" .
"our|more|shipping| sont |details|détails| dans )"," ".$mot." ") || !ereg(
"([a-z])",$mot)||strlen($mot)<4)    return false// on ignore certain mots pas pertinents !
        else {
            if(isset($lesmots[trim(strtolower($mot))])) $lesmots[trim(strtolower
($mot))]++;
            else $lesmots[trim(strtolower($mot))] = 1;
        }
    }
}
function trouve_mots($texte){
    global $lesmots;
    $texte trim($texte);
    $texte explode("</head>",$texte);
    $texte strip_tags($texte[1]);
    $texte str_replace("([[:space:]|[:blank:]|\n|\r| |    |&nbsp;]++)"," ",$texte
);
    $texte preg_split ("/\s+/",$texte); 
    array_walk($texte,"filtre_mots");
}
?>

 

Fonctions du code

: Fixe le temps maximum d'exécution d'un script - (PHP 4, PHP 5)
: Encode une chaîne en URL - (PHP 4, PHP 5)
: Crée un tableau - (PHP 4, PHP 5)
: Trie un tableau en ordre inverse - (PHP 4, PHP 5)
: Affiche une chaîne de caractères - (PHP 4, PHP 5)
: Renvoie une chaîne en minuscules - (PHP 4, PHP 5)
: >Remplacement par expression rationnelle - (PHP 4, PHP 5)
: Lit tout un fichier dans une chaîne - (PHP 4 >= 4.3.0, PHP 5)
: Extrait toutes les balises méta d'un fichier HTML - (PHP 4, PHP 5)
: Exécute une fonction sur chacun des éléments d'un tableau - (PHP 4, PHP 5)
: Coupe une chaîne en segments - (PHP 4, PHP 5)
: Expression rationnelle globale - (PHP 4, PHP 5)
: Expression rationnelle standard - (PHP 4, PHP 5)
: Recherche par expression rationnelle insensible à la casse - (PHP 4, PHP 5)
: - (PHP 4, PHP 5)
: Calcule la taille d'une chaîne - (PHP 4, PHP 5)
: Détermine si une variable est affectée - (PHP 4, PHP 5)
: Supprime les balises HTML et PHP d'une chaîne - (PHP 4, PHP 5)
: Remplace toutes les occurrences dans une chaîne - (PHP 4, PHP 5)
: Éclate une chaîne par expression rationnelle - (PHP 4, PHP 5)
Ajouter un commentaire
Code de sécurité

Attention: Les champs marqués d'une étoile * sont obligatoires
 
Librairie PHP

Connexion

 
 

Recherches

 
 

PHP

 
 
 
 
    Offres d'emploi

Plus de 500 offres d'emploi PHP/MySQL

Offres d'emploi
 
    Editeur PHP
 
        Publicité