Python’s all-in-one web miner from the pre-transformer era
Pattern bundles web crawling, multilingual NLP, and classic machine learning into a single Python module so you can mine text without assembling a toolchain.

What it does
Pattern is a Python module that combines web scraping, natural language processing, and machine learning into one package. It can crawl sites, query services like Twitter and Wikipedia, parse HTML, tag parts of speech in six languages, and train classifiers such as KNN, SVM, and Perceptron. It also handles network analysis and graph visualization, essentially packing a small data-science workshop into a single import.
The interesting bit
Instead of forcing you to install a scattered ecosystem, Pattern ships with bundled taggers, inflection data, LIBSVM, LIBLINEAR, NetworkX centrality, and even Peter Norvig’s spelling corrector. That makes it a rare, fully loaded toolkit from the era when Python data science was still figuring out its packaging story.
Key highlights
- Ships with Brill taggers for English, Dutch, German, Spanish, French, and Italian.
- Includes classic ML algorithms: KNN, SVM (via LIBSVM), Perceptron, and vector-space clustering.
- Offers built-in web mining tools: a DOM parser, a crawler, and wrappers for Google, Twitter, and Wikipedia.
- Bundles dependencies like LIBLINEAR, NetworkX centrality, and a spelling corrector.
- Claims 350+ unit tests and 50+ examples, with a BSD license.
Caveats
- The README lists support only for Python 2.7 and Python 3.6, suggesting it has not been updated for current Python versions.
- Travis CI and Coveralls badges are displayed in the header, which are typical of older projects.
Verdict
Good for researchers or hobbyists who want a self-contained, vintage Python toolkit for classic NLP and web mining tasks. Skip it if you need modern transformer-based models or a project with active, contemporary maintenance.
Frequently asked
- What is clips/pattern?
- Pattern bundles web crawling, multilingual NLP, and classic machine learning into a single Python module so you can mine text without assembling a toolchain.
- Is pattern open source?
- Yes — clips/pattern is open source, released under the BSD-3-Clause license.
- What language is pattern written in?
- clips/pattern is primarily written in Python.
- How popular is pattern?
- clips/pattern has 8.9k stars on GitHub.
- Where can I find pattern?
- clips/pattern is on GitHub at https://github.com/clips/pattern.