C++实现简单爬虫教程:从原理到实战,轻松爬取两万张图片
前言:

我目前主要学习方向是c++,看到网上基本上都是用python写的爬虫,我也试验过,确实非常方便,几行代码就可以解决,插图就是因为python封装的太好了,太简单了,让很多人,包括我一开始,都很难理解爬虫的原理。因此,我就思考是否可以用C++来实现一个简单的爬虫。
最后成功实现了C++爬虫从一个图片网站爬取了近两万多张图片,所以记录下来供大家学习
有兴趣的同学可以直接下载源码对比学习,这里下载源码
5月17日更新:
您也可以进入我的公众号查看升级优化版的爬虫代码文章,以及完整的代码,以及持续更新的资源!
文章目录一、首先手动爬虫,了解爬虫原理
首先我们要知道网页的原理,比如一页显示图片,右键查看网页源码
(考虑到程序的特殊性,避免不必要的麻烦,而且不方便显示网站名称,可以自己找图片网站替换,尽量和本文的网站格式类似。)
(当然,你也可以下载我的源码,里面有详细的注释。
网页源码如图:
为了方便演示爬虫原理,可以在源代码页上全部选择CTRL+A,然后Ctrl+C复制,然后在桌面上新建一个TXT文本。
然后保存退出,修改文件后缀.html
修改前:
修改后:
然后直接点击该文件,找到与之前网站显示内容相同的网页,但显示风格发生了变化。
至此,我们就完成了一次手动爬网页
而这次我们要爬取的不是网页,而是网页上显示的图片,所以这还不够
2.尝试手动抓取图片
如上所诉,图片是显示在网页上的,所以我们要尝试在网页上找到图片的地址
在网页源码中很容易找到
如图所示:
当我尝试点击IMG的链接时,我发现一张图片显示的是之前网站上看到的图片。
然后右键单击图片并保存任意位置
至此,我们就完成了手动抓取图片的过程
四、寻找网页规律
完成一次手动爬取一个网页和一张图片后,我们可以发现,即使使用程序代替手动,每次爬取的图片也是有限的,因为大量的图片存储在大量不同的网页中,所以我们还需要寻找各个网页之间的规律