zoukankan      html  css  js  c++  java
  • Node.Js 简单的数据采集示例,使用 crawler

    源码如下:

    // 文件名:collect-crawler.js
    /**
     * Node.Js 简单的数据采集示例,使用 crawler
     * 安装依赖:npm install crawler
     * 注意事项:gzip页面处理 gzip:true
     */
    
    const NmCrawler = require('crawler');
    const NmFs = require('fs');
    
    var c = new NmCrawler({
        maxConnections: 10,
        callback: function (error, res, done) {
            if (error) {
                console.log(error);
            } else {
                var $ = res.$;
                console.log($('title').text());
    
                NmFs.writeFile('./collect-crawler-163.html', res.body, () => {
                    console.log('write success');
                })
            }
            done();
        }
    })
    
    c.queue([{
        uri: 'http://www.163.com',
        // forceUTF8: true,
        // incomingEncoding: 'GBK'
    }])
    c.queue([{
        uri: 'https://pic2020.lianzhixiu.com/2016/1123/19/2.jpg',
        filename: "./img/collect-crawler-2.png",
        encoding: null,
        jQuery: false,
        callback: function (error, res, done) {
            if (error) {
                console.log(error);
            } else {
                NmFs.createWriteStream(res.options.filename).write(res.body);
                console.log('===', res.body.length, 'bytes');
            }
            done()
        }
    }])
    

    运行:

    node collect-crawler.js
    
  • 相关阅读:
    BOM与DOM
    CSS中的长度单位及颜色表示
    关于display:grid layout
    关于position
    简单的注册表单
    We重邮
    APP定制开发的完整流程
    国内移动广告平台的混战大盘点
    Mobile App Monetization, Analysis & Mediation – Google AdMob
    代码优化
  • 原文地址:https://www.cnblogs.com/sochishun/p/14378314.html
Copyright © 2011-2022 走看看