Example #1
0
var rest = require('restler');

rest.get('https://api.github.com/orgs/csci-4830-002-2014/repos').on('complete', function(result) {
  if (result instanceof Error) {
    console.log('Error:', result.message);
    this.retry(5000); // try again after 5 sec
  } else {
    console.log(result);
  }
});
Example #2
0
};

var clone = function(fn) {
    // Workaround for commander.js issue.
    // http://stackoverflow.com/a/6772648
    return fn.bind({});
};

if(require.main == module) {
    program
        .option('-c, --checks <check_file>', 'Path to checks.json', clone(assertFileExists), CHECKSFILE_DEFAULT)
        .option('-f, --file <html_file>', 'Path to index.html', clone(assertFileExists), HTMLFILE_DEFAULT)
        .option('-u, --url <url>', 'URL', "")
        .parse(process.argv);
    if (program.url !== "") {
        rest.get(program.url).on('complete', function(result) {
            if (result instanceof Error) {
                console.log('Error: ' + result.message);
            } else {
                var checkJson = checkHtml(result, program.checks);
                outJson(checkJson);
            }
        });
    } else {
        var checkJson = checkHtmlFile(program.file, program.checks);
        outJson(checkJson);
    }
} else {
    exports.checkHtmlFile = checkHtmlFile;
}
Example #3
0
var clone = function(fn) {
    // Workaround for commander.js issue.
    // http://stackoverflow.com/a/6772648
    return fn.bind({});
};

if(require.main == module) {
    program
        .option('-c, --checks <check_file>', 'Path to checks.json', clone(assertFileExists), CHECKSFILE_DEFAULT)
        .option('-f, --file <html_file>', 'Path to index.html', clone(assertFileExists), HTMLFILE_DEFAULT)
        .option('-u, --url <url>', 'URL')
        .parse(process.argv);
    var checkJson = {};
    var outJson;
    if( program.url ){

      rest.get(program.url).on('complete', function(data) {
        checkJson = checkUrl(data, program.checks);
        outJson = JSON.stringify(checkJson, null, 4);
        console.log(outJson);
      });
    }else{
      checkJson = checkHtmlFile(program.file, program.checks);
      outJson = JSON.stringify(checkJson, null, 4);
      console.log(outJson);
    }

} else {
    exports.checkHtmlFile = checkHtmlFile;
}
Example #4
0
	this.retry(5000); // try again after 5 sec
    } else {
	checkJson = checkHtmlUrl(result,program.checks);
	var outJson = JSON.stringify(checkJson, null, 4);
	console.log(outJson);
    }
}

var clone = function(fn) {
    return fn.bind({});
};

if(require.main == module) {
    program
	.option('-c, --checks <check_file>', 'Path to checks.json', clone(assertFileExists), CHECKSFILE_DEFAULT)
	.option('-f, --file <html_file>', 'Path to index.html', clone(assertFileExists), HTMLFILE_DEFAULT)
	.option('--url <url_of_html_file>')
	.parse(process.argv);

    if(typeof program.url != 'undefined'){
	rest.get(program.url).on('complete', furl);
	//Revise for correct callback and asyncronous usage
    } else {
	checkJson = checkHtmlFile(program.file, program.checks);
    	var outJson = JSON.stringify(checkJson, null, 4);
	console.log(outJson);
    }
} else {
    exports.checkHtmlFile = checkHtmlFile;
}
Example #5
0
    var response2console = function(result, response) {
        if (result instanceof Error) {
            console.error('Error: ' + util.format(response.message));
        } else {
            var checkJson = checkUrlResult(result, checks);
            var outJson = JSON.stringify(checkJson, null, 4);
            console.log(outJson);

        }
    };
    return response2console;
};

if(require.main == module) {
    program
        .option('-f, --file <html_file>', 'Path to index.html', clone(assertFileExists), HTMLFILE_DEFAULT)
        .option('-c, --checks <check_file>', 'Path to checks.json', clone(assertFileExists), CHECKSFILE_DEFAULT)
        .option('-u, --url <url_link>', 'url link')
        .parse(process.argv);
    if (program.url){
        var response2console = buildfn(program.checks);
        rest.get(program.url).on('complete',response2console);
    }else{
        var checkJson = checkHtmlFile(program.file, program.checks);
        var outJson = JSON.stringify(checkJson, null, 4);
        console.log(outJson);
    }
} else {
    exports.checkHtmlFile = checkHtmlFile;
}
Example #6
0
};

