Ecrit par lemoussel le Vendredi 14 août 2009 à 13:54 - Catégorie Scripts PHP
Comment extraire / parser les urls de résultats de recherche de BING ?
Pour faire suite à l’article « Comment extraire / parser les urls de résultats de recherche de Google ?« , voici le même genre de script PHP permettant d’extraire des urls du moteur de recherche Bing.
Ci-dessous le code du script php à copier/coller dans un fichier et à télécharger sur votre serveur ou à utiliser en local.
» Lire la suite : Extraire les urls des résultats de Bing
Catégorie: Scripts PHP
Ecrit par lemoussel le Mercredi 5 août 2009 à 23:07 - Catégorie Scripts PHP
Comment extraire / parser les backlinks référencés par Alexa ?
Voici un script php permettant d’extraire, du site Alexa, la liste des sites qui mentionnent votre blog/site avec un backlink (un backlink ou “lien retour” est un lien qui pointe vers votre site).
Ainsi avec ce script vous saurez rapidement qui vous cite à la réserve près que dans cette liste n’apparait que les backlinks identifiés par Alexa (par curiosité regardez pour www.seoblackout.com).
» Lire la suite : Extraire les backlinks référencés par Alexa
Catégorie: Scripts PHP
Ecrit par admin le Samedi 13 juin 2009 à 14:27 - Catégorie Google,Scripts PHP
Google a sorti, de son lab., il y a quelques semaines maintenant, une option nommée Google Wonder Wheel qui permet à partir d’un mot-clé donné de trouver des mots-clés connexes qui ont un lien sémantique avec le mot-clé recherché. Les résultats sont présentés sous forme cartographique dans une animation flash.
Cette fonctionnalité n’est pas disponible dans toutes les langues pour le moment, on la retrouve sur google.com, google.cn et certainement d’autres mais pas sur google.fr
Il est quand même possible d’obtenir des résultats pour des mots français, on peut saisir un mot-clé uniquement français, par exemple, poker retournera des mots apparentés anglais, alors que poker gratuit retournera des mots-clés connexes français, les mots avec accents renverront des mots-clés français, exemple crédit versus credit.
Voici quelques screenshots pour voir la Google Wonder Wheel en action :
Pour accéder à Google Wonder Wheel, il faut aller sur google.com et cliquer sur show options :

Ensuite on clique sur wonder wheel (colonne de gauche vers le bas) et on saisit notre mot-clé, ici je prend comme exemple référencement :

Je clique ensuite sur référencement google :

Puis je clique sur référencement manuel :

