Git Product home page Git Product logo

clothing-web-scraper's Introduction

Next Generation Clothing Finder

This was a group project for my Introduction to Software Engineering course (CMPT 370). I was paired with four other people, but I only included the files that I worked on or are required for running the project.

This product is a one-stop shop that gathers data from popular clothing sites and presents the products to its users in a way that is convenient to the users. From predefined clothing categories, the user is able to select the gender and subcategories to display the results. The user can also sort the results by name, price, sale price, store and brand, in both ascending and descending order. If the user wishes to add certain products into a favorites list, each product has an “add to favorites” button that, when pressed, will add the item to a favorites list, which can be accessed in the menu bar. Finally, the user can give feedback to the developers.

Table of Contents

Requirements and Installation

(This was created in the PyCharm IDE, with Python 3.4 or higher)

Ensure that you have Python version 3.x and the following modules installed via the following commands.

For help with installing pip: visit https://pip.pypa.io/en/stable/installing/

Download our source files here: https://git.cs.usask.ca/CMPT370-01-2020/group6

Or if you are familiar with cloning (Using PyCharm for this example):

Step 1: Start a new project in PyCharm and click on VCS --> Get from Version Control.
Step 2: Enter the following url: https://git.cs.usask.ca/CMPT370-01-2020/group6.git and hit clone.
Step 3: Make sure you have a python interpreter selected, (Python 3.6 or above recommended.)
Step 3: Enter this command into the terminal to install required modules "pip install -r requirements.txt"
Step 4: You can now run our program by simply running the main_GUI file in the group 6 directory.

Required Modules

You should be able to install all modules using this command.
"pip install -r requirements.txt"

pip install pytest ---- if this doesn't work, then try "pip install -U pytest"
pip install bs4
pip install requests
pip install helium
pip install lxml
pip install tkinter
pip install Pillow 
pip install smtplib
pip install pygdrive3
pip install --upgrade google-api-python-client google-auth-httplib2 google-auth-oauthlib
pip install io
pip install os
pip install csv
pip install shutil

Setting up the Project

  • If you downloaded our source folder, open the folder with an IDE or coding program.
  • With PyCharm, create a new project with the source folder as the project.

Running

The actual running of our program starts from the main_GUI file. Run the main_GUI file to open the search screen and start. Please ensure that your default browser is set to Chrome, Opera, or Firefox. Microsoft Edge and Internet Explorer add additional characters to the url when opening links associated with products and the webpage will not be opened correctly.

Tests

  • Go to the terminal, and enter pytest to run our test suite.
  • The program should run the tests for you automatically, showing which tests succeeded and which tests failed.

Features

A sorting feature (Can sort alphabetically, by price, and by brand. Also included reverse sorting.)
A search engine that takes in gender, category, subcategory, and returns all data that matches.
An image for each result that can be clicked to be brought right to the item's website.
A storage system that connects to google drive so users can run the program on different machines.
Users can send feedback to our group email.
Users can add and remove items from list of favorites.

List of Websites

Nike
Billabong
H&M
Arc'teryx
Bluenotes

Authors and Acknowledgement

Jeffery Xie
Ana-Pietje Du Plessis
Henry Nguyen
Enhan Zhao
Manaf Bargash

Demo

Search Screen

Search Screen

Results Screen

Results Screen

Sorting Options

Sorting Options

Favorites Screen

Favorites Screen

Feedback Screen

Feedback Screen

clothing-web-scraper's People

Contributors

rjefferyxie avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.