zoukankan      html  css  js  c++  java
  • node.js 爬虫

    // 导入http模块 用来请求(爬取)http请求
    var http = require('http');
    // 导入https模块 用来请求(爬取)https请求
    var https = require('https');
    // 导入fs模块 用来存取文件或操作文件
    var fs = require('fs');
    // 导入 cheerio 模块 用来操作node版的jq
    var cheerio = require('cheerio');
    
    // 导入 url 网址 
    var url = 'http://2017.miaov.com/bbs';
    
    //调用函数
    fetchRequest(url); 
    //爬取函数
    function fetchRequest(url){
        var html='';
    
        //采用http模块向服务器发起一次get请求
        http.get(url,function(res){
            
            var titles = [];
    
            //防止中文乱码
            res.setEncoding('utf-8');
    
            //监听data事件,每次取一块数据
            res.on('data',function(chunk){
                html += chunk;
            });
    
            //监听end事件,如果整个网页内容的html都获取完毕,就执行回调函数
            res.on('end',function(){
    
                //采用cheerio模块解析html
                var $ = cheerio.load(html);
    
                //用来存储内容的
                var news_item = [];
    
                $('.listMain').each(function(index,item){
    
                    var title = $(this).find('.postTitle').text();
                    var url = '2017.miaov.com' + $(this).find('a').attr('href');
                    datatitle = title + '
    '+ url + '
    ';
                    news_item.push({
                        title:title,
                        url:url
                    })
                    //向文件写入内容
                    fs.appendFile('./data/' + 'pachong.txt', datatitle, 'utf-8', function (err) {
                        if (err) {
                            console.log(err);
                        }
                    });
                });
                
                //待处理爬取后的内容
                console.log(news_item);
            })
        })
    }
    
        
  • 相关阅读:
    软连接
    libmysqlclient.so.18 not found 的解决方法
    查找某个文件并全部删除
    sudo passwd root:没有相关指令
    智能解析套件
    日志类封装
    windows安装mysql
    xshell报错Socket error Event: 32 Error: 10053
    appium简明教程(8)——那些工具
    appium简明教程(7)——Desired Capabilities详解
  • 原文地址:https://www.cnblogs.com/vsmart/p/7728364.html
Copyright © 2011-2022 走看看