Skip to content

Instantly share code, notes, and snippets.

View ivansabik's full-sized avatar

Iván ivansabik

  • Americas
View GitHub Profile
@ivansabik
ivansabik / csv_split.sh
Created June 9, 2014 15:39
Split CSV to multiple files with Shell script
#!/bin/bash
tail -n +2 CONSO.txt | split -l 20000000 - split_
for file in split_*
do
head -n 1 CONSO.txt > tmp_file
cat $file >> tmp_file
mv -f tmp_file $file
done
@ivansabik
ivansabik / cronScriptExample.php
Last active August 29, 2015 14:12
Command line periodic script with PHP
#!/usr/bin/php
<?php
while(true) {
sleep(5);
echo 'aufgewacht' . PHP_EOL;
}
?>
@ivansabik
ivansabik / xrayPhantomExample.njs
Last active March 21, 2017 18:58
Phantom with x-ray example
var xray = require('x-ray');
var phantom = require('x-ray-phantom');
var URL = 'http://www.yad2.co.il/Nadlan/rent.php?City=%D7%99%D7%A8%D7%95%D7%A9%D7%9C%D7%99%D7%9D&Neighborhood=&HomeTypeID=11&fromRooms=1&untilRooms=&fromPrice=200&untilPrice=&PriceType=1&FromFloor=&ToFloor=&EnterDate=&Info=';
xray(URL)
.use(phantom())
.select([{
$root: 'body',
tds: ['td']
@ivansabik
ivansabik / cnsf.js
Last active August 29, 2015 14:18
Script Node.js para checar si ya se publicó la convocatoria del premio CNSF 2015 y enviar mail de alerta
// HTTP a http://www.cnsf.gob.mx/Eventos/Paginas/Premios_2015.aspx
// Si el header de respuesta es distinto de 200, ignorar
// Si es 200 enviar mail
var nodemailer = require('nodemailer');
var smtpTransport = require('nodemailer-smtp-transport');
var request = require('request');
var URL = 'http://www.cnsf.gob.mx/Eventos/Paginas/Premios_2015.aspx';
var USER = '';
@ivansabik
ivansabik / alerta-cnsf
Last active August 29, 2015 14:18
Ejemplo node-app para ejecutar al iniciar Ubuntu
#!/bin/sh
# Source: https://github.com/chovy/node-startup/blob/master/init.d/node-app
# author: Anthony Ettinger (chovy)
NODE_ENV="development"
PORT="3000"
APP_DIR="~/scripts-startup"
NODE_APP="cnsf.js"
CONFIG_DIR="$APP_DIR"
@ivansabik
ivansabik / iconv_convert_all_mp4_to_mp3.sh
Last active August 29, 2015 14:24
Iconv convert all mp4 in a folder to mp3
#!/bin/sh
for i in *.m4a; do avconv -i "$i" "${i/.m4a/.mp3}"; done
@ivansabik
ivansabik / soundcloudPlaylistScrape.js
Created October 10, 2015 18:39
Scrape soundcloud playlist with casperjs and slimerjs then save to text file
var casper = require('casper').create();
var fs = require('fs');
casper.start('https://soundcloud.com/vlad-gonta/sets/new-1', function() {
this.viewport(768, 10000);
}).then(function () {
this.scrollToBottom();
this.wait(1000);
}).then(function () {
this.scrollToBottom();
@ivansabik
ivansabik / add_alias.sh
Last active November 10, 2015 16:00
Add permanent alias for CLI
#!/bin/bash
echo "alias cls='clear'" >> ~/.bash_aliases && source ~/.bash_aliases
@ivansabik
ivansabik / print_sqlalchemy_query_mysql.py
Created February 2, 2017 18:35
Print SQLAlchemy query_MySQL
# http://nicolascadou.com/blog/2014/01/printing-actual-sqlalchemy-queries/
from sqlalchemy.dialects import mysql; print str(query.statement.compile(dialect=mysql.dialect()))
@ivansabik
ivansabik / compare_files_in_dir.py
Last active May 5, 2017 23:51
Compares md5 hashes for files in two directories recursively. It will compare using one dir as base (the left one) against the other one (the right one).
import argparse
import hashlib
import os
def get_checksum(f):
md5 = hashlib.md5()
md5.update(open(f).read())
return md5.hexdigest()