Récupérer page web et la traiter

flo39400 Messages postés 596 Date d'inscription   Statut Membre Dernière intervention   -  
dugenou Messages postés 6087 Date d'inscription   Statut Contributeur Dernière intervention   -
Bonjour,

L'idée est de récupérer un article sur un site qui envoie des données en RSS, afin de prendre le texte et crée sont propre article en hors ligne.

Le seule problème je sais vraiment pas comment faire car j'ai une page complète html php js,....


Comment faire pour filtré tous ces éléments et récupérer seulement ce que j'ai besoin tel que le text et l'illustration.


Merci d'avance.


$homepage = file_get_contents('http://www.01net.com/actualites/geforce-gtx-1080-mini-itx-gigabyte-est-content-d-avoir-la-plus-petite-1250715.html', FILE_USE_INCLUDE_PATH);
echo $homepage;
//Voila une page complète qui déforme mon style que j'ai sur mon site.


A voir également:

1 réponse

dugenou Messages postés 6087 Date d'inscription   Statut Contributeur Dernière intervention   1 452
 
Bonsoir,

J'avais ce problème, voici la solution que j'ai utilisée :

https://forums.commentcamarche.net/forum/affich-34109417-occurence-dans-chaine-de-caracteres
0
flo39400 Messages postés 596 Date d'inscription   Statut Membre Dernière intervention   21
 
Bonsoir, merci de votre réponse.

J'ai essayer comme cela :

$homepage = file_get_contents('http://www.01net.com/actualites/geforce-gtx-1080-mini-itx-gigabyte-est-content-d-avoir-la-plus-petite-1250715.html', FILE_USE_INCLUDE_PATH);
$annonces = substr($homepage, strpos($homepage, '<div class="module mod_wistr3_annonces">'), -2145);

echo $annonces;



Résultat visuellement j'ai rien qui change j'ai la totalité du site et sa modifie le css de mon menu comme avant....
0
dugenou Messages postés 6087 Date d'inscription   Statut Contributeur Dernière intervention   1 452 > flo39400 Messages postés 596 Date d'inscription   Statut Membre Dernière intervention  
 
Bonjour,

Tu as repris mon code sans l'adapter à ton cas.

Il faut déterminer le début et la fin de la partie de code HTML à capturer.

Pour le début, tu peux utiliser une partie de code particulière, dans ton cas, peut-être :

<div class="col-xs-12 col-sm-12 col-md-8">
                    <h1 itemprop="headline"  class="title-ultra titre-article text-center">
                        GeForce


Il faut faire des tests.

Je suppose que le décompte des caractères pour déterminer la fin de la partie de code HTML à capturer n'est pas "-2145" comme dans mon exemple, il faut décompter celui correspondant à la page concernée et l'affiner si besoin.

Ensuite, concernant le CSS, il faut créer une ou des "class" dans ta feuille de styles en reprenant celles présentes dans la partie de code HTML que tu captures, afin d'y appliquer ton propre style.
0
dugenou Messages postés 6087 Date d'inscription   Statut Contributeur Dernière intervention   1 452 > dugenou Messages postés 6087 Date d'inscription   Statut Contributeur Dernière intervention  
 
D'après mon décompte, avec Geany, la fin de la partie de code à capturer serait "-53349". Ce décompte est à affiner après quelques tests.

Tu peux déjà essayer ceci :

$homepage = file_get_contents('http://www.01net.com/actualites/geforce-gtx-1080-mini-itx-gigabyte-est-content-d-avoir-la-plus-petite-1250715.html', FILE_USE_INCLUDE_PATH);
$annonces = substr($homepage, strpos($homepage, '<div class="col-xs-12 col-sm-12 col-md-8">'), -53349);

echo $annonces;
0
dugenou Messages postés 6087 Date d'inscription   Statut Contributeur Dernière intervention   1 452 > dugenou Messages postés 6087 Date d'inscription   Statut Contributeur Dernière intervention  
 
J'ai testé avec ceci :

$homepage = file_get_contents('http://www.01net.com/actualites/geforce-gtx-1080-mini-itx-gigabyte-est-content-d-avoir-la-plus-petite-1250715.html', FILE_USE_INCLUDE_PATH);
$annonces = substr($homepage, strpos($homepage, 47278), -53349);

echo $annonces;


La fin est bonne, mais il manque le début de l'article.

Et avec ceci :

$homepage = file_get_contents('http://www.01net.com/actualites/geforce-gtx-1080-mini-itx-gigabyte-est-content-d-avoir-la-plus-petite-1250715.html', FILE_USE_INCLUDE_PATH);
$annonces = substr($homepage, strpos($homepage, 47277), -53349);

echo $annonces;


Il y a tout le haut de la page.

Il doit y avoir un script qui bloque la capture de l'article ou du moins qui affiche systématiquement le haut de la page.
0