This project aims to compare the prices of major Sri Lankan mobile phone sellers. Prices are scraped from the respective websites and displayed in a table. Users can filter the results based on the phone model the seller , RAM and storage options. The project is built using Python and Streamlit.
- Price Comparison: Easily compare prices from different sellers.
- Filtering Options: Filter results based on phone model, seller, price range, storage, and RAM.
- Interactive Interface: User-friendly and interactive web application built with Streamlit.
- Celltronic
- DealzWoot
- Doctor Mobile
- Genius Mobile
- Life Mobile
- Present Solution
- X Mobile
- Emobile
- Streamlit: For building the interactive web application.
- Pandas: For data manipulation and analysis.
- BeautifulSoup: For web scraping.
- Requests: For making HTTP requests.
- Numpy: For numerical operations.
- Openpyxl: For reading and writing Excel files.
- Web Scraping: Extracting data from websites.
- Streamlit: Building interactive web applications.
- Data Handling using Pandas: Efficiently managing and analyzing data.
Phone_price_compare
├── data_src
│ ├── instock_data
│ │ ├── storenames.xlsx...
│ ├── multiple_combined
│ │ └── Combined_data.xlsx
│ ├── ram_rom_extracted
│ │ └── storenames.xlsx...
│ ├── html
│ │ ├── Html Files...
├── main
│ ├── combining_data
│ │ ├── combine_all.py
│ │ ├── combine_data.py
│ | ├── combine_extra.py
│ ├── instock_checker
│ │ ├── storenames.py...
| ├── web_to_html
| │ ├── storenames.py...
│ ├── instock_to_ram_rom
│ │ ├── conversion.py
│ │ ├── genuis_conversion.py
│ └── All.py
└── app.py
- Clone the repository:
git clone https://github.com/yourusername/Phone_price_compare.git
- Navigate to the project directory:
cd Phone_price_compare
- Install the required libraries:
pip install -r requirements.txt
- Run the Streamlit app:
streamlit run app.py
- Celltronic.py: Scripts for scraping prices from Celltronic.
- conversion.py: Handles conversion tasks for data processing.
- combine_all.py: Combines data from multiple sources into a single dataset.
- All.py: Main script to run all individual scrapers.
- app.py: The main application script for running the Streamlit web app.
Here is an example of what the filtered data looks like:
Contributions are welcome! Please open an issue or submit a pull request for any improvements.
- License: This software is licensed under MIT.
For any questions or suggestions, please contact:
- Name: Savindu Wickramasinghe
- Email: [email protected]
- Github: https://github.com/SavinduWickr
