SAT News Analyser is a sophisticated web application that provides in-depth analysis of news articles by extracting and processing content from various online sources.
- URL-based news article extraction
- Automatic text cleaning and formatting
- Comprehensive metadata analysis:
- Sentence and word count
- Link count
- Part of Speech (POS) tag frequency
- Sentiment analysis
- News genre detection
- Reading time estimation
- Support for multiple news websites
- User authentication via Google OAuth
- Article history tracking
- Text-to-speech functionality
- Backend: Flask (Python)
- Database: PostgreSQL
- Authentication: Google OAuth
- Libraries:
- NLTK
- TextBlob
- Newspaper3k
- BeautifulSoup
- psycopg2
- Python 3.8+
- PostgreSQL
- Google Cloud Project (for OAuth)
git clone https://github.com/satyampandey1411/SAT-News-Analyser.git
cd SAT-News-Analyser
python3 -m venv venv # On Windows, use python -m venv venv
source venv/bin/activate # On Windows, use `venv\Scripts\activate`
pip install -r requirements.txt
- Create a PostgreSQL database
- Update database credentials in
app.py
- Create a project in Google Cloud Console
- Generate OAuth 2.0 credentials
- Download
authentication.json
python3 app.py # On Windows, use python -m venv venv
- Navigate to the homepage
- Paste a news article URL
- Click search/analyze
- View detailed article analysis
- Login with Google
- Restricted access for specific email domains
- DD News
- Times Now
- India Times
- The Hindu
- BBC
- CNBC
- Times of India
- Indian Express
- And many more!
-Newspaper3k for seamless news extraction and content parsing -NLTK and TextBlob for robust natural language processing and sentiment analysis -Google OAuth for secure and reliable user authentication -BeautifulSoup for efficient web scraping -PostgreSQL for scalable and powerful database management -Open-source communities and developers for their contributions
- Fork the repository
- Create your feature branch
- Commit changes
- Push to the branch
- Create a Pull Request
This project is open-source. Please check the LICENSE file for details.