Between the afternoon of the 23rd and the morning of the 26th October 2023, Sogrape and 42 Porto hosted a Hackathon under the following theme: “Online Wine Price Harvesting Challenge”. The challenge the participants were tasked with was implementing a web scraping system able to collect wine prices from national online stores on a daily basis, and to develop an interactive and intuitive interface to display the same data.
We are presenting an automated web scraping website that will allow Sogrape’s employees to easily compare pricing between several retailers for the same product, and to keep track of price fluctuations over time, in an automated manner.
Before you begin, ensure you have met the following requirements:
-
Clone the repository:
(https://github.com/hackathon-sogrape/team-10.git)
-
Install XAMPP:
- Download and install XAMPP.
-
Start Apache and MySQL in XAMPP:
- Launch XAMPP Control Panel.
- Click "Start" next to Apache and MySQL.
-
Configure your project:
- Copy your project files to the XAMPP web server directory (usually
C:\xampp\htdocs\hack_dashboard
on Windows). - Edit your project configuration files if necessary.
- Copy your project files to the XAMPP web server directory (usually
-
Install Python and required packages:
- Download and install Python.
- Open the Windows command prompt.
- Navigate to your project directory.
- Install the required packages using pip:
python -m pip install -r requirements.txt
or install them individually using:
pip install <package>
-
Start XAMPP:
- Launch XAMPP Control Panel.
- Click "Start" next to Apache.
-
Run an SQL server instance and use our 'mydb_wine.sql' file: This will ensure you are connected to a database that our program is compatible with. It can also run on any web server/host.
-
Access your PHP website:
- Ensure XAMPP is running.
- Click "Admin" button to acces the root/index of our website.
-
Run the Python code:
- Open a terminal/command prompt.
- Navigate to your project directory.
- Execute your Python script using the following command:
python main.py
-
Refresh the dashboard using the button All the data of the SQL will appear.
This project is licensed under the MIT License.