Récupérer contenu d'une page dans une base de données
crepijules
Messages postés
74
Date d'inscription
Statut
Membre
Dernière intervention
-
crepijules Messages postés 74 Date d'inscription Statut Membre Dernière intervention -
crepijules Messages postés 74 Date d'inscription Statut Membre Dernière intervention -
Bonjour à tous,
D'abord, merci d'être là pour essayer de m'aider !
J'explique mon problème : j'ai un site internet qui m'affiche des informations, que je dois copier-coller à chaque fois dans un tableau Excel, puis revenir sur le site, accéder à la page suivante, et ensuite répéter l'opération.
Cela prend énormément de temps, et je me demandais si il n'y avait pas un simple moyen de récupérer le contenu d'une page (pour ensuite l'exporter dans une base de données/un fichier texte, mais j'arrive à faire cette partie tout seul par la suite).
J'ai déjà crée une page avec une iframe pour afficher le site qui contient les informations, tout fonctionne bien, je peux afficher les informations du site externe sur la page de mon site.
J'ai aussi pu trouver quelques exemples que j'ai adapté, mais ils ne fonctionnent pas très bien...
Merci d'avance pour votre aide !
PS : J'ai choisi la catégorie PHP, car j'aimerais aussi avoir un tout petit peu d'aide pour adapter cela et récupérer le contenu dans PHP, pour que je puisse ensuite le traiter comme je le souhaite.
D'abord, merci d'être là pour essayer de m'aider !
J'explique mon problème : j'ai un site internet qui m'affiche des informations, que je dois copier-coller à chaque fois dans un tableau Excel, puis revenir sur le site, accéder à la page suivante, et ensuite répéter l'opération.
Cela prend énormément de temps, et je me demandais si il n'y avait pas un simple moyen de récupérer le contenu d'une page (pour ensuite l'exporter dans une base de données/un fichier texte, mais j'arrive à faire cette partie tout seul par la suite).
J'ai déjà crée une page avec une iframe pour afficher le site qui contient les informations, tout fonctionne bien, je peux afficher les informations du site externe sur la page de mon site.
J'ai aussi pu trouver quelques exemples que j'ai adapté, mais ils ne fonctionnent pas très bien...
<html> <head> </head> <body> <center> <button onclick="myFunction()">Sauvegarder</button> <iframe id="iframe_id" title="Inline Frame Example" width="100%" height="90%" src="https://site-externe.com/"> </iframe> <p id="p1">VIDE</p> </center> <script> function myFunction(){ document.getElementById("p1").innerHTML = document.getElementById("iframe_id").contentWindow.document.body.innerHTML; } </script> </body> </html>
Merci d'avance pour votre aide !
PS : J'ai choisi la catégorie PHP, car j'aimerais aussi avoir un tout petit peu d'aide pour adapter cela et récupérer le contenu dans PHP, pour que je puisse ensuite le traiter comme je le souhaite.
A voir également:
- Récupérer contenu d'une page dans une base de données
- Supprimer une page word - Guide
- Recuperer message whatsapp supprimé - Guide
- Comment recuperer une video sur youtube - Guide
- Imprimer tableau excel sur une page - Guide
- Base de registre - Guide
6 réponses
yg_be
Messages postés
23541
Date d'inscription
Statut
Contributeur
Dernière intervention
Ambassadeur
1 584
bonjour,
je ne comprends pas bien en quoi ta page html va t'aider à récupérer, via php, des données à exporter.
pourquoi as-tu choisi PHP? peux-tu décrire ton environnement?
je ne comprends pas bien en quoi ta page html va t'aider à récupérer, via php, des données à exporter.
pourquoi as-tu choisi PHP? peux-tu décrire ton environnement?
Bonjour,
Merci beaucoup pour cette réponse,
En fait, j'ai un petit serveur web sur lequel j'héberge quelques pages (pas de vrais sites, juste des petits tests, bricolages etc). J'ai accès par contre à un autre vrai site (un truc officiel quoi), qui affiche des informations sur des pages html, exemple :
Et ce site contient des centaines de pages (je sais pas exactement, mais enfin c'est pour dire que c'est quasi impossible à la main)
Du coup, j'aimerais pouvoir cliquer sur les différentes pages du site, et ensuite avoir quelque chose qui tourne de mon coté (pas forcément sur mon ordinateur, ca peut, et c'est ce que je trouvais le plus simple, une page que j'héberge sur mon serveur, contenant une iframe et un petit script pour pouvoir récupérer le contenu de ce qui est affiché dans l'iframe).
Le problème c'est que mes différents essais n'ont pas fonctionné, et que je suis un peu perdu au niveau de la récupération du code du serveur distant.
Merci d'avance pour cette aide
Merci beaucoup pour cette réponse,
En fait, j'ai un petit serveur web sur lequel j'héberge quelques pages (pas de vrais sites, juste des petits tests, bricolages etc). J'ai accès par contre à un autre vrai site (un truc officiel quoi), qui affiche des informations sur des pages html, exemple :
<h1>Titre page numero 123</h1> <div> <p>Première info:</p> <p>Blablabla</p> </div>
Et ce site contient des centaines de pages (je sais pas exactement, mais enfin c'est pour dire que c'est quasi impossible à la main)
Du coup, j'aimerais pouvoir cliquer sur les différentes pages du site, et ensuite avoir quelque chose qui tourne de mon coté (pas forcément sur mon ordinateur, ca peut, et c'est ce que je trouvais le plus simple, une page que j'héberge sur mon serveur, contenant une iframe et un petit script pour pouvoir récupérer le contenu de ce qui est affiché dans l'iframe).
Le problème c'est que mes différents essais n'ont pas fonctionné, et que je suis un peu perdu au niveau de la récupération du code du serveur distant.
Merci d'avance pour cette aide
Bonjour,
Pour récupérer des données de pages externes, tu peux te tourner vers la fonction php file_getcontents
ou vers du Curl.
Mais avant tout .. pour pomper du contenu qui n'est pas à toi.. tu dois en demander l'autorisation au propriétaire du site...
Pour récupérer des données de pages externes, tu peux te tourner vers la fonction php file_getcontents
ou vers du Curl.
Mais avant tout .. pour pomper du contenu qui n'est pas à toi.. tu dois en demander l'autorisation au propriétaire du site...
Merci beaucoup pour cette réponse ultra rapide :)
En fait, le problème avec Curl par exemple, c'est qu'on spécifie bien une url exacte pointant vers le contenu, et le problème sur le site externe est qu'il faut se connecter...
De plus, la programmation du site distant est très étrange, puisque l'url ne change pas tout au long de la visite du site, c'est a dire que l'url est la même pour chaque page du site, c'est juste qu'autre chose est affiché
Merci pour cette aide
Edit : Pas de soucis, j'ai déjà contacté le propriétaire du site, il est d'accord pour que j'utilise un moyen pour récupérer ces informations sans que ca perturbe son site, et n'a pas pu me les donner directement (car il ne maitrise pas trop les bases de données, et que ce n'est pas lui qui a crée le site, il en est juste le propriétaire). Il m'a indiqué quelques autres contraintes comme par exemple quelques pages (en me donnant le titre exact), qu'il ne souhaite pas que je télécharge, du coup ce que je pense faire est directement les supprimer ou ne pas les enregistrer avec le traitement à la fin par PHP
En fait, le problème avec Curl par exemple, c'est qu'on spécifie bien une url exacte pointant vers le contenu, et le problème sur le site externe est qu'il faut se connecter...
De plus, la programmation du site distant est très étrange, puisque l'url ne change pas tout au long de la visite du site, c'est a dire que l'url est la même pour chaque page du site, c'est juste qu'autre chose est affiché
Merci pour cette aide
Edit : Pas de soucis, j'ai déjà contacté le propriétaire du site, il est d'accord pour que j'utilise un moyen pour récupérer ces informations sans que ca perturbe son site, et n'a pas pu me les donner directement (car il ne maitrise pas trop les bases de données, et que ce n'est pas lui qui a crée le site, il en est juste le propriétaire). Il m'a indiqué quelques autres contraintes comme par exemple quelques pages (en me donnant le titre exact), qu'il ne souhaite pas que je télécharge, du coup ce que je pense faire est directement les supprimer ou ne pas les enregistrer avec le traitement à la fin par PHP
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
En fait mon iframe affiche le site externe directement, mais je n'arrive pas vraiment à récupérer le code source automatiquement de cette iframe, pour ensuite le transmettre à Php pour que je puisse le traiter comme il faut.
Ma page fait actuellement : Affichage de l'iframe
Ce que je dois faire manuellement : Me connecter au site distant à travers l'iframe de mon site
Ce que je souhaiterais effectuer automatiquement : Ajouter un "petit" script sur ma page, pour qu'il puisse récupérer le code source de ce qui est affiché dans l'iframe
Ce que je dois faire manuellement : Me connecter au site distant à travers l'iframe de mon site
Ce que je souhaiterais effectuer automatiquement : Ajouter un "petit" script sur ma page, pour qu'il puisse récupérer le code source de ce qui est affiché dans l'iframe
Ah hum je crois que mon dernier message a été supprimé, mais en fait je crois que je suis sur une piste (qui dérive un peu de la question originale).
En copiant-collant la page dans word, j'arrive simplement à récupérer toutes les informations nécessaires. Par contre, j'aimerais maintenant adapter cette partie de document word en informations pour Php.
En fait, j'avais pensé copier coller ensuite le document word dans un simple formulaire Html pour qu'ensuite Php puisse traiter les informations de ce formulaire, en séparant par ligne/caractère et informations (je pense que j'arriverai à trouver les fonctions nécessaires que je ne connais pas par coeur dans la documentation de php, et en faisant des simples recherches sur ce bon vieux Google)
Le seul problème qui reste, c'est traiter une partie du copié-collé, qui elle contient une image et des couleurs de texte, ce que les formulaires html ne supportent pas par défaut.
Je vais faire quelques recherches, mais si jamais quelqu'un a une idée/une piste, je suis preneur !
En copiant-collant la page dans word, j'arrive simplement à récupérer toutes les informations nécessaires. Par contre, j'aimerais maintenant adapter cette partie de document word en informations pour Php.
En fait, j'avais pensé copier coller ensuite le document word dans un simple formulaire Html pour qu'ensuite Php puisse traiter les informations de ce formulaire, en séparant par ligne/caractère et informations (je pense que j'arriverai à trouver les fonctions nécessaires que je ne connais pas par coeur dans la documentation de php, et en faisant des simples recherches sur ce bon vieux Google)
Le seul problème qui reste, c'est traiter une partie du copié-collé, qui elle contient une image et des couleurs de texte, ce que les formulaires html ne supportent pas par défaut.
Je vais faire quelques recherches, mais si jamais quelqu'un a une idée/une piste, je suis preneur !
En fait, en bricolant quelques heures, j'ai réussi à faire un petit script (très mal rédigé, pas très propre et pas optimisé, mais qui fonctionne très rapidement, et sans aucun problème, ce qui me convient parfaitement).
Il arrive a récupérer automatiquement les données que j'ai copié-collé dans word, puis ensuite dans un .txt pour que php puisse facilement le traiter.
La solution la plus simple (à mon gout) est de copier-coller l'intégralité de la page affichée (CTRL + A et CTRL + C) dans word (a la suite une page de l'autre, sans mise en forme précise), puis ensuite copier coller le word dans un .txt, puis l'uploader vers le serveur (pour l'instant manuellement, mais dans le futur très proche je ferais un petit formulaire tout simple).
Ensuite, Php traite le fichier .txt, ajoute les infos dans la BDD, et tout marche parfaitement.
Le seul petit problème restant est qu'il manque une toute petite partie des infos (lors de la conversion de word en txt) : les images + les couleurs de texte. Pour l'instant je les ajoute manuellement (la plus grande partie du travail étant faite par Php, c'est à peu près faisable de faire le reste manuellement), même si ce serait top de pouvoir le faire de manière totalement automatisée.
Une idée pour transférer des couleurs de textes dans word en infos utilisables dans le .txt ? Comme par exemple entourer les caractères en couleur par des genres de balises, exemple : (ne pouvant pas écrire en couleur, ce qui est souligné représente la couleur)
Mon texte avec une partie verte --> Mon texte avec une partie <couleur_vert>verte</couleur_vert>
Pareil pour les images, comme elles viennent d'une url, serait il possible de coller l'url de l'image dans le .txt ?
Merci d'avance pour toute cette aide :)
Il arrive a récupérer automatiquement les données que j'ai copié-collé dans word, puis ensuite dans un .txt pour que php puisse facilement le traiter.
La solution la plus simple (à mon gout) est de copier-coller l'intégralité de la page affichée (CTRL + A et CTRL + C) dans word (a la suite une page de l'autre, sans mise en forme précise), puis ensuite copier coller le word dans un .txt, puis l'uploader vers le serveur (pour l'instant manuellement, mais dans le futur très proche je ferais un petit formulaire tout simple).
Ensuite, Php traite le fichier .txt, ajoute les infos dans la BDD, et tout marche parfaitement.
Le seul petit problème restant est qu'il manque une toute petite partie des infos (lors de la conversion de word en txt) : les images + les couleurs de texte. Pour l'instant je les ajoute manuellement (la plus grande partie du travail étant faite par Php, c'est à peu près faisable de faire le reste manuellement), même si ce serait top de pouvoir le faire de manière totalement automatisée.
Une idée pour transférer des couleurs de textes dans word en infos utilisables dans le .txt ? Comme par exemple entourer les caractères en couleur par des genres de balises, exemple : (ne pouvant pas écrire en couleur, ce qui est souligné représente la couleur)
Mon texte avec une partie verte --> Mon texte avec une partie <couleur_vert>verte</couleur_vert>
Pareil pour les images, comme elles viennent d'une url, serait il possible de coller l'url de l'image dans le .txt ?
Merci d'avance pour toute cette aide :)