output = []
for part in entity_re.split(title):
if entity_re.match(part):
- part = unichr(int(part[2:-1])).encode(charset, "replace")
+ try:
+ part = unichr(int(part[2:-1])).encode(charset)
+ except UnicodeEncodeError:
+ pass # Leave the entity as is
output.append(part)
return ''.join(output)