This code is modified in order to adapt to Python3. And according to my own requirements, auther added some functions or params to preserve the specific tokens like nicknames, urls, and hashtags. The former version of code implements a basic, Twitter-aware tokenizer. Originally developed by Christopher Potts (Happy Fun Tokenizer) and updated by H. Andrew Schwartz. Shared with Christopher's permission. Further updated by Caspar Chan.
from happiestfuntokenizing.happiestfuntokenizing import Tokenizer
tokenizer = Tokenizer()
message = """OMG!!!! :) I looooooove this tokenizer lololol"""
tokens = tokenizer.tokenize(message)
print(tokens)
['omg', '!', '!', '!', '!', ':)', 'i', 'looooooove', 'this', 'tokenizer', 'lololol']
message = """OMG!!!! :) I looooooove this tokenizer LoLoLoLoLooOOOOL"""
tokenizer = Tokenizer(preserve_case=True)
tokens = tokenizer.tokenize(message)
print(tokens)
['OMG', '!', '!', '!', '!', ':)', 'I', 'looooooove', 'this', 'tokenizer', 'LoLoLoLoLooOOOOL']
message = """RT @cahnnle #happyfuncoding: this is a typical Twitter tweet :-) https://twiter/test.phd"""
tokenizer = Tokenizer(preserve_keywords=True)
tokens = tokenizer.tokenize(message)
print(tokens)
['rt', '@cahnnle', '#happyfuncoding', ':', 'this', 'is', 'a', 'typical', 'twitter', 'tweet', ':-)']
print(tokenizer..get_preserve_dict())
{'username': ['@cahnnle'], 'url': ['https://twiter/test.phd'], 'hashtag': ['#happyfuncoding']}
This is available through pip
pip install happiestfuntokenizing
If you do not have sudo privileges you can use the --user
flag
pip install --user happiestfuntokenizing
This uses Python 3.* Package dependencies include re
and html
.
Licensed under a GNU General Public License v3 (GPLv3)
Adapted by the World Well-Being Project based out of the University of Pennsylvania and Stony Brook University. Originally developed by Christopher Potts.