最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

Nodejs實(shí)現(xiàn)批量下載妹紙圖

 更新時間:2015年05月28日 08:56:48   投稿:hebedich  
這篇文章主要介紹了使用Nodejs實(shí)現(xiàn)批量下載妹紙圖的方法和詳細(xì)代碼,十分的實(shí)用,喜歡妹紙的小伙伴們可以參考下。

聽說最近下載妹子圖很火?

Nodejs (javascrpt)自然不能落后~

雖然從沒寫過像樣的Nodejs程序,但作為至少翻過書的前端同學(xué)來說,Nodejs用得還蠻順手的哈~
花了一點(diǎn)事件學(xué)習(xí)了下Nodejs的網(wǎng)頁獲取和文件下載方法,沒事亂搗騰就寫了這個半成品的下載器

使用方法:

1)新建一個download目錄
2)新建download.js(其實(shí)名字隨便取),并復(fù)制到download目錄下
3)復(fù)制兩段代碼到download.js中
4)打開命令行工具,并將當(dāng)前目錄轉(zhuǎn)到與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: /<img\s*src="(.*?)"\s*alt=".*"\s*\/>/g,
  total: 141,
  from: 1
});
 
mzitu.start();

以上所述就是本文的全部內(nèi)容了,希望大家能夠喜歡。

相關(guān)文章

  • Node.js開源應(yīng)用框架HapiJS介紹

    Node.js開源應(yīng)用框架HapiJS介紹

    這篇文章主要介紹了Node.js開源應(yīng)用框架HapiJS介紹,本文講解了HapiJS介紹、HapiJS安裝和項目配置和開發(fā)實(shí)例等內(nèi)容,需要的朋友可以參考下
    2015-01-01
  • node 可讀流與可寫流的運(yùn)用詳解

    node 可讀流與可寫流的運(yùn)用詳解

    這篇文章主要為大家介紹了node 可讀流與可寫流的運(yùn)用詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪
    2022-09-09
  • 用Node.js遍歷多級目錄處理文件的代碼詳解

    用Node.js遍歷多級目錄處理文件的代碼詳解

    在日常開發(fā)中,處理大量的文件操作是一個常見的需求,特別是在圖像處理和存檔管理領(lǐng)域,本文給大家介紹了如何用Node.js遍歷多級目錄處理文件,文章給出了主要步驟和完整代碼,需要的朋友可以參考下
    2024-06-06
  • Node.js全局可用變量、函數(shù)和對象示例詳解

    Node.js全局可用變量、函數(shù)和對象示例詳解

    JavaScript中有一個特殊的對象,稱為全局對象(Global Object),它及其所有屬性都可以在程序的任何地方訪問,即全局變量,下面這篇文章主要給大家介紹了關(guān)于Node.js全局可用變量、函數(shù)和對象的相關(guān)資料,需要的朋友可以參考下
    2023-03-03
  • Node.js進(jìn)行文件操作(讀取/寫入/修改/刪除)詳解

    Node.js進(jìn)行文件操作(讀取/寫入/修改/刪除)詳解

    Node.js是一個神奇的東西,它可以讓JavaScript在服務(wù)器端運(yùn)行,讓我們的很多前端程序員也能在后端大展身手了!本文就來講講如何在Node.js中進(jìn)行文件操作:讀取、寫入、修改和刪除文件吧
    2023-03-03
  • Node.JS利用PhantomJs抓取網(wǎng)頁入門教程

    Node.JS利用PhantomJs抓取網(wǎng)頁入門教程

    現(xiàn)今,網(wǎng)頁抓取已經(jīng)是一種人所共知的技術(shù)了,然而依然存在著諸多復(fù)雜性,下面這篇文章主要給大家介紹了Node.JS利用PhantomJs抓取網(wǎng)頁的方法教程,需要的朋友可以參考借鑒,下面來一起看看吧。
    2017-05-05
  • 使用Nodejs編寫一個腳本實(shí)現(xiàn)markdown轉(zhuǎn)pdf功能

    使用Nodejs編寫一個腳本實(shí)現(xiàn)markdown轉(zhuǎn)pdf功能

    Markdown?是一種輕量級的標(biāo)記語言,非常適合用來寫作和記錄,將?Markdown?轉(zhuǎn)換為?PDF?可以讓文檔在格式和樣式上更加統(tǒng)一,也方便在不同設(shè)備和平臺上查看和打印,在接下來的內(nèi)容中我們將講解如何使用?NodeJs?編寫一個?Markdown?轉(zhuǎn)?PDF?的腳本來實(shí)現(xiàn)我們這個想要的功能
    2024-05-05
  • node.js解決全局安裝pnpm后無法使用的問題

    node.js解決全局安裝pnpm后無法使用的問題

    在全局安裝pnpm后,如果出現(xiàn)無法使用的問題,一般是由于沒有添加系統(tǒng)變量導(dǎo)致的,本文就來介紹一下node.js解決全局安裝pnpm后無法使用的問題,感興趣的可以了解一下
    2024-10-10
  • node.js+captchapng+jsonwebtoken實(shí)現(xiàn)登錄驗證示例

    node.js+captchapng+jsonwebtoken實(shí)現(xiàn)登錄驗證示例

    本篇文章主要介紹了node.js+captchapng+jsonwebtoken實(shí)現(xiàn)登錄驗證示例,具有一定的參考價值,有興趣的可以了解一下
    2017-08-08
  • 詳解如何優(yōu)雅在webpack項目實(shí)現(xiàn)mock服務(wù)器

    詳解如何優(yōu)雅在webpack項目實(shí)現(xiàn)mock服務(wù)器

    這篇文章主要為大家介紹了詳解如何優(yōu)雅在webpack項目實(shí)現(xiàn)mock服務(wù)器,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪
    2023-02-02

最新評論

青浦区| 大宁县| 青冈县| 壤塘县| 新郑市| 老河口市| 临泽县| 兖州市| 石河子市| 济阳县| 东丰县| 彝良县| 阿拉善盟| 津市市| 油尖旺区| 鹤壁市| 三穗县| 乐亭县| 鞍山市| 尤溪县| 惠东县| 惠州市| 定陶县| 康定县| 台前县| 衢州市| 太仓市| 宿松县| 康保县| 房山区| 顺平县| 开阳县| 年辖:市辖区| 共和县| 六枝特区| 华宁县| 海阳市| 方正县| 岳普湖县| 信阳市| 景谷|