Cameron Main


← Back to Projects

Electronic Components Price Checker


Award-winning University Team Project: A web scraping tool to check the price of electronic components from an external API.

Electronic Components Price Checker

Key Features


Description


This project was completed as part of a second-year university module, where our team of three successfully bid for a project in collaboration with Tharsus, a contract manufacturer specialising in advanced manufacturing and electro-mechanical assembly.

We worked directly with the industry stakeholder to understand their needs and developed a solution tailored to their requirements. The result was a web-based price comparison checker for electronic components.

Technology


Python Flask OctopartAPI AWS RDS MariaDB

Development Summary


After winning the project bid, we met with our stakeholder to understand their frustrations and formulate a bespoke solution. We composed a list of functional and non-functional requirements based on their needs.

Our tech stack included Python with the BeautifulSoup library for web scraping and Flask for the front-end web framework. We integrated the OctopartAPI to search for components on Octopart. The system operates by taking an Excel spreadsheet containing a part list (part number, quantity, etc.), searching Octopart for the items, and returning the optimal price for each.

Results were stored on a MariaDB AWS RDS and featured account security with role-based access control for varying functionality at different user levels.

As a team, we held frequent standup meetings to discuss progress and challenges. I was responsible for task delegation early in the project and managed the sprints throughout the project lifecycle.

Outcome


The project was a success, delivering a functional product that met the client's specifications. Our team gained valuable insight into software development in a team environment.

The School of Computing faculty recognised our project as superior among approximately 60 groups in the cohort, awarding us 'Best Team Project' and a cash prize.