Extraire les urls exterieurs [Fermé]

Signaler
Messages postés
23
Date d'inscription
mercredi 2 octobre 2013
Statut
Membre
Dernière intervention
28 juillet 2015
-
Messages postés
1428
Date d'inscription
mercredi 29 juillet 2009
Statut
Contributeur
Dernière intervention
24 janvier 2019
-
bj !
j'ai essayé de comparer le domaine des liens existants dans une page web avec le domaine du site .
mon script est au dessous

<?php

// It may take a whils to spider a website ...
set_time_limit(10000);

// Inculde the phpcrawl-mainclass
include_once('../PHPCrawl_083/PHPCrawl_083/libs/PHPCrawler.class.php');

// Extend the class and override the handleDocumentInfo()-method
class MyCrawler extends PHPCrawler

{
function handleDocumentInfo(PHPCrawlerDocumentInfo $DocInfo) {
if (PHP_SAPI == "cli") $lb = "\n";
else {
$lb = "<br />";



// Print the URL and the HTTP-status-Code

// Print the refering URL

$file = file_get_contents($DocInfo->url);
preg_match_all('/<a[^>]+href="([^"]+)/i', $file, $urls);
# Affichage

echo '<br/>';
$home_url = parse_url( $_SERVER['HTTP_HOST'] );

foreach($urls as $url){
for($i=0;$i<sizeof($url);$i++){
$link_url = parse_url( $url[$i] );

if( $link_url['host'] != $home_url['host'] ) {

echo " Page requested: ".$DocInfo->url." (".$DocInfo->http_status_code.")".$lb;
echo '<br/>';
echo "<font color=green >"."lien externe : ".$url[$i].$lb."</font>";
echo '<br/>';

}


}
}



}
}
}




$crawler = new MyCrawler();
$crawler->setURL("http://www.tunisie-web.org ");

$crawler->addURLFilterRule("#\.(jpg|gif|png|pdf|jpeg|css|js)$# i");
$crawler->setWorkingDirectory("C:/Users/mayss/Documents/travailcrawl/");
$crawler->go();

?>

il me donne comme output les liens externes mais aussi "http://www.tunisie-web.org"
mais normalement il ne donne pas http://www.tunisie-web.org comme resultat
qq'un peut m'aider !!
merci d'avance

1 réponse

Messages postés
1428
Date d'inscription
mercredi 29 juillet 2009
Statut
Contributeur
Dernière intervention
24 janvier 2019
89
Hello,
je ne comprends pas la question, que devrait faire ce script qu'il ne fait pas ?