Bonjour,
Je souhaiterai récuperer la source d'une page web en C et le stocker dans un fichier.
Mon problème est: Comment télécharger la page?
(Je suis novice en C)
Merci d'avance.
Bonjour,
Je souhaiterai récuperer la source d'une page web en C et le stocker dans un fichier.
Mon problème est: Comment télécharger la page?
(Je suis novice en C)
Merci d'avance.
Rien de standard.
Pour un novice, jouer manuellement avec les sockets et le protocole HTTP est hors de question. Mais tu peux tenter d'utiliser des bibliothèques comme curl.
Sous Windows, tu peux aussi utiliser la fonction Win32 UrlDownloadToFile().
SVP, pas de questions techniques par MP. Surtout si je ne vous ai jamais parlé avant.
"Aw, come on, who would be so stupid as to insert a cast to make an error go away without actually fixing the error?"
Apparently everyone. -- Raymond Chen.
Traduction obligatoire: "Oh, voyons, qui serait assez stupide pour mettre un cast pour faire disparaitre un message d'erreur sans vraiment corriger l'erreur?" - Apparemment, tout le monde. -- Raymond Chen.
en faites j'ai été vague dans ma question,
je veux en faites récupérer une page xml et faire des traitement sur le fichier et stocker les infos que je souhaite garder dans une table.
Pour ce qui est de la table je suis ok
les traitements sur les fichiers je pense que je suis ok
par contre récupérer la page me pose probléme
Pour toi je devrai passer par une commande systéme.
Je pense pouvoir apprendre rapidement si je trouve un bon cours sur les sockets.
Es-ce vraiment difficile pour un novice?
Je ne sais pas si ceci est un bon cours, c'est plutôt des notes utiles:
http://emmanuel-delahaye.developpez.com/reseaux.htm
Regarde sur dvp.com si tu trouves des cours.
Le problème majeur, c'est que savoir utiliser les sockets ne suffit pas: Il faut ensuite connaître le protocole HTTP. Franchement, il serait plus simple d'utiliser une bibliothèque comme curl.
SVP, pas de questions techniques par MP. Surtout si je ne vous ai jamais parlé avant.
"Aw, come on, who would be so stupid as to insert a cast to make an error go away without actually fixing the error?"
Apparently everyone. -- Raymond Chen.
Traduction obligatoire: "Oh, voyons, qui serait assez stupide pour mettre un cast pour faire disparaitre un message d'erreur sans vraiment corriger l'erreur?" - Apparemment, tout le monde. -- Raymond Chen.
sur internet on parle beaucoup de la bibliothéque Urlmon.h,
cette bibliothéque te parle?
Apparement la commande URLDownloadToFile est dans la bibliothéque urlmon.h?
Le probléme c'est que c'est un projet pour mon école et mon prof ne semble pas vouloir qu'on utilise des librairies autres que celle du C ANSI.
Un novice se doit d'utiliser tout de suite le bon vocabulaire. Un .h n'est en aucun cas une bibliothèque. Si quelqu'un t'a dit le contraire, tu tapes dessus jusqu'à ce qu'il ait compris.Envoyé par DooSquare
Un . h est un header (fichier d'en-tête) qui sert à décrire les interfaces des fonctions d'un éventuelle bibliothèque.
Alors ton prof est un âne, parce que le C ANSI n'a pas de support pour le réseau.Le probléme c'est que c'est un projet pour mon école et mon prof ne semble pas vouloir qu'on utilise des librairies autres que celle du C ANSI.
Les sockets (BSD ou Winsock2) sont des fonctions systèmes (plus ou moins POSIX.1) accessibles par certains compilateurs.
tout comme Médinoc je te conseille libcurl :
- portable .
- des bon examples sur leurs sites.
- n'est pas spécifique au protocole http , peut utiliser ftp ,etc ...
- une grande flexibilité , callback pour l'écriture de donné .
-libre
Urlmon.h n'est pas une bibliothèque, c'est un fichier d'en-tête de l'API Windows.
Rappelle à ton prof que le C ANSI ne sait pas ce que c'est qu'un socket, ni ce que c'est que le réseau, donc pas moyen en C ANSI. Par contre, tu peux utiliser une bibliothèque portable comme libcurl.
Edit: Voilà ce que c'est de s'interrompre pendant une demi-heure... doublement grillé...
SVP, pas de questions techniques par MP. Surtout si je ne vous ai jamais parlé avant.
"Aw, come on, who would be so stupid as to insert a cast to make an error go away without actually fixing the error?"
Apparently everyone. -- Raymond Chen.
Traduction obligatoire: "Oh, voyons, qui serait assez stupide pour mettre un cast pour faire disparaitre un message d'erreur sans vraiment corriger l'erreur?" - Apparemment, tout le monde. -- Raymond Chen.
Partager