This project automates the collection and aggregation of news from major finance and technology websites using RSS feeds. Instead of manually visiting multiple sites daily, this system retrieves and displays the latest articles on a single page. The project focuses on finance and technology news but can be adapted for other interests by modifying the source websites.
-
Clone the Repository:
git clone https://github.com/AdrikaPanwar/NEWS-RSS.git
cd NEWS-RSS
-
Install the flask:
sudo apt install python-3 flask
- if by chance this will not work use this command
sudo apt install python-3 flask python3-pip
-
Install the Feedparser:
sudo apt install python3-feedparser
-
Configure RSS Feeds:
- Ensure the RSS feed URLs for BBC News, CNN, Wired, and TechCrunch are correctly set in your script. Example configuration:
rss_feeds = {
"BBC News": "http://feeds.bbci.co.uk/news/business/rss.xml",
"CNN": "http://rss.cnn.com/rss/money_news_international.rss",
"Wired": "https://www.wired.com/feed/rss",
"TechCrunch": "https://techcrunch.com/feed/"
}
- Run the Application:
python app.py
- Access the news aggregator through your web browser.
-
RSS Feed Parsing:
- Fetch RSS feeds from BBC News, CNN, Wired, and TechCrunch.
- Parse the XML data to extract article titles, summaries, links, and publishing dates.
-
Data Display:
- Aggregate the extracted data onto a single webpage or dashboard.
- Users can view the latest headlines and summaries and follow links to full articles.
-
Automation:
- The system periodically fetches updates from the RSS feeds and updates the displayed news automatically.
-
Python: Programming language for scripting and data processing.
-
feedparser: Python library for parsing RSS feeds.
-
datetime: Python module for handling and formatting dates.
-
HTML & Jinja5: Markup language for structuring web pages.
-
TailwindCSS: Style sheet language for designing and formatting the web page.
-
Flask: Web framework for building and serving the application.
-
Vercel: Deployment platform for hosting the web application.
Feedparser is a python library used for parsing and extracting information from RSS(Really simple Syndication) and atom feeds. These feeds are XML-based formats used to distribute and share content, such as news update, blog posts, and podcasts.
- It abstracts away the complexities of XML parsing and provides a straightforward API for accessing feed data.
RSS ( Really simple syndication or rich site summary) was created to address the need for a standardized way to distribute and consume web content efficiently.
- It allow websites to syndicate their content, making it easier for users to receive updates from multiple sources in one place.
- Instead of visiting each website individually, users can subscribe to an *RSS Feed and get updates delivered automatically
But you can use the RSS Urls to subscribe to the RSS feeds using your preferred RSS reader or aggregator.
-
feedly
-
Inoreader
-
The Old Reader
-
Thunderbird etc
yes! Thunderbird is also a RSS aggregator which is used for mail and RSS too in Linux OS
If you want to contribute than feel free to contribute in it and yes apart from that If you raised any issue related to this project then I added a
error.pdf
too in this repository too; you can go through it and resolve the issues which I also faced during this project.