项目中一直用不到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了,下面会持续更新进阶版的!
市面上的框架千变万化,只有基础知识比较好才能够学习的更好,而且需要多学习一下性能优化,网络,安全这方面,因为在大公司里面,其实重要的东西并不是你能够做的多好看,而是你的安全性那些做的好不好,一不小心信息泄露了,那就会导致很多无法想象的事情。