Il faut savoir que les mots-clés présents dans le flash sont présents dans le code source de la page, donc il est aisé d’extraire ces mots-clés apparentés
Voici le script php qui permet d’extraire ces mots-clés :
A partir d’un mot-clé donné, ce script va extraire, pour chaque mot-clé de la roue, tous les mots-clés apparentés :
1
2
3
4
5
6
7
8
9
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
| <?php
//Script Auteur : Tiger
//Site Web : http://www.seoblackout.com
//Url script : http://www.seoblackout.com/2009/06/13/google-wonder-wheel/
//Description script : Ce script php vous permet d'extraire pour un mot-clé donné, les mots-clés connexes à partir de Google Wonder Wheel
//Installation : uploader ce fichier sur votre serveur et appeler le ainsi : http://votre_site_web.com/google-wheel.php?kw=votre mot clé
if ((isset($_GET['kw'])) && $_GET['kw']!='')
{
$q=strip_tags($_GET['kw']);
echo google_wheel($q);
}
else
{
echo 'Veuillez saisir un mot-clé !';
}
function google_wheel($q) {
$q=urlencode($q);
$search_url="http://www.google.com/search?q=$q&hl=en&tbo=1&tbs=ww:1";
$ch = curl_init();
curl_setopt($ch, CURLOPT_USERAGENT, 'Opera/9.63 (Windows NT 5.1; U; fr) Presto/2.1.1');
curl_setopt($ch, CURLOPT_URL,$search_url);
curl_setopt($ch, CURLOPT_FAILONERROR, true);
curl_setopt($ch, CURLOPT_REFERER, $search_url);
curl_setopt($ch, CURLOPT_RETURNTRANSFER,true);
$res= curl_exec($ch);
curl_close($ch);
if ($res) {
if (preg_match('/"r":\[(.*?)\]}\)/',$res,$matches))
{
$response=str_replace('"','',$matches[1]);
$response2=explode(',',$response);
$response3='';
foreach ($response2 as $key => $value)
{
$value2=urlencode($value);
$search_url2="http://www.google.com/search?q=$value2&hl=en&tbo=1&tbs=ww:1";
$ch2 = curl_init();
curl_setopt($ch2, CURLOPT_USERAGENT, 'Opera/9.63 (Windows NT 5.1; U; fr) Presto/2.1.1');
curl_setopt($ch2, CURLOPT_URL,$search_url2);
curl_setopt($ch2, CURLOPT_FAILONERROR, true);
curl_setopt($ch2, CURLOPT_REFERER, $search_url2);
curl_setopt($ch2, CURLOPT_RETURNTRANSFER,true);
$res2= curl_exec($ch2);
curl_close($ch2);
if ($res2)
{
if (preg_match('/"r":\[(.*?)\]}\)/',$res2,$matches2))
{
$response.=','.str_replace('"','',$matches2[1]);
}
}
}
$response3=array_unique(explode(',',$response));
asort($response3);
$res_final='Mot-clé : '.urldecode($q);
$res_final.='<br />Résultats: <br /><ul>';
foreach ($response3 as $key => $value)
{
$res_final.='<li>'.utf8_decode($value).'</li>';
//flush();
}
$res_final.='</ul>';
}
}
return $res_final;
}
?> |
Ce script peut être largement améliorié, c’est une base de départ
Voici le résultat de l’extraction à partir du mot-clé référencement :
- api google
- comparatif moteur de recherche
- demande de devis
- devis création site internet
- devis gratuit
- devis referencement
- exalead moteur de recherche
- l api
- la soumission
- le positionnement
- les moteurs
- les moteurs de recherche
- liens commerciaux
- loi informatique et libertés
- moteur de recherche altavista
- moteurs de recherche
- moteurs de recherche gratuits
- mots clefs
- méthodologie création site internet
- page rank gratuit
- positionnement moteur de recherche
- principaux moteurs de recherche
- referencement google
- referencement gratuit
- referencement gratuit internet
- referencement gratuit moteur de recherche
- referencement internet
- referencement manuel
- referencement moteurs de recherche
- referencement naturel
- referencement positionnement
- référencement manuel
- référencement manuel gratuit
- référencement moteurs de recherche
- référencement payant
- soumission moteur de recherche
- url rewriting
Catégorie: Google,Scripts PHP
Ecrit par BlackMelvyn le Jeudi 6 novembre 2008 à 0:21 - Catégorie Scripts PHP
Le duplicate content est l’une des raisons principales qui a mené à la chute vertigineuse de nombreux annuaires dans l’index de notre ami Google.
Peu de visiteurs fréquentent les annuaires, et si certains pensent que la fin des annuaires est arrivée, nous sommes également plusieurs à penser le contraire… Seuls les annuaires de qualité, différents des autres, peuvent apporter un peu de trafic, mais généralement, les répertoires ne servent qu’à obtenir des backlinks fondamentaux au positionnement dans les SERPs.
C’est pour cette raison qu’il est très important de soigner ses annuaires si l’on ne veut pas finir dans les tréfonds de l’index des moteurs.
Parmi les nombreux scripts d’annuaires gratuit et open source, je me suis intéressé à Freeglobes. En effet, son code est propre, clair et ouvert, un moteur de template Smarty permet de personnaliser facilement le design et une multitude de thèmes et de plugins (basés sur le moteur de Dotclear) sont disponibles. Bref, une des stars des scripts d’annuaire.
Revenons à nos moutons (noirs). L’une des meilleures façons de limiter le duplicate content est de le détecter automatiquement. Tiger, l’admin du blog, avait déjà publié cet article sur comment éviter le duplicate content dans les annuaires, et pour compléter cet excellent billet, je vous propose une adaptation de cette fonction en vue d’implémenter cette nouvelle fonctionnalité dans les scripts Freeglobes.
Pour cela il vous faut : un script Freeglobes et un éditeur de texte. Ensuite, suivez les instructions citées en commentaire dans le script.
1
2
3
4
5
6
7
8
9
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
| <?php
###### Fichier de langue
# Ajout de la ligne d'avertissement dans /language/french/main.php
# Après la ligne 35, à adapter en fonction de "langue choisie"
/* Added by BlackMelvyn */
$lang['warn_dupe'] = 'La description de votre site est déjà utilisée un trop grand nombre de fois. Merci de la modifier';
###### Fichier des fonctions
# Ajout de la fonction dans /include/functions/basic.php
# A la fin du fichier
/*
* Checks if there are other descriptions like the one provided
* @author Tiger (http://www.seoblackout.com)
* @author adapted by BlackMelvyn (http://www.theblackmelvyn.com)
* @param string $description description provided by the visitor
* @return bool TRUE if description exists FALSE if description is clean
*/
function checkDupe($description){
$description = str_replace('"','',$description);
$desc_cut=wordwrap(stripslashes($desc),100,"<br />",1);
$cut = explode('<br />', $desc_cut);
$cut = $cut[0] ;
$url = 'http://www.google.fr/search?hl=fr&q="'. urlencode($cut).'"&filter=0';
if (function_exists('curl_init')) {
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL,$url);
curl_setopt($ch, CURLOPT_RETURNTRANSFER,1);
$data=curl_exec ($ch);
curl_close ($ch);
}
else {
$data= file_get_contents($url);
}
$page = $data ;
$result = explode('environ ', $page);
$result1 = $result[1] ;
$result2 = explode('pour', $result1);
$result3 = $result2[0] ;
$result3 = trim(strip_tags(str_replace(' ', '', $result3)));
// If more than 5 results found, stop the process
if ($result3 > 5){
return true;
}
else {
return false;
}
}
###### Implémentation de la fonction dans le process
# Utilisation de la fonction dans /include/functions/basic.php
# Après la ligne 79, entre if et else
/* Added by BlackMelvyn */
elseif(checkDupe($description)){
$message = $lang['warn_dupe'];
$link_url = 'javascript:history.go(-1)';
$link_name = $lang['return'];
}
?> |
Vous voici maintenant équipé(e)s pour empêcher le duplicate dans vos annuaires Freeglobes !
Cette mod est actuellement active sur cet annuaire de sites sur la mode, fraîchement lancé, et visiblement, elle fonctionne très bien…
Le but premier de cette mod est de lancer une alerte en cas de duplicate content. A vous ensuite de choisir comment l’exploiter…
En effet, vous pouvez modifier ce script en fournissant une version « markovée » des descriptions qui ne passent pas le test par exemple. De là, vos webmasters sont contents car ils n’ont pas besoin de soumettre une nouvelle fois le formulaire, Google est content car il a des descriptions uniques et vous êtes content(e)s car vous gardez vos fidèles webmasters et restez à une place chaude et confortable de l’index Google. Tout le monde est gagnant !
J’ai plusieurs mods minimes pour les scripts Freeglobes, que je publierai dès que j’aurai un peu plus de temps. Restez à l’écoute
Catégorie: Scripts PHP
Ecrit par admin le Dimanche 26 octobre 2008 à 15:12 - Catégorie Scraping,Scripts PHP
Comment extraire / parser les urls de résultats de recherche de Google ?
Cela fait plusieurs fois qu’on me demande comment extraire les urls de résultats de recherche de Google dans le but de les utiliser pour diverses raisons : recherche de pages de soumission d’annuaires, recherche des pages de blog avec commentaires, pages de forums, commande link ou site…
Voici donc un script php qui permet d’extraires ces urls de Google.
Différentes options sont proposées, comme le nombre de pages à extraire ou le moteur Google où se fera l’extraction ainsi que la langue du moteur.
Code source du script :
Voici le code du script php à copier/coller dans un fichier et à uploader sur votre serveur ou à utiliser en local :
1
2
3
4
5
6
7
8
9
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
126
127
128
129
130
131
132
| <?php
//Script php : Extraction urls Résultats Google
// Copyrights 2008 Seoblackout.com
//http://www.seoblackout.com
//Url script : http://www.seoblackout.com/2008/10/26/extraire-resultats-google/
@set_time_limit(0);
$useragent='Mozilla/5.0';
$regex='<h3 class=r>';
//extension et langue google
if ((isset($_POST['ext'])) && ($_POST['ext']!=''))
{
$ext=strip_tags($_POST['ext']);
if ($ext=='fr') {
$lang='fr';
}
else if ($ext=='com') {
$lang='en';
}
else if ($ext=='es') {
$lang='es';
}
else if ($ext=='de') {
$lang='de';
}
else if ($ext=='ca') {
$lang='en';
}
else if ($ext=='ca2') {
$ext='ca';
$lang='fr';
}
else {
$ext='fr';
$lang='fr';
}
}
else
{
// par défaut, on recherche sur google.fr et lang=fr
$ext='fr';
$lang='fr';
}
//nombre de page à extraire :
if ((is_numeric($_POST['pages'])) && ($_POST['pages']!=''))
{
$c=(strip_tags($_POST['pages'])-1);
}
else
{
//10 pages par défaut, on part de 0 donc 10 pages = 9
$c=9;
}
if ((isset($_POST['kw'])) && ($_POST['kw']!=''))
{
$kw=trim(strip_tags($_POST['kw']));
$pagenum = 0;
$googlefrurl = "http://www.google.".$ext."/search?hl=".$lang."&q=" . urlencode($kw) . "&start=$pagenum";
$url_new = '';
while($pagenum <= $c)
{
if (function_exists('curl_init'))
{
$ch = curl_init();
curl_setopt($ch, CURLOPT_USERAGENT, $GLOBALS['useragent']);
curl_setopt($ch, CURLOPT_URL,$googlefrurl);
curl_setopt($ch, CURLOPT_RETURNTRANSFER,1);
$result=curl_exec ($ch);
curl_close ($ch);
}
else
{
$result= file_get_contents($googlefrurl);
}
preg_match_all('/'.$regex.'<a href="(.*?)"/si', $result, $matches);
$i = 0;
$n = count($matches[1]);
$pagenum++;
$pagenum2 = $pagenum.'0';
$googlefrurl = "http://www.google.".$ext."/search?hl=".$lang."&q=" . urlencode($kw) . "&start=$pagenum2&safe=off&pwst=1&filter=0";
while($i <= $n)
{
$url_new1 = addslashes($matches[1][$i]);
$url_new .= trim($matches[1][$i])."<br>";
$i++;
flush();
}
}
$url_new .= '';
}
?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
<title>Extraction Urls résultats Google</title>
</head>
<body>
<h1>Extraction Urls résultats Google</h1>
<div>
<?php
if ((isset($_POST['kw'])) && ($_POST['kw']!='')) {
echo "<h3>Keyword : ",strip_tags($kw),"</h3>";
echo "<h6>Google Results</h6>";
echo str_replace('<br><br>','<br>',$url_new);
}
?>
<form method="POST" action="<?php echo strip_tags($_SERVER['REQUEST_URI']) ;?>">
<p>Saisir vos mots-clés :</p>
<input name="kw" type="text" size="100" value="<?php if (isset($_POST['kw'])) {echo strip_tags($kw);} ?>">
<p>Nombre de pages à extraire (optionel => 10 pages par défaut):</p>
<input name="pages" type="text" size="3" maxlength="3" value="<?php if (isset($_POST['pages'])) {echo strip_tags($_POST['pages']);} else {echo '10';} ?>">
<p>Moteur :</p>
<select name="ext">
<option value="fr"<?php if (($_POST['ext'])=='fr') {echo ' selected';} ?>>Google.fr (hl=fr)</option>
<option value="com"<?php if (($_POST['ext'])=='com') {echo ' selected';} ?>>Google.com (hl=en)</option>
<option value="es"<?php if (($_POST['ext'])=='es') {echo ' selected';} ?>>Google.es (hl=es)</option>
<option value="de"<?php if (($_POST['ext'])=='de') {echo ' selected';} ?>>Google.de (hl=de)</option>
<option value="ca"<?php if (($_POST['ext'])=='ca') {echo ' selected';} ?>>Google.ca (hl=en)</option>
<option value="ca2"<?php if (($_POST['ext'])=='ca2') {echo ' selected';} ?>>Google.ca (hl=fr)</option>
</select>
<p><input type="submit" value="Go" name="go">
<input type='button' value='Annuler' onclick='location.href="<?php echo strip_tags($_SERVER['REQUEST_URI']) ;?>"'></p>
</form>
<br />
<small>Script proposé par SEO BlackOut : <a href="http://www.seoblackout.com/">référencement</a></small>
</div>
</body>
</html> |
Démo :
Dans la démo, le nombre de résultats extraits est limité à 3 pages uniquement !
http://www.seoblackout.com/scripts/extraire-urls-google.php
Catégorie: Scraping,Scripts PHP
Ecrit par admin le Samedi 13 septembre 2008 à 1:41 - Catégorie Scripts PHP
Script PHP : Classement Google par Pagerank version internationale
Google Logo
Voici une mise à jour du script PHP en libre téléchargement : Classement Google par pagerank et backlinks yahoo (à consulter en préambule), qui vous permet maintenant de chercher sur Google en choisissant la langue du moteur.
Les recherches peuvent se faire désormais sur :
Google.fr
Google.com,
Google.es,
Google.it,
Google.de,
Google.be,
Google.pt,
Google.cn,
Google.co.uk,
Google.co.jp,
Google.ch,
Google.ca,
Google.ru
Démonstration du script
http://www.seoblackout.com/scripts/classement-google-pr/classement-google-pagerank.php
Limite d’affichage à 30 résultats dans la démo.
Téléchargement et installation du script
Télécharger l’archive zippée ci-dessous :
http://www.seoblackout.com/scripts/classement-google-pr/classement-google-pagerank.zip
Décompressez dans un dossier puis uploadez le dossier sur votre ftp et appelez ensuite le script dans votre navigateur.
Exemple : http://www.votre-site-web.com/classement-google-pagerank/
Ce script a été mis à jour par Thomas Soudaz, webmaster d’un blog consacré au Webmarketing & Référencement dont je vous recommande la lecture.
Merci à lui pour avoir partagé sa version Google multilingue ici
Catégorie: Scripts PHP
Ecrit par admin le Lundi 21 avril 2008 à 4:05 - Catégorie Scripts PHP
Voici un script php en libre téléchargement permettant de calculer le positionnement de vos pages web sur Google et Yahoo.
J’ai écrit ce script en testant une classe php nommée htmlsql (une classe qui a de la classe… dont je vous reparlerai plus tard). Cette classe permet de scraper du contenu facilement à l’aide d’une syntaxe simple ressemblant à des requêtes mysql, ici je m’en sers pour scraper les liens.
Cette classe utilise aussi snoopy :
Snoopy est une classe PHP qui simule un navigateur web. Cette classe permet d’extraire le contenu de pages web et de soumettre automatiquement des formulaires.
Démonstration du script :
Vous pouvez voir une démonstration du script sur cette page : outil positionnement Google, Yahoo, Msn et Exalead.
Contenu de l’archive (3 fichiers) :
- snoopy.php
- htmlsql.php
- calcul-positionnement-google-yahoo.php
Téléchargement du script :
» Lire la suite : Script php : calcul positionnement Google et Yahoo
Catégorie: Scripts PHP
Ecrit par admin le Mercredi 13 février 2008 à 4:19 - Catégorie Outils référencement,Scripts PHP
Comment soumettre ou remplir des formulaires automatiquement avec Curl et PHP ?
Soumission automatique de formulaires Curl et PHP
Pour soumettre des données automatiquement à un formulaire, il faut dans un premier temps récupérer les informations obligatoires à saisir. Pour cela, on regarde le code source du formulaire et on extrait les champs à soumettre (on pourrait automatiser cette étape mais ce n’est pas l’objet de cet article).
On peut aussi utiliser l’extension webdeveloper pour Firefox, celle-ci permet de convertir un formulaire POST en GET et donc de voir les variables à passer directement dans l’url :

Cliquez ici pour télécharger cette extension indispensable.
Comment procéder pour remplir un formulaire de façon automatique en lancant un simple script PHP ?
Nous allons utiliser la librairie Curl, supportée par PHP. Curl va nous permettre de soumettre des données de façon automatique tout type de formulaires, commentaires de blogs, annuaires, forums et tout site web ayant des formulaires permettant de laisser des commentaires, messages ou autre…
» Lire la suite : Soumission automatique de formulaires Curl et PHP
Catégorie: Outils référencement,Scripts PHP
Ce script php génére des fautes de frappe pour un mot-clé donné.
Ce script php va vous permettre d’augmenter le trafic vers vos pages web en récupérant les visiteurs qui font des fautes lors de leur recherche sur les moteurs.
Télécharger le code du script :
» Cliquer ici pour télécharger le code source du script
» Lire la suite : Script php générateur de fautes de frappe
Catégorie: Génération de contenu,Outils référencement,Scripts PHP
Ce script PHP permet d’ajouter automatiquement une page web à vos favoris sur Del.icio.us à l’aide de Curl et en utilisant l’api de Del.icio.us.
» Lire la suite : Autosubmit del.icio.us – Script Php Curl
Catégorie: Backlinks,Outils de spam,Scripts PHP