The Book Availability Checker is an application built using React for the frontend and Flask for the backend. It allows users to check the availability of books on the Readings bookstore website through web scraping.
-
Search Options:
- Users can search for book availability using either the book title or both the book title and author's name.
- Two search options are available for more flexibility.
-
Result Information:
- The application displays result windows for each book containing Book Title, Author, Price, Availability, and the link to the storepage for that item.
The frontend of the application is developed using React.
The backend of the application is built using Flask, a lightweight Python web framework. It handles the web scraping logic and communicates with the frontend. Key aspects include:
-
Web Scraping:
- Utilizes BeautifulSoup for parsing HTML and extracting relevant information from the Readings website.
- Checks the availability status of each book.
-
Flask API:
- Exposes a
/search
endpoint for handling search requests from the React frontend. - Sends back search results in real-time as each book's availability is determined.
- Exposes a
-
Install Dependencies:
- In the root directory, run
npm install
to install React dependencies. - In the
backend
directory, install Flask dependencies withpip install -r requirements.txt
.
- In the root directory, run
-
Run the Applications:
- Start the React app by running
npm start
in theroot
directory. - Run the Flask backend with
python app.py
in thebackend
directory.
- Start the React app by running
-
Access the App:
- Open your browser and go to
http://localhost:3000
to use the Book Availability Checker.
- Open your browser and go to
Feel free to explore the application, search for your favorite books, and check their availability in real-time!