Comparador de Precios de Supermercado

Project Description
The idea behind this project was to develop a tool that would allow me to compare product prices across different supermarkets I use in my daily life. To achieve this, web scraping with Python was used to extract data from various online stores and store it in a database. This data is then presented in a clear and accessible way through an optimized web interface.
The project features a responsive design, allowing for optimal viewing on both mobile devices and desktop computers.
The supermarkets from which data has been extracted are: Carrefour, Mercadona, and Lidl.
Technologies Used
This project is divided into two main parts: Backend and Frontend.
Backend
For the Backend, I developed a script in Python using various web scraping libraries, such as BeautifulSoup and Playwright, to extract product data and prices from the supermarkets’ websites or APIs.
The retrieved data is stored in a PostgreSQL database hosted on Neon, a cloud service that allows for simple and efficient database management. This enables real-time price queries from the Frontend.
Frontend
For the Frontend, I integrated the project into my personal website, developed with Astro and TypeScript. The site allows users to search for products and view up-to-date prices across different supermarkets, thanks to a real-time connection to the database.
Using Astro has made it possible to optimize the site’s loading speed by leveraging Server Side Rendering (SSR) to fetch dynamic data from the database and deliver a smooth and efficient user experience.