Skip to content

Instantly share code, notes, and snippets.

View cedricbonhomme's full-sized avatar

Cédric Bonhomme cedricbonhomme

View GitHub Profile
@cedricbonhomme
cedricbonhomme / pcodes.py
Last active August 29, 2015 14:09
French postal codes
#! /usr/bin/env python
#-*- coding: utf-8 -*-
import sys
import csv
import urllib2
from contextlib import contextmanager
POSTAL_CODES = "https://www.data.gouv.fr/s/resources/base-officielle-des-codes-postaux/20141106-120608/code_postaux_v201410.csv"
#! /usr/bin/env python
# -*- coding: utf-8 -*-
#
# Avoids obstacles with the infrared sensor.
#
import time
from ev3.lego import LargeMotor
#
# 1. Download CSV points cloud data of Thom Yorke here:
# https://code.google.com/p/radiohead/downloads/list
# (original implementation)
# 2. Add Python mode to Processing
# 3. Load this file (or paste the contents of this file
# into Processing and save to a name and location of your choosing)
# 4. If it doesnt exist, create a folder called "data"
# inside the sketch folder.
@cedricbonhomme
cedricbonhomme / user.js
Last active August 29, 2015 14:11
Firefox about:config personalization
user_pref("browser.urlbar.trimURLs", false);
user_pref("browser.urlbar.formatting.enabled", false);
user_pref("browser.search.suggest.enabled", false);
user_pref("browser.search.showOneOffButtons", false);
user_pref("geo.enabled", false);
user_pref("javascript.enabled", false);
user_pref("loop.throttled", false);
user_pref("network.http.sendRefererHeader", 0);

Keybase proof

I hereby claim:

  • I am cedricbonhomme on github.
  • I am cedricbonhomme (https://keybase.io/cedricbonhomme) on keybase.
  • I have a public key whose fingerprint is 55F5 D60E EFCA 3591 0089 18E7 A1CB 94DE 57B7 A70D

To claim this, I am signing this object:

#!/usr/bin/env python
# -*- coding: utf-8 -*-
import pylab
import glob
from collections import Counter
from PIL import Image
@cedricbonhomme
cedricbonhomme / whoisbanned.py
Last active January 4, 2016 05:29
Get informations about IP banned by fail2ban.
#! /usr/bin/env python
# -*- coding: utf-8 -*-
import json
import requests
# https://github.com/CIRCL/bgpranking-redis-api/tree/master/example/api_web/client
from bgpranking_web import api
with open("/var/log/fail2ban.log", "r") as f:
@cedricbonhomme
cedricbonhomme / mail_banned_ip.sh
Created January 23, 2014 09:37
Mail IP banned by fail2ban.
#! /bin/sh
servername="Server"
for ip in echo `grep -i unban /var/log/fail2ban.log | awk '{print $NF}' | tail -n 10`
do
for email in `whois $ip | perl -wne'while(/[\w\.\-]+@[\w\.\-]+\w+/g){print "$&\n"}' | sort | uniq`
do
echo "Sending email to $email..."
echo "Hi,
import sys, marshal, functools, subprocess
child_script = """
import marshal, sys, types;
fn, args, kwargs = marshal.load(sys.stdin)
marshal.dump(
types.FunctionType(fn, globals())(*args, **kwargs),
sys.stdout)
"""
@cedricbonhomme
cedricbonhomme / intent_links_to_gexf.py
Last active May 12, 2016 09:41
Generates a GEXF file for Gephi based on links between intents of a set of Android applications.