if(require.main == module) {
    program
        .option('-c, --checks <check_file>', 'Path to checks.json', clone(assertFileExists), CHECKSFILE_DEFAULT)
        .option('-f, --file <html_file>', 'Path to index.html', clone(assertFileExists), HTMLFILE_DEFAULT)
        .option('-u, --url <url>', 'url to index.html', clone(assertUrlExists), URL_DEFAULT)
        .parse(process.argv);

    function handleContent(content){
	var checkJson = checkHtmlFile(content, program.checks);
	var outJson = JSON.stringify(checkJson, null, 4);
	console.log(outJson);
    }

    if (program.url == "none") {
	handleContent(readFile(program.file));
    } else {
	var handleResponse = function(result, response) {
	    if (result instanceof Error) {
		console.error('Error: ' + util.format(response.message));
	    } else {
		handleContent(result);
	    };
	};
	rest.get(program.url).on('complete', handleResponse);
    }
} else {
    exports.checkHtmlFile = checkHtmlFile;
}
Example #7
0
Posterous.prototype.request = function(method, api, args, callback) {
  args = args || {};
  args.api_token = this._token;

  var reqOptions = {
    host: HOST,
    port: 80,
    method: method,
    path: PATH + api,
    headers: {Authorization: this._auth},
    body: null
  };

  if (method != 'GET') {
		args['_methods'] = method;
    reqOptions.method = method;
    reqOptions.data = args;
  } else {
    reqOptions.path = reqOptions.path + '?' + qs.stringify(args);
  }

  var uri = reqOptions.host + reqOptions.path;

  switch(method){
    case "GET":
      Rest.get(uri, reqOptions, callback).on('complete', function(data) {
        callback(null, data);
      }).on('error', function(data, err) {
        callback(err, data);
      });

      break;
    case "POST":
      console.log('posting via Restler')
      Rest.post(uri, reqOptions, callback).on('complete', function(data) {
        callback(null, data);
      }).on('error', function(data, err) {
        callback(err, data);
      });

      break;
    case "PUT":
      Rest.put(uri, reqOptions, callback).on('complete', function(data) {
        callback(null, data);
      }).on('error', function(data, err) {
        callback(err, data);
      });

      break;
    case "DELETE":
      Rest.del(uri, reqOptions, callback).on('complete', function(data) {
        callback(null, data);
      }).on('error', function(data, err) {
        callback(err, data);
      });

      break;
    default:
      callback(err, "no METHOD was set");
  }
};
Example #8
0
var rest = require('restler');

rest.get('https://api.github.com/repos/LoganBates/hackathon-accesslog/stats/contributors').on('complete', function(result) {
  if (result instanceof Error) {
    console.log('Error:', result.message);
    this.retry(5000); // try again after 5 sec
  } else {
    console.log(result);
  }
});
Example #9
0
};

if(require.main == module) {
    program
        .option('-c, --checks <check_file>', 'Path to checks.json', clone(assertFileExists), CHECKSFILE_DEFAULT)
        .option('-f, --file <html_file>', 'Path to index.html')
        .option('-u, --url <URL>', 'URL for page to check')
        .parse(process.argv);
    var checkJson;
    if (program.file) {
	checkJson = checkHtmlFile(program.file, program.checks);
	var outJson = JSON.stringify(checkJson, null, 4);
	console.log(outJson);
      }
    if (program.url) {
	var site = restler.get(program.url).on('complete', function(result) {
		if (result instanceof Error) {
			console.log("Error getting url : " + result);
		} else {
			checkJson = checkFile(result, program.checks);
			var outJson = JSON.stringify(checkJson, null, 4);
			console.log(outJson);
		}
	});
	//checkJson = checkHtmlFile(program.file, program.checks);
    }
} else {
    exports.checkHtmlFile = checkHtmlFile;
}

Example #10
0
var checkURL=function(url) {

  return cheerio.load(rest.get(url));

}
Example #11
0

