nodejs 爬取githhub资源 并下载资源

2017-11-08 11:10:19

var request=require("request") ;
var cheerio = require('cheerio') ;
var  fs=require('fs');
var list=[] ;
request('https://github.com/sass/node-sass/releases/tag/v4.6.0',function(err,rqs,body)
    {
        if(!err)
        {
            console.log('获取到数据===');
            $ = cheerio.load(body);//当前body 前端选择器
            var aDom = $('.release-downloads').find('li a');

            aDom.map(function(item,v){

                var l=v.attribs.href.split('/').length-1;
                var a={
                    url:'https://github.com'+v.attribs.href,
                    title:v.attribs.href.split('/')[l]
                }
                list.push(a) ;
            })

            console.log(list.length);
            //

            for  (var  i = 0 ; i < list.length; i++) {
                ( function (i) {

                    console.log('开始下载===',list[i].url);
                    downloadFile(list[i].url,list[i].title,function (data) {
                        console.log("下载完成",i)
                    })
                })(i);
            }


        }

    }
)



function downloadFile(uri,filename,callback){
    var stream = fs.createWriteStream(filename);
    request(uri).pipe(stream).on('close', callback);
}


你打算打赏多少钱呢?

打赏
(微信扫一扫)