爬虫的工作原理
我们的这个小爬虫主要是对应于搜索引擎的信息采集部分,即对目标网页的下载,分析存在的链接,并加入到新的收集队列中。
主要技术
关键在于网页下载,涉及到套接字与应用层协议编程。
网页下载的基本流程是:
1.获得URL,解析出主机,端口以及资源路径;
2.调用DNS解析程序,将URL转换成ip地址;
3.建立与目标服务器的tcp连接,并构造http请求报文,请求下载目标网页;
4.循环获得服务器端的返回信息,并保存到本地。
DNS(域名系统)
用于网络资源的命名管理,将Internet上的域名与真实的ip地址进行一对一或一对多的映射,用户可以通过输入域名信息,查询DNS服务器,获得真实的ip。
hostent* gethostbyname(const char* strURL);
struct hostent 通过h_addr字段存储解析成功后的ip地址。
注意后面补上这段代码和测试结果。