requestshttp

本文章爬下必应壁纸先小试牛刀。狗头保命 狗头保命 狗头保命

爬虫流程概述

上图的流程图大家可以看到,其实爬虫并不麻烦,整个流程就只有三步而已。接下来具体聊聊每一步需要做什么

  • 请求数据:在这里我们需要使用golang中的内置包http包向目标地址发起请求,这一步就完成了

  • 解析数据:这里我们需要对请求到的数据进行解析,因为不是整个请求到的数据我们都需要,我们只需要某些具体的关键的数据而已。这一步也叫数据清洗

  • 数据入库:不难理解,这就是将解析好的数据进行入库操作

实战分析

先到必应壁纸官网上观察,做爬虫的话是需要对数据特别敏感的。这是首页信息,整个页面是非常简洁的

F12

不出意外呢,大家肯定看到的是这样的页面

这个没关系的,只是必应壁纸网站的一些反爬错误而已。(我很久之前爬的时候还没有这个反爬错误)这个是不影响我们操作的

接下来选择这个工具,帮助我们快速定位到我们想要的元素上然后我们就能找到我们所需的图片信息

代码实战

下面是爬取一页的数据

下面是爬取多页数据爬取多页的代码没有多大的改动,我们还是需要先观察网站的特点

发现什么了吗?第一页p=1,第二页p=2,第十页p=10

所以我们直接起一个for循环,然后复用之前爬取单页的代码就行

总结

在我们这个例子中,我们解析网页数据使用的工具的一个第三方包,因为用正则真的太麻烦了

  • 用css选择器:goQuery
  • 用xpath选择器:htmlquery
  • 正则:内置包,不推荐,正则规则不好写

推荐学习:Golang教程