Мне нужно чистить специальные символы, такие как 👉👌💦✨
из твитов. Для того, чтобы сделать это, я следовал этой стратегии (я использую Python 3):Как удалить специальные символы (например, `'ŒðŸ'`) из твитов
- Преобразовать твиты из байт в строки, чтобы получить специальные символы, как шестнадцатеричном, так
Ã
становится\xc3\
; - Используя регулярные выражения, удалите
b'
иb"
(в начале строки) и'
или"
(в конце строки), добавленные Python после процесса преобразования; - Наконец, удалите шестнадцатеричные представления, также используя регулярное выражение.
Вот мой код:
import re
tweet = 'b"[/Very seldom~ will someone enter your life] to question\xc3\xa2\xe2\x82\xac\xc2\xa6 "'
#encoding to 'utf8'
tweet_en = tweet.encode('utf8')
#converting to string
tweet_str = str(tweet_en)
#eliminating the b' and b" at the begining of the string:
tweet_nob = re.sub(r'^(b\'b\")', '', tweet_str)
#deleting the single or double quotation marks at the end of the string:
tweet_noendquot = re.sub(r'\'\"$', '', tweet_nob)
#deleting hex
tweet_regex = re.sub(r'\\x[a-f0-9]{2,}', '', tweet_noendquot)
print('this is tweet_regex: ', tweet_regex)
Конечный результат: [/Very seldom~ will someone enter your life] to question "
(от которого я до сих пор не удалось удалить окончательный "
). Мне было интересно, есть ли лучший и более простой способ очистки специальных символов в данных Twitter. Любая помощь будет оценена.