Skip to content

Instantly share code, notes, and snippets.

@fabienhinault
Last active July 20, 2017 14:22
Show Gist options
  • Save fabienhinault/cb22773bd60a838eb5b75866aca77c7f to your computer and use it in GitHub Desktop.
Save fabienhinault/cb22773bd60a838eb5b75866aca77c7f to your computer and use it in GitHub Desktop.
Python3 script used to anonymize bulletins.ps
#!/usr/bin/python3
import re
import io
import unicodedata
f = open('/home/fab/Documents/dp/election/bulletins.ps',
encoding="latin-1")
output = open('/home/fab/Documents/dp/election/bulletins_anonym_1.ps', 'w',
encoding='latin-1')
for line in f:
m = re.search('\([^\(]+\)', line)
if m:
r = io.StringIO()
r.write(line[0 : m.start()])
for i in range(m.start(), m.end()):
category = unicodedata.category(line[i])
if category == 'Ll':
r.write('a')
elif category == 'Lu':
r.write('A')
else:
r.write(line[i])
r.write(line[m.end() : ])
output.write(r.getvalue())
else:
output.write(line)
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment