资讯专栏INFORMATION COLUMN

node.js爬取数据

weij / 3519人阅读

node.js爬取数据 node可以做很多事情,比如爬虫、通信等等。 今天就先做一个爬虫,爬取一些百度图片。

首先我们需要引入一些模块

</>复制代码

  1. var http = require("http");
  2. var https = require("https");
  3. var fs = require("fs");
  4. var cheerio = require("cheerio");

这里需要注意cheerio是扩展模块需要装一下

</>复制代码

  1. npm install cheerio --save

然后要把这些图片的url地址获取下来

</>复制代码

  1. const wz="http://image.baidu.com/";
  2. var strHtml="";
  3. var resuts=[];//定义一个空数组,将数据内容存在里面
  4. http.get(wz,function(res){
  5. //接收数据
  6. res.on("data",function(data){
  7. strHtml+=data;
  8. });
  9. //接收完成
  10. res.on("end",function(){
  11. var $=cheerio.load(strHtml);
  12. //找到这些图片的位置
  13. $(".img_single_box img").each(function(index,item){
  14. resuts.push($(item).attr("src"))
  15. });
  16. console.log(resuts);
  17. //循环调用图片函数
  18. for(var i=0;i
  19. 然后根据图片URL地址保存成图片

  20. </>复制代码

    1. function saveImage(resuts){
    2. https.get(resuts,function(res){
    3. res.setEncoding("binary");//二进制
    4. var imageData="";//将图片加载到内存中
    5. res.on("data",function(a){
    6. imageData+=a;
    7. }).on("end",function(){
    8. //创建文件夹,如果有就不用创建
    9. if(!fs.existsSync("./images")){
    10. fs.mkdirSync("./images");
    11. };
    12. //保存图片
    13. fs.writeFile(".images/"+Math.random()+".png",imageData,"binary",function(err){
    14. if(!err)
    15. console.log("保存成功");
    16. });
    17. });
    18. });
    19. }

文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。

转载请注明本文地址:https://www.ucloud.cn/yun/89077.html

相关文章

  • 使用Node.js爬取任意网页资源并输出高质量PDF文件到本地~

    摘要:上面只爬取了京东首页的图片内容,假设我的需求进一步扩大,需要爬取京东首页中的所有标签对应的跳转网页中的所有的文字内容,最后放到一个数组中。 showImg(https://segmentfault.com/img/bVbtVeV?w=3840&h=2160); 本文适合无论是否有爬虫以及Node.js基础的朋友观看~ 需求: 使用Node.js爬取网页资源,开箱即用的配置 将爬取到的...

    seasonley 评论0 收藏0
  • 使用Node.js爬取任意网页资源并输出高质量PDF文件到本地~

    摘要:上面只爬取了京东首页的图片内容,假设我的需求进一步扩大,需要爬取京东首页中的所有标签对应的跳转网页中的所有的文字内容,最后放到一个数组中。 showImg(https://segmentfault.com/img/bVbtVeV?w=3840&h=2160); 本文适合无论是否有爬虫以及Node.js基础的朋友观看~ 需求: 使用Node.js爬取网页资源,开箱即用的配置 将爬取到的...

    xiaoxiaozi 评论0 收藏0
  • 使用Node.js爬取任意网页资源并输出高质量PDF文件到本地~

    摘要:上面只爬取了京东首页的图片内容,假设我的需求进一步扩大,需要爬取京东首页中的所有标签对应的跳转网页中的所有的文字内容,最后放到一个数组中。 showImg(https://segmentfault.com/img/bVbtVeV?w=3840&h=2160); 本文适合无论是否有爬虫以及Node.js基础的朋友观看~ 需求: 使用Node.js爬取网页资源,开箱即用的配置 将爬取到的...

    wangym 评论0 收藏0
  • 上天的Node.js之爬虫篇 15行代码爬取京东淘宝资源 【深入浅出】

    摘要:这里由于京东的分界面都使用了,所以我们可以用,总之他们开发能用的选择器,我们都可以用,否则就不可以。 难道爬虫只能用 python 做? 不,我们上天的 Node.js 也可以做! 需要准备的包 Node.js的最新版本 下载地址 Node.js官网 npm 包管理器下载 下载最新的官网版本 Node.js 会自带 npm npm的第三方包 puppeteer 在对应...

    宋华 评论0 收藏0
  • 上天的Node.js之爬虫篇 15行代码爬取京东淘宝资源 【深入浅出】

    摘要:这里由于京东的分界面都使用了,所以我们可以用,总之他们开发能用的选择器,我们都可以用,否则就不可以。 难道爬虫只能用 python 做? 不,我们上天的 Node.js 也可以做! 需要准备的包 Node.js的最新版本 下载地址 Node.js官网 npm 包管理器下载 下载最新的官网版本 Node.js 会自带 npm npm的第三方包 puppeteer 在对应...

    104828720 评论0 收藏0

发表评论

0条评论

weij

|高级讲师

TA的文章

阅读更多
最新活动
阅读需要支付1元查看
<