node JS爬虫基础篇

项目中一直用不到node,可是以为node这门以js做为编程基础的服务端语言颇有意思,用它能够写一些接口,写个爬虫.这是一门基础篇,看了一段时间文档后写个爬虫加强一下node的认识吧

爬虫的原理感受很简单,大体分为一下三步

  1. 获取到对应网站的数据(也就是html代码)
  2. 筛选出你须要的数据(好比用户的信息,图片的地址)
  3. 下载或者整理出你所要的资源写入数据库
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了,下面会持续更新进阶版的!
市面上的框架变幻无穷,只有基础知识比较好才可以学习的更好,并且须要多学习一下性能优化,网络,安全这方面,由于在大公司里面,其实重要的东西并非你可以作的多好看,而是你的安全性那些作的好很差,一不当心信息泄露了,那就会致使不少没法想象的事情。
相关文章
相关标签/搜索