Skip to content

Instantly share code, notes, and snippets.

@astur
astur / index.js
Created May 22, 2016 03:30
Ferra scraping (for Habr)
var tress = require('tress');
var needle = require('needle');
var cheerio = require('cheerio');
var resolve = require('url').resolve;
var fs = require('fs');
var URL = 'http://www.ferra.ru/ru/techlife/news/';
var results = [];
var q = tress(function(url, callback){
@astur
astur / vanilla_index.js
Created May 25, 2015 16:04
JQuery index in vanilla.js
function index(item, collection) {
return [].slice.call(document.querySelectorAll(collection)).indexOf(document.querySelector(item));
}
console.log(index('#item', '.collection'));
@astur
astur / react-redux-bp.js
Last active December 31, 2017 11:50
Boilerplate for small React+Redux app
//ACTION_CREATORS
const actions = {
setText: function(text){
return{
type: 'SET_TEXT',
text: text
}
},
inc: function(){
@astur
astur / icrawler-ferra.js
Last active June 9, 2016 15:10
Example of using icrawler to scrape data from Ferra.ru
var icrawler = require('icrawler');
var fs = require('fs');
var URL = 'http://www.ferra.ru/ru/techlife/news/';
var opts = {
errorsFirst: true,
concurrency: 10,
saveOnFinish: false,
saveOnCount: 500,
@astur
astur / win-ctrl-c-graceful-shutdown.js
Created April 29, 2016 23:40
Graceful shutdown template for Ctrl-C with Windows support
if (process.platform === 'win32') {
require('readline')
.createInterface({
input: process.stdin,
output: process.stdout
})
.on('SIGINT', function () {
process.emit('SIGINT');
});
}
@astur
astur / sha256.js
Created April 11, 2016 23:04
Easy sha256-for-object module
var crypto = require('crypto');
module.exports = function (obj){
var str = JSON.stringify(obj);
return crypto.createHash('sha256').update(str).digest('base64');
};
@astur
astur / SimpleHTTPServer
Created April 14, 2015 22:52
Easy share folder via http
$python -m SimpleHTTPServer 8000