你一定会收藏的Nodejs代码片段


Posted in NodeJs onFebruary 04, 2016

以下就是为大家分享的四段Nodejs值得收集的代码片段,供大家参考,具体内容如下

1、关于Nodejs的静态资源压缩与缓存参见:Nodejs打造静态资源服务器与文件上传刚学Express那会,动态文件的gzip压缩,好长一段时间都没找到合适的方法,才发现就是这么简单……
app.js里添加compression模块:
先安装;var compress=require('compression');app.use(compress()); OK了动态文件也能gzip压缩了;

2、抓取妹子的图片:

//依赖模块
var fs = require('fs');
var request = require("request");
var cheerio = require("cheerio");
var mkdirp = require('mkdirp');
 
//目标网址
var url = 'http://me2-sex.lofter.com/tag/美女摄影?page=';
 
//本地存储目录
var dir = './images';
 
//创建目录
mkdirp(dir, function(err) {
 if(err){
  console.log(err);
 }
});
 
//发送请求
request(url, function(error, response, body) {
 if(!error && response.statusCode == 200) {
  var $ = cheerio.load(body);
  $('.img img').each(function() {
   var src = $(this).attr('src');
   console.log('正在下载' + src);
   download(src, dir, Math.floor(Math.random()*100000) + src.substr(-4,4));
   console.log('下载完成');
  });
 }
});
 
//下载方法
var download = function(url, dir, filename){
 request.head(url, function(err, res, body){
  request(url).pipe(fs.createWriteStream(dir + "/" + filename));
 });
};

3、解压文件

var fs = require('fs'), 
 unzip = require('unzip'); 
//fs.createReadStream('./angular-swipe-master.zip').pipe(unzip.Extract({ path: './' }));
var extract = unzip.Extract({ path: './' }); 
extract.on('error', function(err) { 
 console.log(err); 
}); 
extract.on('finish', function() { 
 console.log("unziped!!"); 
}); 
fs.createReadStream('./angular-swipe-master.zip').pipe(extract);

4、压缩文件

var fs = require("fs");
var zip = require("node-native-zip");
  
var archive = new zip();
  
archive.addFiles([ 
 { name: "app.j", path: "./app.js" },
 { name: "package.json", path: "./package.json" }
], function (err) {
 if (err) return console.log(err);
  
 var buff = archive.toBuffer();
  
 fs.writeFile("./test2.zip", buff, function () {
  console.log("ziped");
 });
});

以上就是本文的全部内容,希望对大家的学习有所帮助,在新的一年里我们共同进步!

NodeJs 相关文章推荐
NodeJS的url截取模块url-extract的使用实例
Nov 18 NodeJs
跟我学Nodejs(一)--- Node.js简介及安装开发环境
May 20 NodeJs
用NodeJS实现批量查询地理位置的经纬度接口
Aug 16 NodeJs
NodeJs读取JSON文件格式化时的注意事项
Sep 25 NodeJs
nodejs入门教程一:概念与用法简介
Apr 24 NodeJs
nodejs multer实现文件上传与下载
May 10 NodeJs
NodeJs搭建本地服务器之使用手机访问的实例讲解
May 12 NodeJs
nodejs 如何手动实现服务器
Aug 20 NodeJs
nodejs实现范围请求的实现代码
Oct 12 NodeJs
基于nodejs的微信JS-SDK简单应用实现
May 21 NodeJs
nodejs实现获取本地文件夹下图片信息功能示例
Jun 22 NodeJs
Nodejs监控事件循环异常示例详解
Sep 22 NodeJs
Nodejs中session的简单使用及通过session实现身份验证的方法
Feb 04 #NodeJs
nodejs实现bigpipe异步加载页面方案
Jan 26 #NodeJs
NodeJS实现阿里大鱼短信通知发送
Jan 17 #NodeJs
实例详解Nodejs 保存 payload 发送过来的文件
Jan 14 #NodeJs
Nodejs express框架一个工程中同时使用ejs模版和jade模版
Dec 28 #NodeJs
深入浅析NodeJs并发异步的回调处理
Dec 21 #NodeJs
基于nodejs+express(4.x+)实现文件上传功能
Nov 23 #NodeJs
You might like
Cappuccino 卡布其诺咖啡之制作
2021/03/03 冲泡冲煮
PHP操作数组相关函数
2011/02/03 PHP
php中curl、fsocket、file_get_content三个函数的使用比较
2014/05/09 PHP
php的curl封装类用法实例
2014/11/07 PHP
PHP获取一年中每个星期的开始和结束日期的方法
2015/02/12 PHP
laravel 5 实现模板主题功能(续)
2015/03/02 PHP
PHP中实现Bloom Filter算法
2015/03/30 PHP
PHP 的比较运算与逻辑运算详解
2016/05/12 PHP
extjs 学习笔记(一) 一些基础知识
2009/10/13 Javascript
Extjs学习笔记之九 数据模型(上)
2010/01/11 Javascript
jquery last-child 列表最后一项的样式
2010/01/22 Javascript
jquery获取input的value问题说明
2010/08/19 Javascript
利用json获取字符出现次数的代码
2012/03/22 Javascript
JavaScript Scoping and Hoisting 翻译
2012/07/03 Javascript
jquery子元素过滤选择器使用示例
2013/06/24 Javascript
JS简单的图片放大缩小的两种方法
2013/11/11 Javascript
jquery easyui 结合jsp简单展现table数据示例
2014/04/18 Javascript
浅谈JS闭包中的循环绑定处理程序
2014/11/09 Javascript
JS实现课堂随机点名和顺序点名
2017/03/09 Javascript
Vue中"This dependency was not found"问题的解决方法
2018/06/19 Javascript
JavaScript 格式化数字、金额、千分位、保留几位小数、舍入舍去
2019/07/23 Javascript
Python中使用dom模块生成XML文件示例
2015/04/05 Python
在win和Linux系统中python命令行运行的不同
2016/07/03 Python
Python将图片批量从png格式转换至WebP格式
2020/08/22 Python
Python编程pygame模块实现移动的小车示例代码
2018/01/03 Python
对python中使用requests模块参数编码的不同处理方法
2018/05/18 Python
Django 实现将图片转为Base64,然后使用json传输
2020/03/27 Python
在keras中对单一输入图像进行预测并返回预测结果操作
2020/07/09 Python
python 实用工具状态机transitions
2020/11/21 Python
英国行业制服供应商:Alexandra
2019/09/14 全球购物
学生保证书范文
2014/04/28 职场文书
学习型党组织心得体会
2014/09/12 职场文书
2014党员干部四风问题对照检查材料思想汇报
2014/09/24 职场文书
农业生产宣传标语
2014/10/08 职场文书
2015年驾驶员工作总结
2015/04/29 职场文书
Golang 语言控制并发 Goroutine的方法
2021/06/30 Golang