2010-05-08 8 views
0

Existe-t-il une bonne bibliothèque simple permettant à C++ de charger une page Web? Je veux juste saisir la source en tant que texte. Je n'utilise aucun IDE ou bibliothèque significative, juste une ligne de commande directe.Accéder à une page Web en C++

Tangentiellement, y a-t-il quelque chose de fondamental qui me manque dans la programmation en C++? Je pense que tout langage couramment utilisé aujourd'hui aurait une foule de fonctionnalités basées sur le Web, étant si central à l'utilisation de l'ordinateur, mais je ne peux trouver aucune discussion sur la façon de l'accomplir. Je me rends compte que C++ précède de manière significative l'Internet moderne, donc il manque de toute capacité de base à cet égard, mais le fait que les bibliothèques pertinentes semblent si rares est déconcertant.

Merci pour votre aide.

+1

Si c'est "juste une ligne de commande", pourquoi ne pas utiliser 'wget'? – Stephen

Répondre

7

Bien sûr, par exemple libcurl est puissant et populaire.

bibliothèques liées à Internet pour C++ sont extrêmement abondants - ils sont tout simplement pas partie de la norme C++, en partie parce que la version actuelle de cette norme est si vieux, mais je suis sûr que ce n'est pas la seule raison . Mais tournez-vous vers le monde des sources ouvertes et vous trouverez plus que ce que vous pouvez faire.

+0

Je dirais qu'il manque principalement frim le std. lib pour la même raison que les threads, les interfaces graphiques, les DB, et tout ce qui est net est manquant: std C++ doit pouvoir s'exécuter dans un environnement qui ne possède aucune de ces choses (y compris les environnements "non hébergés"). –

+0

Je pense que c'est de la politique au comité des normes. Je pense que c'est ce désir d'atteindre la perfection et le consensus qui porte ce coût de temps fou et douloureux - beaucoup de temps - avant chaque norme. – wilhelmtell

+0

@Drew, les environnements "non hébergés" peuvent manquer de nombreuses parties de la bibliothèque standard, telles que par ex. flux de fichiers, ce n'est donc pas une raison logique pour manquer d'autres parties qui pourraient être omises de la même manière par les environnements "pas entièrement hébergés". –

2

libcurl est une bibliothèque C populaire pour récupérer HTTP et d'autres URL. Il y a également cURLpp une liaison C++. Sur Windows, vous avez les API WinINet et WinHTTP.

Je pense que HTTP est un peu trop complexe pour faire partie de la bibliothèque standard C++. La spécification devrait prendre en compte de nombreux détails tels que les serveurs proxy et les types MIME.

Questions connexes