var clone = function(fn) {
    // Workaround for commander.js issue.
    // http://stackoverflow.com/a/6772648
    return fn.bind({});
};
var urlHTML="";
if(require.main == module) {
    program
        .option('-c, --checks <check_file>', 'Path to checks.json', clone(assertFileExists), CHECKSFILE_DEFAULT)
        .option('-f, --file <html_file>', 'Path to index.html', clone(assertFileExists), HTMLFILE_DEFAULT)
        .option('-u, --url <url_link>', 'Website URL',true, URL_DEFAULT )
        .parse(process.argv);
                 
           restler.get(program.url).on('complete', function(result, data){
         
	       urlHTML = result;

	                                                                      
    var checkJsonURL = checkURL(urlHTML, program.checks);                                                                                                                                         
    var outJson = JSON.stringify(checkJsonURL, null, 4);
    console.log( outJson);


});
} else {
    exports.checkHtmlFile = checkHtmlFile;
    exports.checkURL = checkURL;
   
}
Example #12
0
var cheerioURL = function(url) {
    return cheerio.load(rest.get(url).on('complete', htmloutput));
}
Example #13
0
};

var clone = function(fn) {
    // Workaround for commander.js issue.
    // http://stackoverflow.com/a/6772648
    return fn.bind({});
};

var checkJson = null;

if(require.main == module) {
    program
        .option('-c, --checks <check_file>', 'Path to checks.json', clone(assertFileExists), CHECKSFILE_DEFAULT)
        .option('-f, --file <html_file>', 'Path to index.html', clone(assertFileExists), HTMLFILE_DEFAULT)
        .option('-u, --url <web_url>', 'URL to index.html')
        .parse(process.argv);
    
    if(program.url) {
        rest.get(program.url).on('complete', function(urlcontents) {
            checkJson = checkString(urlcontents, program.checks);
        });
    }
    else {
        checkJson = checkHtmlFile(program.file, program.checks);
    }
    
    var outJson = JSON.stringify(checkJson, null, 4);
    console.log(outJson);
} else {
    exports.checkHtmlFile = checkHtmlFile;
}
Example #14
0
		out[checks[ii]] = present;
	    }
	    return out;
	}
    }
    return checkUrl;
};

var clone = function(fn) {
    // Workaround for commander.js issue.
    // http://stackoverflow.com/a/6772648
    return fn.bind({});
}

if (require.main == module) {
    program.option('-c, --checks <check_file>', 'Path to checks.json', clone(assertFileExists), CHECKSFILE_DEFAULT)
           .option('-f, --file <html_file>', 'Path to index.html', clone(assertFileExists), HTMLFILE_DEFAULT)
           .option('-u, --url <url_to_html_file>', 'URL to the html file') 
           .parse(process.argv);
    if (program.file) 
	var checkJson = checkHtmlFile(program.file, program.checks);
    if (program.url) {
	var checkUrl = buildfn(program.checks);
	rest.get(program.url).on('complete', checkUrl);
    }
    var outJson = JSON.stringify(checkJson, null, 4);
    console.log(outJson);
} else {
    exports.checkHtmlFile = checkHtmlFile;
}
Example #15
0
    // http://stackoverflow.com/a/6772648
    return fn.bind({});
};

var respond = function(result) {
    if (result instanceof Error) {
	sys.puts('Error: ' + result.message);
    } else {
	var checkJson = checkUrlResult(result, program.checks);
	var outJson = JSON.stringify(checkJson, null, 4);
	console.log(outJson);
    }
};

if(require.main == module) {
    program
	.option('-c, --checks <check_file>', 'Path to checks.json', clone(assertFileExists), CHECKSFILE_DEFAULT)
	.option('-f, --file <html_file>', 'Path to index.html', clone(assertFileExists), HTMLFILE_DEFAULT)
	.option('-u, --url <url>', 'URL to check')
	.parse(process.argv);
    if (program.url) {
		rest.get(program.url).on('complete', respond);
    } else {
	var checkJson = checkHtmlFile(program.file, program.checks);
	var outJson = JSON.stringify(checkJson, null, 4);
	console.log(outJson);
    }
} else {
    exports.checkHtmlFile = checkHtmlFile;
}
Example #16
0
var rest = require('restler')
  , repl = require('repl')
  , config = require('./config');

