dog反过来就是god。
每一个dog的前世是god的化身..
话虽如此,我们还是需要用技术武装自己。
那么,本节我们需要准备到的东西一个是http,一个是cheerio;
利用cheerio,把你想要下载的网络图片保存起来欣赏..
我还记得以前把整个网页爬下来然后用正则匹配下来,这一招也管用。但各种匹配就容易繁琐,那么今天我们就用别人的成果---cheerio包去匹配我们所需要的网络资源。
什么是cheerio呢?
一句话概述:它是应用在服务器端的jQuery。
不是所有的牛奶都叫特仑苏,不是所有的jQuery的功能都和cherrio一样。实际上,cheerio是jQuery的子集,也有一些新的方法出现,比如toArray,clone等。这些都是方便了我们在服务器端去操控获取代码,进行过滤等相关操作。
打开cmd,在desktop执行以下功能:
新建一个文件,01test.js
引入chheerio 和http
好。现在我们已经把基本的都准备好,如何利用chherio操作呢?
看官方文档:
我们仔细观察,发现这些代码操作方式和jQuery是从一个模子里出来的啊。
声明一个常量 $,自定义也可以。不过为了跟jQuery有一个联系,推荐直接用官方的。
先加载所需要获取的代码:
和jQuery操作方法一样:
我把npm 官方上cherrio里的操作方法都copy下来。我们先观察,在测试,然后应用。
具体参考以下cheerio官方:
在实际爬取过程中,我们根据需要针对性使用以上的api。
比如,当我们需要获取网页图片时:思路如下:
第一步: 获取整个网页的代码
这个需要用到node 核心api ---http
第二步:通过cheerio获取网页代码里包含src的属性,并且该属性限制在图片(png,jpg,jpeg,gif等格式).
把所有的这些图片放在一个数组里
第三步:建立单个图片下载的函数,并保持到文件夹
第四步:通过toArray方法,把数组里所有的图片链接进行下载。
下载期间会遇到一些坑,所以还需要做一些逻辑判断和处理。
后续>
作者:yixiang/北京
介绍:每日一小步,愿与你同行~
领取专属 10元无门槛券
私享最新 技术干货