Het probleem dat je tegenkomt is dat unicode meerdere manieren toestaat om hetzelfde symbool samen te stellen. De Python-module unicodedata
biedt een functie normalize
waarmee u unicode-representaties kunt converteren naar een vast formulier
(bijv. NFC)
from unicodedata import normalize
S1 = b'\xc4\x83\xcc\x83'.decode('UTF-8')
S2 = b'\xe1\xba\xb5'.decode('UTF-8')
print(normalize('NFC', S1).encode('UTF-8'))
print(normalize('NFC', S2).encode('UTF-8'))
In uw voorbeeld wordt TripAdvisor weergegeven in NFD-vorm, terwijl Kladblok NFC gebruikt.