TextBlob

Simple, Pythonic, text processing--Sentiment analysis, part-of-speech tagging, noun phrase extraction, translation, and more.

Github stars Tracking Chart

TextBlob: Simplified Text Processing

.. image:: https://badgen.net/pypi/v/TextBlob
:target: https://pypi.org/project/textblob/
:alt: Latest version

.. image:: https://badgen.net/travis/sloria/TextBlob/dev
:target: https://travis-ci.org/sloria/TextBlob
:alt: Travis-CI

Homepage: https://textblob.readthedocs.io/ <https://textblob.readthedocs.io/>_

TextBlob is a Python (2 and 3) library for processing textual data. It provides a simple API for diving into common natural language processing (NLP) tasks such as part-of-speech tagging, noun phrase extraction, sentiment analysis, classification, translation, and more.

.. code-block:: python

from textblob import TextBlob

text = '''
The titular threat of The Blob has always struck me as the ultimate movie
monster: an insatiably hungry, amoeba-like mass able to penetrate
virtually any safeguard, capable of--as a doomed doctor chillingly
describes it--"assimilating flesh on contact.
Snide comparisons to gelatin be damned, it's a concept with the most
devastating of potential consequences, not unlike the grey goo scenario
proposed by technological theorists fearful of
artificial intelligence run rampant.
'''

blob = TextBlob(text)
blob.tags           # [('The', 'DT'), ('titular', 'JJ'),
                    #  ('threat', 'NN'), ('of', 'IN'), ...]

blob.noun_phrases   # WordList(['titular threat', 'blob',
                    #            'ultimate movie monster',
                    #            'amoeba-like mass', ...])

for sentence in blob.sentences:
    print(sentence.sentiment.polarity)
# 0.060
# -0.341

blob.translate(to="es")  # 'La amenaza titular de The Blob...'

TextBlob stands on the giant shoulders of NLTK_ and pattern_, and plays nicely with both.

Features

  • Noun phrase extraction
  • Part-of-speech tagging
  • Sentiment analysis
  • Classification (Naive Bayes, Decision Tree)
  • Language translation and detection powered by Google Translate
  • Tokenization (splitting text into words and sentences)
  • Word and phrase frequencies
  • Parsing
  • n-grams
  • Word inflection (pluralization and singularization) and lemmatization
  • Spelling correction
  • Add new models or languages through extensions
  • WordNet integration

Get it now

::

$ pip install -U textblob
$ python -m textblob.download_corpora

Examples

See more examples at the Quickstart guide_.

.. _Quickstart guide: https://textblob.readthedocs.io/en/latest/quickstart.html#quickstart

Documentation

Full documentation is available at https://textblob.readthedocs.io/.

Requirements

  • Python >= 2.7 or >= 3.4

License

MIT licensed. See the bundled LICENSE <https://github.com/sloria/TextBlob/blob/master/LICENSE>_ file for more details.

.. _pattern: http://www.clips.ua.ac.be/pattern
.. _NLTK: http://nltk.org/

Main metrics

Overview
Name With Ownersloria/TextBlob
Primary LanguagePython
Program languagePython (Language Count: 1)
Platform
License:MIT License
所有者活动
Created At2013-06-30 18:29:18
Pushed At2025-07-28 20:02:02
Last Commit At2020-04-26 14:54:28
Release Count42
Last Release Name0.19.0 (Posted on )
First Release Name0.1.0 (Posted on )
用户参与
Stargazers Count9.4k
Watchers Count259
Fork Count1.2k
Commits Count630
Has Issues Enabled
Issues Count276
Issue Open Count67
Pull Requests Count143
Pull Requests Open Count5
Pull Requests Close Count82
项目设置
Has Wiki Enabled
Is Archived
Is Fork
Is Locked
Is Mirror
Is Private