This project is a web scraper that searches and compares product prices on OLX, presenting the results in a user-friendly web interface.
- Product search by name
- Display of maximum, minimum, and average price
- List of ads with direct links
- Interactive web interface using Gradio
You can also run the project using Docker Compose. Follow the steps below:
- Make sure you have Docker and Docker Compose installed on your machine.
- Navigate to the project directory:
cd OLX-Price-Search
- Build and start the containers:
docker-compose up --build
- After the build completes, run:
docker-compose up -d
- Access the address http://localhost:7878/
- Python
- Selenium
- Gradio
- Docker
- Chrome Webdriver
- Clone the repository:
git clone https://github.com/alex-des-santos/OLX-Price-Search.git
- Navigate to the project directory:
cd OLX-Price-Search
- Install the dependencies:
pip install -r requirements.txt
- Run the main script:
python main.py
- Access the address http://localhost:7878/
- Fork the project
- Create a branch for your feature:
git checkout -b my-feature
- Commit your changes:
git commit -m 'My new feature'
- Push to the remote repository:
git push origin my-feature
- Open a Pull Request
This project is licensed under the MIT License - see the LICENSE file for details.
- Error Handling: The scraper could be improved with more robust error handling to gracefully manage situations like network issues or changes in OLX's website structure.
- Scalability: Currently, the scraper might not be optimized for handling a very large number of searches concurrently. Future improvements could focus on improving scalability and performance.
- Data Persistence: Consider adding a mechanism to persist scraped data for offline access or analysis.
- Advanced Search Options: Expanding search capabilities to include filters (e.g., price range, location) would enhance the user experience.