C, Linux, Socket pour downloader un .html
frzburn
Messages postés
200
Statut
Membre
-
kilian Messages postés 8675 Date d'inscription Statut Modérateur Dernière intervention -
kilian Messages postés 8675 Date d'inscription Statut Modérateur Dernière intervention -
Salut!
J'en ai ras-le-bol... J'ai chercher autant comme autant sur le net, des tutoriaux, des sources, des forums... pour trouver comment faire pour aller recuperer qqch sur internet en c. Rien a faire!!!
Tout ce que j'ai trouver, c'est en utilisant une fonction du .NET. Mais je fais mon programme en c, et dans Linux!
C'est sur que ca se fait, tout peut se faire! J'ai downloader les sources de wget pour chercher, mais bon dieu, c'est bien trop compliquer et j'ai pas vraiment trouver de reponse.
Tout ce que je veux faire, c'est downloader une page html avec une adresse predefinie, pour ensuite extraire les infos que je veux de cette page...
Qqn aurait pas deja fait ca??
Merci!
==============================================
RTFMFM
J'en ai ras-le-bol... J'ai chercher autant comme autant sur le net, des tutoriaux, des sources, des forums... pour trouver comment faire pour aller recuperer qqch sur internet en c. Rien a faire!!!
Tout ce que j'ai trouver, c'est en utilisant une fonction du .NET. Mais je fais mon programme en c, et dans Linux!
C'est sur que ca se fait, tout peut se faire! J'ai downloader les sources de wget pour chercher, mais bon dieu, c'est bien trop compliquer et j'ai pas vraiment trouver de reponse.
Tout ce que je veux faire, c'est downloader une page html avec une adresse predefinie, pour ensuite extraire les infos que je veux de cette page...
Qqn aurait pas deja fait ca??
Merci!
==============================================
RTFMFM
6 réponses
-
-
Salut,
Mais si tu veux faire ça en C tu as par exemple la bibliotheque libcurl.
En quelques lignes de C c'est réglé.
Exemple pour télécharger la page d'acceuil de CCM:#include <stdio.h> #include <curl/curl.h> #include <curl/types.h> int main(int argc, char **argv) { CURL *handle; // Ressource curl FILE *index; // Fichier destination index=fopen("./index.php3","w"); handle=curl_easy_init(); //Initialisation //Url à spécifier curl_easy_setopt(handle,CURLOPT_URL,"http://www.commentcamarche.net/index.php3"); /* La fonction que l'on va utiliser pour écrire dans le fichier, ici on prend fwrite() */ curl_easy_setopt(handle,CURLOPT_WRITEFUNCTION,fwrite); //On passe le pointeur vers le fichier index curl_easy_setopt(handle,CURLOPT_WRITEDATA,index); //Et c'est parti curl_easy_perform(handle); curl_easy_cleanup(handle); fclose(index); }
Sous Linux avec gcc, il faut compiler ça avec l'option -lcurl
gcc ton_appli.c -o ton_appli.o -lcurl
Et il faut aussi installer libcurl... -
Des infos là dessus:
http://curl.haxx.se/libcurl/c/ -
Waahoo!! Merci kilian, je vais aller essayer ca de ce pas!!
==============================================
RTFMFM -
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question -
Je cherchais depuis un petit moment comment enregistrer le résultat de mes requêtes de manière fiable et rapide pour les traiter ensuite et je suis tombé presque par hasard sur ton post!
Et je dois avouer, ça fonctionne nikel, et je n'ai trouvé cette info nulle part ailleur, c'est quand même un comble :) -
Ah cool :-)
Ben tiens si j'y pense je mettrai cette info dans les astuces....