你一定会收藏的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打包工具整合到鼠标右键的方法
May 11 NodeJs
Nodejs实现多人同时在线移动鼠标的小游戏分享
Dec 06 NodeJs
NodeJS中Buffer模块详解
Jan 07 NodeJs
NodeJs模拟登陆正方教务
Apr 28 NodeJs
配置nodejs环境的方法
May 13 NodeJs
Nodejs之http的表单提交
Jul 07 NodeJs
NodeJS使用七牛云存储上传文件的方法
Jul 24 NodeJs
nodejs 图解express+supervisor+ejs的用法(推荐)
Sep 08 NodeJs
nodejs基于mssql模块连接sqlserver数据库的简单封装操作示例
Jan 05 NodeJs
nodejs用gulp管理前端文件方法
Jun 24 NodeJs
nodeJS进程管理器pm2的使用
Jan 09 NodeJs
基于Koa(nodejs框架)对json文件进行增删改查的示例代码
Feb 02 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
php 表单验证实现代码
2009/03/10 PHP
使用PHP接收POST数据,解析json数据
2013/06/28 PHP
PHP抓取淘宝商品的用户晒单评论+图片+搜索商品列表实例
2016/04/14 PHP
PHP在线打包下载功能示例
2016/10/15 PHP
thinkPHP5框架闭包函数与子查询传参用法示例
2018/08/02 PHP
解决PHP使用CURL发送GET请求时传递参数的问题
2019/10/11 PHP
不用ajax实现点击文字即可编辑的方法
2007/12/16 Javascript
javascript学习笔记(六) Date 日期类型
2012/06/19 Javascript
js单词形式的运算符
2014/05/06 Javascript
使用GruntJS构建Web程序之安装篇
2014/06/04 Javascript
用C/C++来实现 Node.js 的模块(一)
2014/09/24 Javascript
jquery.cookie.js使用指南
2015/01/05 Javascript
clipboard.js无需Flash无需依赖任何JS库实现文本复制与剪切
2015/10/10 Javascript
jQuery.Callbacks()回调函数队列用法详解
2016/06/14 Javascript
聊一聊jQuery插件uploadify使用方法
2016/08/24 Javascript
Bootstrap和Java分页实例第一篇
2016/12/23 Javascript
如何通过非数字与字符的方式实现PHP WebShell详解
2017/07/02 Javascript
在 Node.js 中使用原生 ES 模块方法解析
2017/09/19 Javascript
Python机器学习之SVM支持向量机
2017/12/27 Python
django 多数据库配置教程
2018/05/30 Python
pandas 转换成行列表进行读取与Nan处理的方法
2018/10/30 Python
Python使用百度翻译开发平台实现英文翻译为中文功能示例
2019/08/08 Python
python字符串替换re.sub()实例解析
2020/02/09 Python
Python字符串函数strip()原理及用法详解
2020/07/23 Python
详解Python3.8+PyQt5+pyqt5-tools+Pycharm配置详细教程
2020/11/02 Python
html+css实现自定义图片上传按钮功能
2019/09/04 HTML / CSS
联想德国官网:Lenovo Germany
2018/07/04 全球购物
比较基础的php面试题及答案-编程题
2012/10/14 面试题
公务员个人自我评价分享
2013/11/06 职场文书
幼儿园儿童节主持词
2014/03/21 职场文书
分公司任命书
2014/06/06 职场文书
圣诞节活动策划方案
2014/06/09 职场文书
增员口号大全
2014/06/18 职场文书
环境卫生倡议书
2014/08/29 职场文书
2015秋季开学典礼演讲稿
2015/07/16 职场文书
生活委员竞选稿
2015/11/21 职场文书