C:如何阅读网页

时间:2011-08-15 12:07:32

标签: c sockets curl

我正在尝试通过localhost,端口80打开与网页(例如www.google.com)的连接。

如何在C中以编程方式执行此操作?我想获取所有HTML标题而不仅仅是内容;(

我希望有人可以提供帮助。

非常感谢,

3 个答案:

答案 0 :(得分:4)

以下是有关如何使用libcurl执行此操作的示例代码:

http://curl.haxx.se/libcurl/c/getinmemory.html

还有另一个,它向您展示如何获取一些标题数据:

http://curl.haxx.se/libcurl/c/getinfo.html

这些示例和许多其他示例可作为libcurl分发的一部分提供。它应该不仅仅是让你开始。

答案 1 :(得分:2)

汇总过程:

  • 主机名的DNS解析(使用getaddrinfo()
  • 打开流套接字(TCP)到已解析的IP地址和端口
  • 发送GET请求(请参阅:http://en.wikipedia.org/wiki/Hypertext_Transfer_Protocol中的协议)

    GET /index.html HTTP / 1.1  主持人:www.example.com

  • 读取标题 - 由\ r \ n \ r \ n

  • 终止
  • 阅读正文
  • 关闭套接字

答案 2 :(得分:0)

最小的可运行POSIX示例

在这个答案中,我提供了一个最小的可运行POSIX C示例:How to make an HTTP get request in C without libcurl?

它允许您执行以下操作:

./wget example.com

下载http://example.com