C, Linux, Socket pour downloader un .html

frzburn Messages postés 200 Statut Membre -  
kilian Messages postés 8854 Statut Modérateur -
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
A voir également:

6 réponses

lami20j Messages postés 21644 Statut Modérateur, Contributeur sécurité 3 570
 
0
kilian Messages postés 8854 Statut Modérateur 1 526
 
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...
0
kilian Messages postés 8854 Statut Modérateur 1 526
 
Des infos là dessus:
http://curl.haxx.se/libcurl/c/
0
frzburn Messages postés 200 Statut Membre 45
 
Waahoo!! Merci kilian, je vais aller essayer ca de ce pas!!


==============================================
RTFMFM
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
seb3ange21
 
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 :)
0
kilian Messages postés 8854 Statut Modérateur 1 526
 
Ah cool :-)
Ben tiens si j'y pense je mettrai cette info dans les astuces....
0