C++ 实现网络爬虫(二)

2015-07-20 17:50:07 · 作者: · 浏览: 12
? ? startupWSA();
? ? Go("www.hao123.com", 200);
? ? cleanupWSA();
? ? return 0;
}
复制代码
该爬虫只花了1个小时左右.
?
其实我想说, 写的很烂, 大伙不要喷.
?
?
?
http协议, socket, 正则表达式咱们就不说了..
?
说说这个原理,?
?
所有的 URL 全都放在 urls 这个队列中.
?
首先要 push 一个根 URL.
?
之后爬虫就行动了.
?
过程大概是这样:
?
从urls取出一个URL => 读出URL网页全部内容 => 分析所有URL => 把URL放进 urls => 从 urls 弹出一个 URL.
?
?
?
URL 是 host + get.
?
因此需要一个 binaryString 把它切开.
?
效率也不是很快, 1分钟大概4W条URL, 去掉重复至少也有好几千吧.
?
?