zoukankan      html  css  js  c++  java
  • node--http小爬虫&事件模块

    //http小爬虫
    var http=require('http')
    var cheerio=require('cheerio')
    var url='http://www.imooc.com/learn/348'
    function filter(html){
        var $=cheerio.load(html);
        var chapters=$('.mod-chapters')
        var courseData=[]
        chapters.each(function(item){
            var chapter=$(this)
            var chapterTitle=chapter.find('strong').text()
            var videos=chapter.find('.video').children('li')
            var chapterData={
                chapterTitle:chapterTitle,
                videos:[]
            }
            videos.each(function(item){
                var video=$(this).find('.stydyvideo')
                var videoTitle=video.text()
    
                chapterData.videos.push({
                    title:videoTitle,
    
                })
            })
            courseData.push(chapterData)
        })
      return courseData
    }
    http.get(url,function(res){
        var html=''
        res.on('data',function(data){
            html+=data
        })
        res.on('end',function(){
           var data=filter(html);
            console.log(data)
        })
    }).on('error',function(){
    
    })
    
    
    
    
    
    /**
     * Created by Administrator on 2017-07-03.
     */
    //事件模块小插曲   对一个事件不要超过10个监听器
    var EventEmitter=require('events').EventEmitter
    var life=new EventEmitter();
    life.on('ddd',function(){
        console.log('55555555')
    })
    life.on('ddd',function(){
        console.log('6666')
    })
    function water(){
    
    }
    life.listeners('ddd').length//查看事件的个数
    EventEmitter.listenerCount(life,'ddd')
    //life.removeListener('ddd',water)//删除事件监听
    life.emit('ddd')//事件触发
    //删除所有的监听事件
    life.removeAllListeners()
    

      

  • 相关阅读:
    008 同步
    007 优雅的关闭线程
    006 线程中的join方法
    005 线程ID和线程的优先级
    004 后台线程
    003 Thread的构造
    群发 图片和语音失败原因是 ,返回 content是 null,
    状态,
    Shape Of My Heart
    转码 的状态,嘿嘿,小bug,少了一个 !
  • 原文地址:https://www.cnblogs.com/liuhao-web/p/7111254.html
Copyright © 2011-2022 走看看