#!/usr/bin/env python3.2
# coding: utf-8
Использовать
argparse (покойся с миром optparse).
Избегать
open(wrk_dir + "/" + f_name)
и использовать
os.path.join()
У вас много регулярок. Стоит давать им осмысленные имена (re.compile) или комментировать их.
Во многих местах код можно сделать изящнее/переделать
# единообразие
sys.exit("ERROR: Encoding not specified.")
print("ERROR: Argument not defined.")
def visible(element):
if cond1:
return False
elif cond2:
return False
return True
# почему не просто
if cond1 or cond2:
return False
return True
Как минимум это. Но на мой взгляд тут много мест которые стоит переписать.