Extracteur d’urls en PHP

Un aller simple pour le PHP !PHP n'en finit pas de m'étonner par sa simplicité, sa vitesse de mise en œuvre. L'exemple que je vous propose ci-dessous vous permettra d'extraire tous les liens href et src à partir d'une page Web.

Extraction des liens par les expressions régulières

Le langage PHP possède deux instructions "magiques" dans le maniement des expressions régulières. Il s'agit de preg_match et surtout de preg_match_all.

<?php /* Contenu du fichier extractsurl.php */ //récupération de l'adresse de la page transmise par la ligne de commande $link=$argv[1]; //stockage du contenu de la page à partir du lien $html=file_get_contents($link); //Extraction de tous les liens dans un tableau preg_match_all('/(href|src)=["\']([^"\']+)["\']/i',$html,$urls, PREG_SET_ORDER); foreach($urls as $url) {     $res[]=$url[2]; } //Tri du tableau de résultats sort($res); //Affichage des résultats foreach($res as $url) {     echo "$url\n"; } ?>

Utilisation du script PHP

A partir de la ligne de commande, tapez tout simplement :

php -f extracturls.php -- "http://www.dsfc.net/"

Si vous me trouvez un langage qui me permet de faire plus court encore avec autant de simplicité, alors je vous offre une bière !

Dsfc Dsfc

Extracteur d’urls en PHP
2 votes, 3.50 avg. rating (77% score)
Tags : , , , , , , ,
Commentaires

Pas encore de commentaire.

Laisser un commentaire

(requis)

(requis)


*