var red = '\u001b[31m'
  , bold = '\u001b[1m'
  , reset = '\u001b[0m';

var orders = {};
var market = {
  rates: {}
};

// always start with good exchange rates.
rest.get('https://coinbase.com/api/v1/currencies/exchange_rates').on('complete', function(data, res) {
  market.rates = data;
});

console.log(bold + 'Welcome to BitCoin Trader.' + reset + '\nCommand-line console for buying and selling BitCoins.\n\n     Syntax: BUY <amount> [currency]\n    Example: BUY 10\n\nIf a currency is provided (USD, EUR, etc.), the order will buy as many BTC as the <amount> provides at the current exchange rates, updated once per 60 seconds.\n');

repl.start({
    prompt: 'coinbase> '
  , eval: function(cmd, context, filename, callback) {

      var tokens = cmd.toLowerCase().replace('(','').replace(')','').replace('\n', '').split(' ');
      var amount = parseFloat(tokens[1]);
      var orderID = new Date().toString();
      var denomination = 'BTC';

      if (typeof(tokens[2]) != 'undefined') {
        denomination = tokens[2].toUpperCase();
Example #17
0
var restURL = function(urlName){
   return rest.get(urlName);
}
Example #18
0
var checkHtmlUrl = function(htmlurl, checksfile, display) {
    restler.get(htmlurl).on('complete', function(result) {
        checkHtml(cheerio.load(result), checksfile, display);
    });
};
Example #19
0
};

var clone = function(fn) {
    // Workaround for commander.js issue.
    // http://stackoverflow.com/a/6772648
    return fn.bind({});
};

if(require.main == module) {
    program
        .option('-c, --checks <check_file>', 'Path to checks.json', clone(assertFileExists), CHECKSFILE_DEFAULT)
        .option('-f, --file <html_file>', 'Path to index.html', clone(assertFileExists) ) //, HTMLFILE_DEFAULT)
        .option('-u, --url <url_fqdn>', 'URL to index.html') //, clone(assertURLExists) ) //, URL_DEFAULT)
	.parse(process.argv);
    if (program.url && program.file) console.log("only a URL or a file may be specified");
    else if (program.url) {
	var write2file = assertURLExists(program.url, program.checks);
	rest.get(program.url).on('complete', write2file);
	//assertFileExists(TEMPURLFILE);
	//var checkJson = checkHtmlFile(TEMPURLFILE, program.checks);
	//var outJson = JSON.stringify(checkJson, null, 4);
	//console.log(outJson);
    } else {
	var checkJson = checkHtmlFile(program.file, program.checks);
	var outJson = JSON.stringify(checkJson, null, 4);
	console.log(outJson);
    }
} else {
    exports.checkHtmlFile = checkHtmlFile;
}
Example #20
0
var cheerioHtmlUrl = function(url) { 
    return cheerio.load(rest.get(url).on('success', function(result) { return result; }) );
};
Example #21
0
var getURLContents = function(URL, callback)
{
    restler.get( URL ).on( 'success', function( data, response ) {
        callback( data );
    });
}
Example #22
0
var cheerioHtmlUrl = function(htmlurl) {
  return rest.get(htmlurl).on('complete', function(result) {
    console.log(result);
  });
};
Example #23
0
var clone = function(fn) {
    // Workaround for commander.js issue.
    // http://stackoverflow.com/a/6772648
    return fn.bind({});
};
if(require.main == module) {
    program
        .option('-c, --checks <check_file>', 'Path to checks.json', clone(assertFileExists), CHECKSFILE_DEFAULT)
        .option('-f, --file <html_file>', 'Path to index.html', clone(assertFileExists), HTMLFILE_DEFAULT)
        .option('-u, --url <url>','Url',function(url) { return url.toString(); }, '')
        .parse(process.argv);

   if (program.url){
      console.log(program.url);

      rest.get(program.url).on('complete', function(result, response) {
        fs.writeFileSync(HTMLFILE_DEFAULT, result)

        var checkJson = checkHtmlFile(program.file, program.checks);
        var outJson = JSON.stringify(checkJson, null, 4);
        console.log(outJson);
      });
    } else {
    var checkJson = checkHtmlFile(program.file, program.checks);
    var outJson = JSON.stringify(checkJson, null, 4);
    console.log(outJson);
}

} else {
    exports.checkHtmlFile = checkHtmlFile;
}
Example #24
0
exports.search = function (req, res) {
    
    var rest = require('restler'),
        ArrayHelper = require('../util/ArrayHelper'),
        async = require('async'),
        config = require('config/config'),
        age = req.query.age,
        gender = req.query.gender,
        relation = req.query.relation,
        event = req.query.event;
    
    var url = config.api.url + "/icebreaker?age="+age+"&gender="+gender+"&relation="+relation+"&event="+event,
        trendsUrl = config.api.url + "/trends";
        
    console.log(url);
    
    async.parallel({
        search: function (callback) {
            rest.get(url).on('complete', function(result) {
                if (result instanceof Error) {
                        console.log('Error:', result.message);
                        //this.retry(5000); // try again after 5 sec
                    }
                    else {
                        //console.dir(result);
                        callback(null, result);
                    }
                });
        }//,
        
//        trending: function (callback) {
////            setTimeout(function(){
////                callback(null, 2);
////            }, 100);
//            
//            rest.get(trendsUrl).on('complete', function(result) {
//                if (result instanceof Error) {
//                        console.log('Error:', result.message);
//                        //this.retry(5000); // try again after 5 sec
//                    } 
//                    else {
//                        //console.dir(result);
//                        callback(null, result);
//                    }
//                });
//        }
    },
    function (err, results) {
        //console.dir(results);
        var searchResults = ArrayHelper.chunks(results.search.data, 4);
            //trendingResults = ArrayHelper.chunks(results.trending.data, 4);
        
        //console.dir(searchResults);
        //console.dir(trendingResults);
        
        res.render('search/results', {
            title: 'Break the ice!',
            searchResults: searchResults,
            //trendingResults: trendingResults,
            partials: {
                nav: 'layout/nav-small',
                //trending: 'search/trending'
                search: 'search/search'
            }
        });
        
    });
    
    rest.get('http://google.com?q=hack').on('complete', function(result) {
        if (result instanceof Error) {
            console.log('Error:', result.message);
            //this.retry(5000); // try again after 5 sec
        } 
        else {
            res.render('search/search', { 
                    title: 'Break the ice!',
                    partials: {
                        nav: 'layout/nav-small'
                    }
                });
        }
    });
};
Example #25
0
var restler = require('restler')
    , _s = require('underscore.string');

process.on('uncaughtException', function (err) {
  console.log(err);
})

var webtoonId = process.argv[2];
//var webtoonId = "471283";

restler.get('http://comic.naver.com/webtoon/list.nhn?titleId=' + webtoonId).once('complete', function (mainHtml) {
  // 마지막 에피소드를 알아내기 위해 html을 다운로드 합니다.
  var $ = jQuery(mainHtml);

  var lastestTitleLink = $('.title a').attr('href'); // selector를 이용하여 마지막 에피소드 링크를 추출합니다.
  var lastestEpisodeNoRegexp = /no=(\d+).*&/;
  if (!lastestEpisodeNoRegexp.test(lastestTitleLink)) {
    console.log('웹툰 아이디를 찾을 수 없습니다.')
    return;
  }
  console.log('Download...' + $('title').text())

  require('mkdirp')(webtoonId, function (err) {
    // 디렉토리를 만듭니다.
    if (err) {
      console.error(err)
    } else {
      var lastestEpisodeNo = lastestTitleLink.match(lastestEpisodeNoRegexp)[1];
      var workers = [];
      for (var titleId = 1; titleId <= lastestEpisodeNo; titleId++) {
        // 에피소드별 url을 생성합니다.
Example #26
0
    var checks = loadChecks(checksfile).sort();
    var out = {};
    for(var ii in checks) {
        var present = $(checks[ii]).length > 0;
        out[checks[ii]] = present;
    }
    return out;
};

var clone = function(fn) {
    // Workaround for commander.js issue.
    // http://stackoverflow.com/a/6772648
    return fn.bind({});
};

rest.get(HEROKUURL).on('complete', function(result) {
    if (result instanceof Error) {
            console.log('Error: ', result.message);
    }else{
	console.log(result);
    }
});

if(require.main == module) {
    program
        .option('-c, --checks <check_file>', 'Path to checks.json', clone(assertFileExists), CHECKSFILE_DEFAULT)
        .option('-f, --file <html_file>', 'Path to index.html', clone(assertFileExists), HTMLFILE_DEFAULT)
        .option('-u, --url <url_path>', 'path to url index.html', clone(assertFileExists), HEROKUURL)
        .parse(process.argv);
    var checkJson = checkHtmlFile(program.file, program.checks);
    var outJson = JSON.stringify(checkJson, null, 4);
Example #27
0
var readStringFromUrl = function(url, checksfile){
	rest.get(url).on('complete', function(data){
		checkHtmlString(data,checksfile);
	});
};
Example #28
0
};

var clone = function(fn) {
    // Workaround for commander.js issue.
    // http://stackoverflow.com/a/6772648
    return fn.bind({});
};

if(   require.main == module) {
    program
        .option('-c, --checks <check_file>', 'Path to checks.json', clone(assertFileExists), CHECKSFILE_DEFAULT)
        .option('-f, --file <html_file>', 'Path to index.html', clone(assertFileExists), HTMLFILE_DEFAULT)
        .option('-u, --url <html_file>', 'Url to file')
        .parse(process.argv);
    
    rest.get('https://github.com/coolcrm/bitstarter/blob/5b2e700f98bf2c6bae7093630c3f8dd323f88d83/index.html').on('complete',function(result){    
    //HERE                                             
      console.log(result);
    });  
    /*
    if (program.url)
      console.log('Checks file is: ', program.checks);
    if (program.file)
      console.log('File is: ', program.file);
    */
    var checkJson = checkHtmlFile(program.file, program.checks);
    var outJson = JSON.stringify(checkJson, null, 4);
    console.log(outJson);
} else {
    exports.checkHtmlFile = checkHtmlFile;
}
Example #29
0
	var out = {};
	for(var ii in checks) {
		var present = $(checks[ii]).length > 0;
		out[checks[ii]] = present;
	}
	return out;
};

var clone = function(fn) {
	// Workaround for commander.js issue.
	// http://stackoverflow.com/a/6772648
	return fn.bind({});
};

if(require.main == module) {
	program
		.option('-c, --checks <check_file>', 'Path to checks.json', clone(assertFileExists), CHECKSFILE_DEFAULT)
		.option('-f, --file <html_file>', 'Path to index.html', clone(assertFileExists), HTMLFILE_DEFAULT)
		.option('-u, --url <html_file_url>', 'url to index.html')
		.parse(process.argv);
	if(program.url != null){
		rest.get(program.url).on('complete', buildFnCheerioHtmlUrlProcessor(program.url,program.checks));
	}
	else{
		var checkJson = checkHtmlFile(program.file, program.checks);
		var outJson = JSON.stringify(checkJson, null, 4);
		console.log(outJson);
	}
} else {
	exports.checkHtmlFile = checkHtmlFile;
}
Example #30
0
  return fn.bind({});
};

var loadUrlContent = function(result) {
  if(result instanceof Error) {
    console.log("Error while loading url: %s. Exiting.", result.message);
    process.exit(2);
  } else {
    var checkJson = checkHtmlFile(cheerio.load(result), program.checks);
    var outJson = JSON.stringify(checkJson, null, 4);
    console.log(outJson);
  }
};

if(require.main == module) {
  program
      .option('-c, --checks <check_file>', 'Path to checks.json', clone(assertFileExists), CHECKSFILE_DEFAULT)
      .option('-f, --file <html_file>', 'Path to index.html', clone(assertFileExists), HTMLFILE_DEFAULT)
      .option('-u, --url <url_file>', 'Url of index.html', URL_DEFAULT)
      .parse(process.argv);
  if (program.url.length > 0) {
    rest.get(program.url).on('complete', loadUrlContent);
  } else {
    var checkJson = checkHtmlFile(cheerioHtmlFile(program.file), program.checks);
    var outJson = JSON.stringify(checkJson, null, 4);
    console.log(outJson);
  }
} else {
    exports.checkHtmlFile = checkHtmlFile;
}