Maison > interface Web > js tutoriel > Nodejs implémente le téléchargement par lots de girl pictures_node.js

Nodejs implémente le téléchargement par lots de girl pictures_node.js

WBOY
Libérer: 2016-05-16 15:57:36
original
1528 Les gens l'ont consulté

J'ai entendu dire que le téléchargement de photos de filles est très populaire récemment ?

Nodejs (javascrpt) ne peut naturellement pas être à la traîne~

Bien que je n'aie jamais écrit de programme Nodejs décent, en tant qu'étudiant front-end ayant au moins lu le livre, je suis assez à l'aise avec Nodejs~
J'ai passé un peu de temps à apprendre à obtenir des pages Web et à télécharger des fichiers dans Nodejs, et j'ai écrit ce téléchargeur semi-fini alors que je n'avais rien à faire

Utilisation :

1) Créez un nouveau répertoire de téléchargement
2) Créez un nouveau download.js (appelez-le comme vous voulez) et copiez-le dans le répertoire de téléchargement
3) Copiez les deux morceaux de code dans download.js
4) Ouvrez l'outil de ligne de commande et remplacez le répertoire actuel par le répertoire de téléchargement
5) Entrez dans la ligne de commande : node download.js
6) En attendant de recevoir des photos de filles~

Objet image de fille simple (prise en charge nouvellement ajoutée du téléchargement automatique)

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();
  }
};

Copier après la connexion

Comment commencer à télécharger des photos de filles

var mzitu = new Mzitu({
  baseUrl: 'http://www.mzitu.com/share/comment-page-',
  dir: '',
  reg: /<img\s*src="(.*&#63;)"\s*alt=".*"\s*\/>/g,
  total: 141,
  from: 1
});
 
mzitu.start();
Copier après la connexion

Ce qui précède représente l’intégralité du contenu de cet article, j’espère que vous l’aimerez tous.

Étiquettes associées:
source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal