#!/usr/bin/env python # -*- coding: utf-8 -*- # Depends: python-geoip import sys import re try: import GeoIP except: print "Support GeoIP non disponible. Installer le paquet 'python-geoip'." sys.exit(1) PATTERN_IP4 = r'\b\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}\b' #REPLACEMENT_IP4 = '<%(cc)s>%(ip4)s' REPLACEMENT_IP4 = '<\033[1;31m%(cc)s\033[m>\033[34m%(ip4)s\033[m' gi = GeoIP.new(GeoIP.GEOIP_MEMORY_CACHE) def ip4_to_cc(matchobj): ip4 = matchobj.group(0) cc = gi.country_code_by_addr(ip4) if cc is None: cc = '??' return REPLACEMENT_IP4 % {'cc': cc, 'ip4': ip4} pattern = re.compile(PATTERN_IP4, re.MULTILINE) sys.stdout.write(re.sub(pattern, ip4_to_cc, sys.stdin.read()))