OmniText is a comprehensive and intuitive web application built with Streamlit for effortless Natural Language Processing (NLP). It provides a complete suite of tools to analyze, summarize, and understand any body of text. Whether you need to quickly grasp the main points of a long document or extract key information from a web article, OmniText has you covered.
-
Intelligent Text Summarization: Condense lengthy articles into a few key sentences. Choose from a variety of advanced algorithms, including LSA, LexRank, Luhn, and TextRank, and customize the summary length to fit your needs.
-
Named Entity Recognition (NER): Automatically identify and categorize important entities within your text, such as PERSONS, ORGANIZATIONS, LOCATIONS, and DATES. A visualizer highlights these entities, and a frequency chart shows the most common ones.
-
URL Text Extraction: Simply paste a URL, and OmniText will scrape the main content from the web page for analysis, making it easy to work with online articles and blog posts.
-
Sentiment Analysis: Get an overall sentiment score for your text, classifying it as positive, negative, or neutral.
-
Word Cloud & Frequency Analysis: Visualize the most frequently used words in your text with a dynamic word cloud and a bar chart, helping you quickly identify the main themes.
-
Streamlit: The primary framework for building the interactive and user-friendly web interface.
-
spaCy: A powerful library for high-performance Named Entity Recognition.
-
sumy: A versatile library that provides various unsupervised text summarization algorithms.
-
TextBlob: Used for performing simple and effective sentiment analysis.
-
Requests & BeautifulSoup: Essential libraries for extracting text from web pages.
-
WordCloud & Matplotlib: For generating insightful data visualizations.
1. Clone the Repository
Bash
git clone https://github.com/Silverfang180/omnitext.git cd omnitext
2. Create and Activate a Virtual Environment
Bash
python -m venv venv 3. Install Required Libraries Bash
pip install -r requirements.txt
4. Download the spaCy Model Bash
python -m spacy download en_core_web_sm
5. Run the Streamlit App
Bash
streamlit run app.py
The application will automatically open in your default web browser.
Contributions are highly welcome! If you have ideas for new features, improvements, or bug fixes, please feel free to open an issue or submit a pull request.
This project is licensed under the MIT License. See the LICENSE file for more details.
- From the above image, we are going to perform Summarization feature.
- This is an output of Summarization.
- In this image, we perform NER(Name Entity Recognition) feature.