mirror of
https://github.com/pierre42100/comunic
synced 2025-11-23 13:18:10 +00:00
First commit
This commit is contained in:
49
3rdparty/analysing_page/analyser_fr.php
vendored
Executable file
49
3rdparty/analysing_page/analyser_fr.php
vendored
Executable file
@@ -0,0 +1,49 @@
|
||||
<?php
|
||||
//Fonction d'analyse du contenu d'une page pour en extraire la description, le titre et l'image
|
||||
function analyse_source_page_extrait_description($source)
|
||||
{
|
||||
//Préparation de l'analyse
|
||||
$titre_page = null;
|
||||
$description_page = null;
|
||||
$image_page = null;
|
||||
|
||||
|
||||
//Analyse des données
|
||||
preg_match_all('#<meta (.*?)>#is', $source, $resultat,PREG_PATTERN_ORDER);
|
||||
|
||||
//Traitement
|
||||
$liste_types = array(
|
||||
array('titre' => 'titre_page', 'masque' => '<property="og:title">', 'debut' => 'content="', 'fin' => '"'),
|
||||
array('titre' => 'titre_page', 'masque' => "<property='og:title'>", 'debut' => "content='", 'fin' => "'"),
|
||||
array('titre' => 'description_page', 'masque' => "<property='og:description'>", 'debut' => "content='", 'fin' => "'"),
|
||||
array('titre' => 'description_page', 'masque' => '<property="og:description">', 'debut' => 'content="', 'fin' => '"'),
|
||||
array('titre' => 'image_page', 'masque' => '<property="og:image">', 'debut' => 'content="', 'fin' => '"'),
|
||||
array('titre' => 'image_page', 'masque' => "<property='og:image'>", 'debut' => "content='", 'fin' => "'"),
|
||||
);
|
||||
|
||||
//Parcours de la liste
|
||||
foreach($resultat[1] as $traiter)
|
||||
{
|
||||
//Parcours des types de traitement
|
||||
foreach($liste_types as $infos_traitement)
|
||||
{
|
||||
//Pré-traitement
|
||||
$traiter = str_replace(' =', '=', $traiter);
|
||||
|
||||
//Vérification de la présence des informations
|
||||
if(preg_match($infos_traitement['masque'], $traiter))
|
||||
{
|
||||
$debut = $infos_traitement['debut'];
|
||||
$fin = $infos_traitement['fin'];
|
||||
$titre = $infos_traitement['titre'];
|
||||
$contenu = strstr($traiter, $debut);
|
||||
$contenu = str_replace($debut, '', $contenu);
|
||||
$contenu = strstr($contenu, $fin, true);
|
||||
${$titre} = $contenu;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
//Renvoi du résultat
|
||||
return array('titre' => $titre_page, 'description' => $description_page, 'image' => $image_page);
|
||||
}
|
||||
Reference in New Issue
Block a user