项目中一直用不到node,但是觉得node这门以js作为编程基础的服务端语言很有意思,用它可以写一些接口,写个爬虫.这是一门基础篇,看了一段时间文档后写个爬虫增强一下node的认识吧
爬虫的原理感觉很简单,大致分为一下三步
- 获取到对应网站的数据(也就是html代码)
- 筛选出你需要的数据(比如用户的信息,图片的地址)
- 下载或者整理出你所要的资源写入数据库
var http=require('http')
var fs =require('fs')
var path=require('path')
http.get('http://jspang.com/',function(res){
var content=''
res.on('data',function(txt){
content+=txt
})
res.on('end',function(){
var reg=/data-src="(.*?\.jpg)"/img;//匹配出图片地址
// var data=content.match(reg);
// fs.writeFile('./test.txt',data,function(){
// console.log('写入成功')
// })
var filename=null;
//循环出图片地址
while(filename=reg.exec(content)){
getImage(filename[1])
}
})
})
//下载图片
function getImage(url){
var obj=path.parse(url);
var name=obj.base;
var filestream=fs.createWriteStream('./img/'+name);
http.get(url,function(res){
res.pipe(filestream)
})
}
当然这只是个最简单的demo了,下面会持续更新进阶版的!
市面上的框架千变万化,只有基础知识比较好才能够学习的更好,而且需要多学习一下性能优化,网络,安全这方面,因为在大公司里面,其实重要的东西并不是你能够做的多好看,而是你的安全性那些做的好不好,一不小心信息泄露了,那就会导致很多无法想象的事情。
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用
。你还可以使用@
来通知其他用户。