你一定会收藏的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分页类代码分享
Jun 17 NodeJs
NodeJs的优势和适合开发的程序
Aug 14 NodeJs
详解Nodejs的timers模块
Dec 22 NodeJs
详解nodejs 文本操作模块-fs模块(五)
Dec 23 NodeJs
nodejs和C语言插入mysql数据库乱码问题的解决方法
Apr 14 NodeJs
Nodejs搭建wss服务器教程
May 24 NodeJs
windows系统下更新nodejs版本的方案
Nov 24 NodeJs
Nodejs下使用gm圆形裁剪并合成图片的示例
Feb 22 NodeJs
nodejs爬虫初试superagent和cheerio
Mar 05 NodeJs
nodejs更新package.json中的dependencies依赖到最新版本的方法
Oct 10 NodeJs
Nodejs实现的操作MongoDB数据库功能完整示例
Feb 02 NodeJs
nodejs通过钉钉群机器人推送消息的实现代码
May 05 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 和 XML: 使用expat函数(二)
2006/10/09 PHP
php不写闭合标签的好处
2014/03/04 PHP
codeigniter中测试通过的分页类示例
2014/04/17 PHP
PHP流Streams、包装器wrapper概念与用法实例详解
2017/11/17 PHP
对于Laravel 5.5核心架构的深入理解
2018/02/22 PHP
laravel中Redis队列监听中断的分析
2020/09/14 PHP
JavaScript null和undefined区别分析
2009/10/14 Javascript
Yii-自定义删除确认弹框(zyd)jquery实现代码
2013/03/04 Javascript
利用浏览器全屏api实现js全屏
2014/01/16 Javascript
使用GruntJS构建Web程序之构建篇
2014/06/04 Javascript
BootStrap selectpicker
2016/06/20 Javascript
浅谈javascript运算符——条件,逗号,赋值,()和void运算符
2016/07/15 Javascript
Vuejs第十一篇组件之slot内容分发实例详解
2016/09/09 Javascript
ajax图片上传,图片异步上传,更新实例
2016/12/30 Javascript
Vue组件化通讯的实例代码
2017/06/23 Javascript
Js判断H5上下滑动方向及滑动到顶部和底部判断的示例代码
2017/11/15 Javascript
详解Vue CLI 3.0脚手架如何mock数据
2018/11/23 Javascript
详解如何理解vue的key属性
2019/04/14 Javascript
微信小程序getLocation 需要在app.json中声明permission字段
2020/03/03 Javascript
js实现消灭星星(web简易版)
2020/03/24 Javascript
python计算时间差的方法
2015/05/20 Python
Python generator生成器和yield表达式详解
2019/08/08 Python
Python3.7 读取 mp3 音频文件生成波形图效果
2019/11/05 Python
Python 没有main函数的原因
2020/07/10 Python
详解使用CSS3的@media来编写响应式的页面
2017/11/01 HTML / CSS
HTML5 常用语法一览(列举不支持的属性)
2010/01/26 HTML / CSS
文秘专业个人求职信
2013/12/22 职场文书
求职意向书
2014/04/01 职场文书
拓展训练激励口号
2014/06/17 职场文书
名人演讲稿范文
2014/09/16 职场文书
报案材料怎么写
2015/05/25 职场文书
2016七夕情人节感言
2015/12/09 职场文书
协议书格式模板
2016/03/24 职场文书
python基础之错误和异常处理
2021/10/24 Python
实现一个简单得数据响应系统
2021/11/11 Javascript
HTML CSS 一个标签实现带动画的抖音LOGO
2022/04/26 HTML / CSS