Bonjour,
je veux faire un programme en PHP qui permet d'extraire du texte brut à partir des articles mis en ligne.
et merci d'avance.
Bonjour,
je veux faire un programme en PHP qui permet d'extraire du texte brut à partir des articles mis en ligne.
et merci d'avance.
D'accord.
Et après ?
On vous a menti
PHP, Injection de dépendances et composants
La POO en PHP en 10 minutes pour moins
Suivez-moi sur GitHub et Twitter
N'oubliez pas de vous servir des bouttons , et
Facile !
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21 function html2txt($html){ $search = array('@<script[^>]*?>.*?</script>@si', '@<style[^>]*?>.*?</style>@siU', '@<[\/\!]*?[^<>]*?>@si', '@<![\s\S]*?--[ \t\n\r]*>@' ); $clean = preg_replace($search, '', $html); return $clean; } $articles = array( 'http://google.fr' ); foreach($articles as $article){ $html = file_get_contents($article); $text = html2txt($html); printf('<div>%s</div>', $text); }
encore plus facile : strip_tags
J'ai trouvé cette solution avec curl
Code : Sélectionner tout - Visualiser dans une fenêtre à part
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 function recuperer_page_http($url, $timeout = 10, $nom_local = '', $post = NULL) { if (extension_loaded('curl')) { $ch = curl_init($url); // configuration des options curl_setopt($ch, CURLOPT_HEADER, 0); curl_setopt($ch, CURLOPT_PROXY, "insérer le proxy"); -- optionnel curl_setopt($ch, CURLOPT_TIMEOUT, $timeout); curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, $timeout); /*On indique à curl de suivre les redirections par le header http location*/ curl_setopt($ch, CURLOPT_FOLLOWLOCATION, true); if ($nom_local) { $fp = fopen($nom_local, 'w') or die("Le fichier '$nom_local' n'a pu être ouvert en écriture"); curl_setopt($ch, CURLOPT_FILE, $fp); } else { curl_setopt($ch, CURLOPT_RETURNTRANSFER, TRUE); } if ($post) { curl_setopt($ch, CURLOPT_POST, TRUE); curl_setopt($ch, CURLOPT_POSTFIELDS, $post); } $ret = curl_exec($ch); if ($nom_local) { fclose($fp); } if ($ret === FALSE) { die("Une erreur a été rencontrée : " . curl_error($ch)); } curl_close($ch); return $ret; } else { die("Erreur lors de l'utilisation de la biblio CURL"); } }
bien joué t'as recrée la fonction copy ...
strip_tags a des comportements bizzares desfois (lorsque le HTML est invalide par exemple) : http://fr.php.net/manual/fr/function...ags.php#100995
Je préfère une solution simple qui supprime les tags et laisse le texte.
Vous avez un bloqueur de publicités installé.
Le Club Developpez.com n'affiche que des publicités IT, discrètes et non intrusives.
Afin que nous puissions continuer à vous fournir gratuitement du contenu de qualité, merci de nous soutenir en désactivant votre bloqueur de publicités sur Developpez.com.
Partager