你一定会收藏的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中使用monk访问mongodb
Jul 06 NodeJs
提高NodeJS中SSL服务的性能
Jul 15 NodeJs
解决nodejs中使用http请求返回值为html时乱码的问题
Feb 18 NodeJs
3分钟快速搭建nodejs本地服务器方法运行测试html/js
Apr 01 NodeJs
nodejs个人博客开发第三步 载入页面
Apr 12 NodeJs
解析NodeJS异步I/O的实现
Apr 13 NodeJs
配置nodejs环境的方法
May 13 NodeJs
详解nodejs通过代理(proxy)发送http请求(request)
Sep 22 NodeJs
nodejs+express搭建多人聊天室步骤
Feb 12 NodeJs
nodejs基础之buffer缓冲区用法分析
Dec 26 NodeJs
M2实现Nodejs项目自动部署的方法步骤
May 05 NodeJs
typescript nodejs 依赖注入实现方法代码详解
Jul 21 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
openflashchart 2.0 简单案例php版
2012/05/21 PHP
PHP连接MySQL查询结果中文显示乱码解决方法
2013/10/25 PHP
php中get_defined_constants函数用法实例分析
2015/05/12 PHP
PHP中字符串长度的截取用法示例
2017/01/12 PHP
PHP正则替换函数preg_replace()报错:Notice Use of undefined constant的解决方法分析
2017/02/04 PHP
PHP实现时间比较和时间差计算的方法示例
2017/07/24 PHP
使用FlexiGrid实现Extjs表格效果方法分享
2014/12/16 Javascript
基于JS代码实现导航条弹出式悬浮菜单
2016/06/17 Javascript
xtemplate node.js 的使用方法实例解析
2016/08/22 Javascript
JS键盘版计算器的制作方法
2016/12/03 Javascript
layui--select使用以及下拉框实现键盘选择的例子
2019/09/24 Javascript
KnockoutJS数组比较算法实例详解
2019/11/25 Javascript
python下如何让web元素的生成更简单的分析
2008/07/17 Python
12步教你理解Python装饰器
2016/02/25 Python
Python批处理删除和重命名文件夹的实例
2018/07/11 Python
使用TensorFlow实现SVM
2018/09/06 Python
Python pandas.DataFrame调整列顺序及修改index名的方法
2019/06/21 Python
解决django服务器重启端口被占用的问题
2019/07/26 Python
django项目环境搭建及在虚拟机本地创建django项目的教程
2019/08/02 Python
Python 字符串类型列表转换成真正列表类型过程解析
2019/08/26 Python
python pillow模块使用方法详解
2019/08/30 Python
PyQt5中多线程模块QThread使用方法的实现
2020/01/31 Python
4款Python 类型检查工具,你选择哪个呢?
2020/10/30 Python
css3中的calc函数浅析
2018/07/10 HTML / CSS
H5新属性audio音频和video视频的控制详解(推荐)
2016/12/09 HTML / CSS
萨克斯第五大道英国:Saks Fifth Avenue英国
2019/04/01 全球购物
英国领先的酒杯和水晶玻璃器皿制造商:Dartington Crystal
2019/06/23 全球购物
Yahoo-PHP面试题3
2012/01/14 面试题
“学雷锋活动月”总结
2014/03/09 职场文书
企业业务员岗位职责
2014/03/14 职场文书
弘扬职业精神演讲稿
2014/03/20 职场文书
师恩难忘教学反思
2014/04/27 职场文书
2014旅游局领导班子四风问题对照检查材料思想汇报
2014/09/19 职场文书
中学教师教学工作总结
2015/08/13 职场文书
Python数据可视化之基于pyecharts实现的地理图表的绘制
2021/06/10 Python
分析Python list操作为什么会错误
2021/11/17 Python