Vérifie l'existence d'un lien dans une page cible

  Information

Vérifie l'existence d''un lien dans une page cible, pouvant servir à un Web Crawler et vérifier vos Back Links.

Ce script provient justement d''une source sur ce site, par KOogar. Merci.

Elle m''inspire énormément depuis. Ici vous pourriez même faire un insert dans une base de données, afin de créer un véritable web crawler. Pour chaque page qu''il trouve, il le mettrait dans la table des pages, et fait suivre automatiquement les pages pour les liens, il pourrait insérer les liens dans une autre table, et suivre les liens une fois que toutes les pages seraient parcourues. Ou rechercherait aussi des courriels, pour trouver ou exactement les crawlers attrapent les courriels pour nous faire du spam. Tout cela pour dire que dans le fond, on peut facilement remplir un toile web complète en recherchant sans arret, sans avoir à monter une application logicielle. Elle peut même erre postée partout, et se dupliquer de facon autonome et démarrer des processus spectaculairement.

Je verrais aussi un très bon outils pour le référencement et d''optimisation pour rechercher si les termes désirés de vos clients sont justement dans leurs pages, et le nombre de fois. Je suis en ce moment sur la conception d''une application puissante qui appelle les pages de google, ou tout autre site web, en lui envoyant un terme et recherche dans la page de résultat si un site web déterminé est dans ces résultats De plus il donne la position exacte, dans la page exacte. Donc, vous pourrier savoir si le site web de comptabilité de votre client sort dans google, selon le terme recherché, et d''obtenir précisément sa position. Le plus merveilleux, automatisé tous les jours, en procurant ainsi un journal de position de vos clients.

Les possibilités sont infinies à mon avis. Imaginez, en donnant un user et pass à votre client, et lui dire d''aller voir en temps réel son positionnement , parle biais de Ajax et ce script. Incroyable. 

  code source classé dans  Applications

 
 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    
                               
/*---------------------------------------------------------------*/
/*
Titre : Vérifie l'existence d'un lien dans une page cible

URL : https://phpsources.net/code_s.php?id=298
Auteur : Sebastienjulien
Date édition : 03 Sept 2007
Date mise a jour : 19 Aout 2019

Rapport de la maj:
- fonctionnement du code vérifié
Date mise a jour : 21 Jan 2026

Rapport de la maj:
- refactoring du code en PHP 8
- fonctionnement du code vérifié en PHP 8
*/
/*---------------------------------------------------------------*/?>

<form name="form" action="" method="post">
Source : <input type=text name=source size=50 value="">
Link : <input type=text name=link size=50 value="">
<input type=submit value=chercher>
</form>

<?php

// url source
$source = isset($_POST["source"]) ? $_POST["source"] : "";
// url cible
$link = isset($_POST["link"]) ? $_POST["link"] : "";

if (isset($_POST["source"])) {
$fp=fopen($source,"r");
$chaine = '';
if($fp)
{
while(!feof($fp))
{
$chaine .= fgets($fp,1024);
}
}

$masque = '#';
$masque .= '([http|ftp|https]+://';
$masque .= '[www\.]?';
$masque .= '[\.\-a-zA-Z0-9]*';
$masque .= '[a-zA-Z]{2,4}?';
$masque .= '[\?/\=\&\-_.a-zA-Z0-9]+?';
// si vous avez + de répertoires a analyser, ajouter + de lignes
// comme la ligne modèle ci dessous :
$masque .= '[\?/\=\&\-_.a-zA-Z0-9]+?';
// fin ligne modèle
$masque .= '[\?/\=\&\-_.a-zA-Z0-9]+)';
$masque .= '#i';
// FIN MASQUE

preg_match_all($masque,$chaine,$out,PREG_SET_ORDER);



$i=-1;
$compte=-0;
$out = [];

while ($i < count($out))
{
$i++;
// affiche tous les elements du tableau
// vous pouvez decocher la ligne ci dessous
// pour lister tous les elements du tableau

if (!is_null($out) && isset($out['key'])) {

if($out[$i][1] == "$link")
{
echo "<b><font color=blue size=4>".$out[$i][1].
"</font></b><br>";
$compte++;
}
else
{
echo $out[$i][1]."<br>";
}
}

else { $out = [];
}

}
}
// Check if form is submitted
if ($_SERVER['REQUEST_METHOD'] === 'POST') {
echo "<pre>"; // Preserve formatting for arrays
print_r($_POST); // Print the POST data
echo "</pre>";
}



if (isset($compte) and $compte > 0) echo "<b>Le lien existe </b> (".
$compte." x )";
?>

      Fonctions du code - Doc officielle PHP

Détail    php.net  
Description
Versions PHP
   count
Compte le nombre d'éléments d'un tableau ou le nombre de propriétés d'un objet
PHP 4, 5, 7 et 8
   echo
Affiche une chaîne de caractères
PHP 4, 5, 7 et 8
   feof
Teste la fin du fichier
PHP 4, 5, 7 et 8
   fgets
Renvoie la ligne courante sur laquelle se trouve le pointeur du fichier
PHP 4, 5, 7 et 8
   fopen
Ouverture d'un fichier ou d'une URL
PHP 4, 5, 7 et 8
   isset
Détermine si une variable est affectée
PHP 4, 5, 7 et 8
   is_null
Indique si une variable vaut NULL (PHP 4 >= 4.0.4, PHP 5, PHP 7)
PHP 4, 5, 7 et 8
   preg_match_all
Expression rationnelle globale
PHP 4, 5, 7 et 8
   print_r
Affiche des informations lisibles pour une variable
PHP 4, 5, 7 et 8

   Dites merci aux auteurs pour leurs travail, ça ne coûte rien et ça fait toujours plaisir wink

 Autres snippets qui pourraient vous intéressez

Vérifie l'existence d'une table

Compatibilité : PHP 5, PHP 7, PHP 8

Fonction qui vérifie l'existence d'une table dans une base de données. La fonction retourne TRUE en cas de succès.

Vérifier la validité et l'existence d'une date

Compatibilité : PHP 5, PHP 7, PHP 8

Codes pour vérifier si une date existe via la fonction checkdate () et une autre fonction pour vérifier si le format de date est bien valide.

Test l'existence de doublons dans un tableau associatif

Compatibilité : PHP 5, PHP 7, PHP 8

Fonction qui permet de savoir si le tableau passé en argument contient des doublons. La fonction renvoie true si il y a au moins 1 doublon, sinon false.

Empêche 1 page d'etre stockée en cache

Compatibilité : PHP 5, PHP 7, PHP 8

Empêche la page d'etre stockée en cache. Utile pour des espaces membres et pour empêcher le hack du cache navigateur.

Remplace toute les URL par un lien en dur

Compatibilité : PHP 5, PHP 7, PHP 8

URL liens - 2019 (maj) Ajoute la balise HTML a href a toute les urls d'un texte. 5 exemples sont fournis dans le code.

* Requêtes exécutées avec Recherche Contextuelle
avatar

Sebastienjulien

  03 Sept 2007

  SOURCE   Télécharger

Information sur les mises à jour

Dernière mise à jour :

    19 Aout 2019
    fonctionnement du code vérifié

    21 Jan 2026
    refactoring du code en PHP 8
    fonctionnement du code vérifié en PHP 8

9 809 Vues
Compatibilité du code
PHP 5, 7 et 8+