广告
返回顶部
首页 > 资讯 > 前端开发 > node.js >Nodejs实现批量下载妹纸图
  • 575
分享到

Nodejs实现批量下载妹纸图

批量Nodejs妹纸图 2022-06-04 17:06:50 575人浏览 八月长安
摘要

听说最近下载妹子图很火? nodejs (javascrpt)自然不能落后~ 虽然从没写过像样的nodejs程序,但作为至少翻过书的前端同学来说,Nodejs用得还蛮顺手的哈~ 花了一点事件学习了下Nod

听说最近下载妹子图很火?

nodejs (javascrpt)自然不能落后~

虽然从没写过像样的nodejs程序,但作为至少翻过书的前端同学来说,Nodejs用得还蛮顺手的哈~
花了一点事件学习了下Nodejs的网页获取和文件下载方法,没事乱捣腾就写了这个半成品的下载器

使用方法:

1)新建一个download目录
2)新建download.js(其实名字随便取),并复制到download目录下
3)复制两段代码到download.js中
4)打开命令行工具,并将当前目录转到与download目录下
5)在命令行中输入:node download.js
6)等着收妹子图吧~

简单的妹子图对象(新增断定下载支持)


var Http = require('http');
var fs = require('fs');
 
function Mzitu(options) {
  this.id = 1;
   
  this.initialize.call(this, options);
  return this;
}
 
Mzitu.prototype = {
  constructor: Mzitu,
  initialize: function _initialize(options) {
    this.baseUrl = options.baseUrl;
    this.dir = options.dir || '';
    this.reg = options.reg;
    this.total = options.total;
    this.page = options.from || 1;
  },
  start: function _start() {
    this.getPage();
  },
  getPage: function _getPage() {
    var self = this,
      data = null;
 
    if (this.page <= this.total) {
      http.get(this.baseUrl + this.page, function (res) {
        res.setEncoding("utf8");
 
        res.on('data', function (chunk) {
          data += chunk;
        }).on('end', function () {
          self.parseData(data);
        });
      });
    }
  },
  parseData: function _parseData(data) {
    var res = [],
      match;
 
    while ((match = this.reg.exec(data)) != null) {
      res.push(match[1]);
    }
 
    this.download(res);
  },
  download: function _download(resource) {
    var self = this,
      currentPage = self.page;
 
    resource.forEach(function (src, idx) {
      var filename = src.substring(src.lastIndexOf('/') + 1),
        writestream = fs.createWriteStream(self.dir + filename);
       
      http.get(src, function (res) {
        res.pipe(writestream);
      });
 
      writestream.on('finish', function () {
        console.log('page: ' + currentPage + ' id: ' + self.id++ + ' download: ' + filename);
      });
    });
     
    self.page++;
    self.getPage();
  }
};

妹子图下载启动方式


var mzitu = new Mzitu({
  baseUrl: 'http://www.mzitu.com/share/comment-page-',
  dir: '',
  reg: /<imgs*src="(.*?)"s*alt=".*"s*/>/g,
  total: 141,
  from: 1
});
 
mzitu.start();

以上所述就是本文的全部内容了,希望大家能够喜欢。

--结束END--

本文标题: Nodejs实现批量下载妹纸图

