Report PDF
Report PDF
ON
December, 2024
Department of CSE -IOT
Session 2024-2025
Project Completion Certificate
Date: 27/12/2024
This is to certify that Ms. Gujan Sharma bearing Roll No.2201321559007, student of
4thyear CSE-IoT has completed project program (KCS-752) with the Department of
CSE-IoT from 26-Sep-24 to 26-Dec-24.
This project work has not been submitted anywhere for any degree.
We would like to sincerely thank Mr. Jai Prakash Bhati, our project coordinator, and all of
the professors for their counsel, inspiration, and unwavering support over the course of our
project work. Without their assistance and insightful recommendations, our task would not
have been feasible. We are deeply grateful to our esteemed Department Head, CSE-IoT Dr.
We are also appreciative of Dr. Dheeraj Gupta, our director, for providing the resources
we needed to complete our project job effectively. We would like to express our gratitude to all
of our friends for their support and helpful advice throughout this effort. Finally, we have no
words to express our sincere gratitude to our parents who have shown us this world and for
The "Price Comparison Website" is a Python-based application that enables users to compare
prices of various products from multiple online retailers. This system provides an easy-to-use
interface where users can search for products and view their prices from different websites,
helping them make informed purchasing decisions. The application employs web scraping
techniques to gather price data from various sources, displays it in an organized manner, and
allows users to choose the most cost-effective option. This tool can be beneficial for anyone
looking to find the best deal online.
CONTENTS
1. INTRODUCTION
2. SYSTEM STUDY
2.1 EXISTING SYSTEM
2.2 PROPOSED SYSTEM
3. SYSTEM REQUIREMENTS
3.1 HARDWARE REQUIREMENTS
3.2 SOFTWARE REQUIREMENTS
4. SYSTEM ANALYSIS
4.1 FEASIBILITY STUDY
4.2 TECHNICAL FEASIBILITY
4.3 ECONOMICAL FEASIBILTY
4.4 SOCIAL FEASIBILITY
4.5 BEHAVIOURAL FEASIBILITY
4.6 ABOUT THE PROJECT
5. SYSTEM DESIGN
5.1 MODULE DESCRIPTION
5.2 INPUT DESIGN
5.3 OUTPUT DESIGN
5.4 DATA FLOW DIAGRAM (DFD)
6. IMPLEMENTATION AND SYSTEM TESTING
6.1 IMPLEMENTATION
6.2 SYSTEM TESTING
7. SOURCE CODE
8. OUTPUT SCREENSHOTS
9. CONCLUSION
10. BIBLIOGRAPHY
1. INTRODUCTION
In the age of e-commerce, online shopping has become an integral part of our daily lives,
offering convenience, variety, and competitive pricing. However, with the increasing number
of online marketplaces, it can be overwhelming for users to determine which platform offers
the best deal for a specific product. The Price Comparison Website, developed using Python,
aims to address this challenge by providing users with a streamlined platform to compare
product prices across various online shopping platforms.
This project employs web scraping techniques to extract real-time pricing and product details
from popular e-commerce websites such as Amazon, Flipkart, and more. By entering the
name of a product, users can instantly view a detailed comparison of its prices across multiple
platforms. This not only helps users make well-informed purchasing decisions but also saves
them significant time and effort that would otherwise be spent manually checking each
website.
The key objectives of this project are:
1. Real-Time Price Comparison: Ensure users have access to up-to-date and accurate
product pricing from different e-commerce platforms.
2. User-Friendly Interface: Simplify the process of searching for products and viewing price
comparisons through an intuitive interface.
3. Efficiency and Accuracy: Utilize Python's robust libraries and frameworks to ensure
efficient data extraction and error handling, maintaining the reliability of the information
presented.
1.2 OBJECTIVE
The primary objective of a Price Comparison Website is to simplify the shopping experience by
enabling users to compare product prices across multiple e-commerce platforms in real time.
The system leverages Python and web scraping techniques to provide users with accurate,
efficient, and user-friendly access to product pricing and details. Below are the key objectives,
tailored for a price comparison system:
User-Friendly Interface
Create an intuitive and easy-to-navigate interface, enabling users to input product
queries and view results effortlessly.
Provide a responsive design that works seamlessly across devices, including desktops,
tablets, and mobile phones.
can be time-consuming and inefficient. Users have to visit multiple e-commerce websites to
The proposed system automates the price comparison process by scraping data from
various online stores. This system helps users quickly find the best prices for products
and displays all necessary details in one place, reducing the time spent searching for
Python 3.x
System design is the process of problem-solving and planning for a software solution. For this Price
Comparison Website, the system design includes creating a structured approach to handling data
scraping, processing, and presenting the comparison of prices across multiple e-commerce platforms.
6.1 Implementation
The implementation phase involves coding the web scraping, data processing, and user
1. Web Scraping: Using BeautifulSoup or Selenium to scrape data from product pages.
3. User Interface: Building a simple GUI using Tkinter to allow users to input product
In system testing, the entire system is tested as a whole. The project is run within a Python
development environment (e.g., PyCharm), and the system's functionality is verified from the
user’s perspective. Various test cases are executed, and the results are monitored to ensure
expected behavior. The project will scrape product prices from multiple websites (simulated in
this case), store them in a Linked List, and display the lowest price for the user. This includes
modules for:
3. Comparing prices.
import requests
import pandas as pd
class ProductNode:
self.name = name
self.price = price
self.website = website
self.product_link = product_link
class ProductList:
def __init__(self):
self.head = None
def add_product(self, name, price, website, product_link):
if not self.head:
self.head = new_product
else:
current = self.head
while current.next:
current = current.next
current.next = new_product
def display_products(self):
current = self.head
while current:
print(f"Product: {current.name}")
print(f"Price: ${current.price}")
print(f"Website: {current.website}")
print(f"Link: {current.product_link}")
print("------------------------------------")
current = current.next
def get_products_as_dict(self):
product_list = []
current = self.head
while current:
product_list.append({
'Product': current.name,
'Price': current.price,
'Website': current.website,
'Link': current.product_link
})
current = current.next
return product_list
# Scraping function to fetch price details from an e-commerce website
(placeholder)
def fetch_product_price_from_amazon(product_name):
'+')}"
# Extracting product names and prices (modify based on actual Amazon HTML
structure)
result-item'})
product_details = []
try:
normal'})['href']
except AttributeError:
return product_details
# Main function to drive the comparison website
def main():
product_list = ProductList()
amazon_products = fetch_product_price_from_amazon(product_name)
flipkart_products = fetch_product_price_from_flipkart(product_name)
product_list.display_products()
# Optionally, convert the linked list data to a pandas DataFrame and display as
a table
products_dict = product_list.get_products_as_dict()
df = pd.DataFrame(products_dict)
print(df)
if __name__ == "__main__":
main()
SCREENSHOT
RESULT ANALYSIS
Once the website is implemented, it's important to analyze the results in terms of data
accuracy, user engagement, and system performance. Below is an analysis of the
expected results based on the implementation:
The project demonstrates how Python's capabilities can be utilized to solve real-world
problems efficiently. The use of libraries like BeautifulSoup for web scraping, Pandas
for data manipulation, and Flask for creating a dynamic web interface showcases the
versatility of Python in software development. This tool not only simplifies the process
of price comparison but also ensures accuracy and consistency in the data presented
to the users. The modular design ensures scalability, allowing the system to integrate
additional e-commerce platforms in the future. Overall, this project serves as an
excellent example of how programming can improve day-to-day tasks, making them
faster, more accurate, and user-friendly.
FUTURE SCOPE
he future scope of a price comparison website built using Python is influenced by
technological advancements, changing consumer behavior, and evolving market needs.
Below are some potential developments for the future of price comparison websites: