Programmatically reading a web page(7个答案)昨天关门了。如何下载网页使用C(不与libcurl),操作系统:Win32操作系统
uqzxnwby1#
要下载网页,您需要两样东西:1.建立与Web服务器的通信通道1.管理Web服务器协议以下载页面。对于第一项,看一下套接字API。您需要打开一个套接字,使用send()发送一些数据,从Web服务器接收数据。对于第二项,您需要了解http协议。
bxjv4tth2#
尝试使用wininet API
yvt65v4c3#
您需要做的是“套接字通信”。要获得一个很好的概述,请查看http://web.archive.org/web/20090227031327/http://www.cs.utah.edu/dept/old/texinfo/glibc-manual-0.02/library_15.htmlhttp://web.archive.org/web/20090402133256/http://www.uwo.ca/its/doc/courses/notes/socket/http://wiki.linuxquestions.org/wiki/Connecting_a_socket_in_C最后一个链接来自linuxquestions,但这两个解决方案都是完全跨平台的,与frankodwyer建议的wininet相反,最后一个链接也完全符合你的需要,因为它下载了一个网页。
3条答案
按热度按时间uqzxnwby1#
要下载网页,您需要两样东西:
1.建立与Web服务器的通信通道
1.管理Web服务器协议以下载页面。
对于第一项,看一下套接字API。您需要打开一个套接字,使用send()发送一些数据,从Web服务器接收数据。
对于第二项,您需要了解http协议。
bxjv4tth2#
尝试使用wininet API
yvt65v4c3#
您需要做的是“套接字通信”。要获得一个很好的概述,请查看
http://web.archive.org/web/20090227031327/http://www.cs.utah.edu/dept/old/texinfo/glibc-manual-0.02/library_15.html
http://web.archive.org/web/20090402133256/http://www.uwo.ca/its/doc/courses/notes/socket/
http://wiki.linuxquestions.org/wiki/Connecting_a_socket_in_C
最后一个链接来自linuxquestions,但这两个解决方案都是完全跨平台的,与frankodwyer建议的wininet相反,最后一个链接也完全符合你的需要,因为它下载了一个网页。