本文链接: https://www.lsjlt.com/news/12247.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • Nodejs实现批量下载妹纸图
    听说最近下载妹子图很火? Nodejs (javascrpt)自然不能落后~ 虽然从没写过像样的Nodejs程序,但作为至少翻过书的前端同学来说,Nodejs用得还蛮顺手的哈~ 花了一点事件学习了下Nod...
    99+
    2022-06-04
    批量 Nodejs 妹纸图
  • nodejs批量下载图片的实现方法
    今天想获取一大批猫的图片,然后就在360流浪器搜索框中输入猫,然后点击图片。就看到了一大波猫的图片:http://image.so.com/i?q=%E7%8...,我在想啊,要是审查元素,一张张手...
    99+
    2022-06-04
    批量 下载图片 方法
  • nodejs制作爬虫实现批量下载图片
    今天想获取一大批猫的图片,然后就在360流浪器搜索框中输入 猫 ,然后点击图片。就看到了一大波猫的图片: http://image.so.com/i?q=%E7%8... ,我在想啊,要是审查元素,...
    99+
    2022-06-04
    爬虫 批量 下载图片
  • nodejs如何制作爬虫实现批量下载图片
    小编给大家分享一下nodejs如何制作爬虫实现批量下载图片,希望大家阅读完这篇文章之后都有所收获,下面让我们一起去探讨吧!今天想获取一大批猫的图片,然后就在360流浪器搜索框中输入 猫 ,然后点击图片。就看...
    99+
    2022-10-19
  • Shell脚本怎么实现批量下载网络图片
    这篇文章主要介绍“Shell脚本怎么实现批量下载网络图片”,在日常操作中,相信很多人在Shell脚本怎么实现批量下载网络图片问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”Shell脚本怎么实现批量下载网络图片...
    99+
    2023-06-09
  • Android 实现单线程轮循机制批量下载图片
    Android 实现单线程轮循机制批量下载图片listview 在为item 添加从网上下载下来的图片时, 如果每次都整合一个item时都需要new一个Thread去下载图片,listview长时间滑动时会产生大量线程。用单线程轮循机制则可...
    99+
    2023-05-30
    android 单线程 下载图片
  • php如何实现批量压缩下载
    本文操作环境:windows10系统、php 7、thinkpad t480电脑。在php中我们可以借助于ZipArchive类来实现将文件批量压缩打包下载。注意:使用该类之前,linux需开启zlib,windows需取消php_zip....
    99+
    2017-02-22
    php 批量
  • Shell脚本实现批量下载网络图片代码分享
    最近为了做好一个天气预报的项目,需要从Yahoo下载一些天气图标,但是由于图标比较多,有80多张。图标是存储在Yahoo Image网站上的。 迅雷不支持https的下载,虽然可以在浏览器下载,但是在浏览器...
    99+
    2022-06-04
    批量 脚本 代码
  • Python实现Youku视频批量下载功能
    前段时间由于收集视频数据的需要,自己捣鼓了一个YouKu视频批量下载的程序。东西虽然简单,但还挺实用的,拿出来分享给大家。   版本:Python2.7+BeautifulSoup3.2.1 impor...
    99+
    2022-06-04
    批量 功能 视频
  • Android通过startService实现文件批量下载
    关于startService的基本使用概述及其生命周期可参见《Android中startService基本使用方法概述》。 本文通过批量下载文件的简单示例,演示startSer...
    99+
    2022-06-06
    Android
  • Java实现批量下载选中文件功能
    小编给大家分享一下Java实现批量下载选中文件功能,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!1.在action中定义变量 private ...
    99+
    2023-05-30
    java 下载文件
  • Python实现批量下载音效素材详解
    目录序言环境/模块/目标1、目标2、开发环境3、模块流程讲解全部代码序言 作为当代新青年,应该多少会点短视频制作吧? 哈哈,那当代自媒体创作者好了~ 制作视频的时候,多少需要一些搞...
    99+
    2022-11-13
  • Vue实现文件批量打包压缩下载
    上次做了一个选择多个数据生成多个二维码并下载,当时项目催的紧,就简单写了个循环生成二维码下载,一次性会下载很多文件,特别难整理; 刚好这次项目又遇到类似这种功能,需要一次性批量下载多...
    99+
    2022-11-13
  • Python批量爬虫下载PDF文件代码实现
    本文的背景是:大学关系很好的老师问我能不能把Excel中1000个超链接网址对应的pdf文档下载下来。虽然可以手动一个一个点击下载,但是这样太费人力和时间了。我想起了之前的爬虫经验,给老师分析了一下可...
    99+
    2023-09-27
    python 爬虫 pdf
  • python实现bilibili动画下载视频批量改名功能
    bilib应用 在微软商店中下载哔哩哔哩动画,虽然软件UI古老,但是贵在稳定和支持下载 安装以后搜索自己想要的视频,然后缓存下载 下载后进入下载的路径 视频文件重命名 打开自动...
    99+
    2022-11-12
  • 如何根据url 批量下载二维码实现详解
    目录React 前端实现一、依赖二、思路整理1.将选用展示的数据放在数组中2. 实用 qrcode + canvas 将 url 装换成 canvas 的二维码图片3.二维码 cav...
    99+
    2023-05-20
    url 批量下载二维码 url批量下载
  • JS如何实现单个或多个文件批量下载
    这篇文章主要介绍了JS如何实现单个或多个文件批量下载的相关知识,内容详细易懂,操作简单快捷,具有一定借鉴价值,相信大家阅读完这篇JS如何实现单个或多个文件批量下载文章都会有所收获,下面我们一起来看看吧。单个文件Download方案一:loc...
    99+
    2023-07-05
  • SpringMVC+Ajax如何实现文件批量上传和下载功能
    小编给大家分享一下SpringMVC+Ajax如何实现文件批量上传和下载功能,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!上传form:<form ...
    99+
    2023-06-08
  • 利用Python实现批量下载上市公司财务报表
    导语 用VBA做了个小工具,可以批量把某网站上的上市公司的财报下下来。 制作思路非常简单: 1、从该网站上的下载链接中找到规律:都是一段@#¥%……&am...
    99+
    2022-11-13
  • js实现根据文件url批量压缩下载成zip包
    目录前言1. 所需包2. 安装3. 引入4. 完整代码解析使用5. 部分代码解析解析 Bolb 与 arraybuffer前言 项目开发中,产品经理提了这样一个需求:将系统中的附件实...
    99+
    2023-02-09
    js url批量压缩zip包 js url批量压缩
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作