The RSS Reader is a desktop application for reading and managing RSS feeds. It is built using Python and the wxPython library for the graphical user interface. The application allows users to:
- Add, edit, and remove RSS feed URLs.
- Organize feeds into categories.
- View feed content and metadata.
- Analyze content sentiment and extract keywords.
- Translate feed content.
- Copy screenshots of feed content to the clipboard.
- Tree-Based Feed Organization: Categorize and manage RSS feeds in a hierarchical structure.
- Content Viewer: View and interact with feed content in an HTML panel.
- Sentiment Analysis: Automatically analyze the sentiment (positive, negative, or neutral) of feed content.
- Keyword Extraction: Identify and display the most relevant keywords from feed content.
- Translation: Translate feed titles and content to Indonesian or other languages using Google Translator.
- Screenshot to Clipboard: Copy a screenshot of the feed content panel to the clipboard.
- Python 3.8 or later
- Pip (Python package manager)
Run the following command to install the necessary libraries:
pip install wxPython feedparser nltk textblob Sastrawi deep-translator
Clone or download the repository to your local machine:
git clone https://github.com/dms-codes/rss-reader.git
cd rss-reader
-
NLTK Setup: Download the necessary NLTK data for tokenization and stopwords. Run the following Python code:
import nltk nltk.download('punkt') nltk.download('stopwords')
-
Feed URLs File: Create a
feed_urls.txt
file in the project directory to store feed URLs, descriptions, and categories. Each line should be in the format:<feed_url>|<description>|<category>
- Run the application:
python rss_reader.py
- Add, edit, or remove feed URLs using the tree-based interface.
- Select a feed to view its content, metadata, and sentiment analysis.
- Use the toolbar to copy screenshots of feed content to the clipboard.
- Feed URL Panel: Manage RSS feeds and categories.
- Title Panel: Display titles of feed entries.
- Content Panel: Show the content of the selected feed entry, including metadata, keywords, sentiment, and translations.
- Keyword Extraction: Extracts the most common keywords using NLTK and Sastrawi.
- Sentiment Analysis: Uses TextBlob to analyze content sentiment.
- Translation: Uses GoogleTranslator for content translation.
- Feed Parsing: Uses
feedparser
to parse RSS feeds.
.
├── rss_reader.py # Main application script
├── feed_urls.txt # File storing feed URLs, descriptions, and categories
├── rss_icon.png # Icon for the application (optional)
└── README.md # Documentation
Feel free to fork the repository and submit pull requests. For major changes, please open an issue to discuss the changes first.
This project is licensed under the MIT License. See the LICENSE file for details.
- dms-codes
GitHub: github.com/dms-codes