
Build a fully functional Chrome extension from concept to market, including Amazon scraping of history and search results, with debugging workflows and scalable architecture for easy feature additions.
Develop and scale Chrome extensions for web scraping with NodeJS and MongoDB, structuring internet data into a clean database, with pagination, element targeting, and server integration.
Learn to automate scraping of sites like Amazon, Kickstarter, and LinkedIn, manage IP rotation, and deliver structured data for a user-friendly UX.
build a Shopify app called social that lets shoppers create content while admins moderate and promote related products, illustrating a social network for Shopify with JavaScript and MongoDB.
Discover why this six-hour full-stack chrome extension course was created and why you should take it, covering Node.js, MongoDB, architecture, and maintainable, extensible code.
Create a Chrome extension that scrapes Amazon search results and purchase history, saving data to a Node.js server and MongoDB. Demonstrates saving image, stars, ratings, price, and reviews from Amazon.
Explore the high level architecture of a chrome extension, detailing manifest, background, content script, and popup interactions, and how the backend server stores data in MongoDB and coordinates scraping.
Configure manifest.json for a Chrome extension, set manifest version 2, name, description, version, icons, and content_scripts with amazon.com matches, loading jQuery and custom scripts.
Set up the popup by adding a browser action and a popup HTML wired to views/popup.html, then reload the extension to test the new popup in your Chrome profile.
Add AngularJS and Angular UI Router to the Chrome extension popup.html, load the libraries from the repo, and set up routing between pages like scrape results and history.
Link a Bootswatch darkly stylesheet to the popup, create a csx folder for custom css, apply a custom width and height, and reload the extension to see styling updates.
Set up and debug an angular ui-router powered chrome extension popup, define the amazon history module, configure a default home view, and verify loading via console and network inspection.
Set up a node.js server for a chrome extension by installing node.js, initializing npm, and configuring express with morgan, body-parser, and cors, then run the server.
Set up a chrome extension background.js using jquery, update the manifest, load the background script, and enable a jquery ajax call to a local node server to enable server–extension communication.
Build real-time communication between the chrome extension's background.js and the node server by posting to the safe products route, logging requests, and handling server responses.
Set up the login view in the extension popup with bootstrap form fields for name, email, and password, and wire a popup controller to handle login data and state.
https://www.youtube.com/watch?v=KKyag6t98g8
Follow the above Tutorial by Brad Traversy
Update your MongoDB deployment to Atlas by creating a free cluster, configuring a database user, enabling access from anywhere, and connecting with your database name.
learn how to connect to MongoDB Atlas, obtain the connection string, and configure cluster zero and quest zero names, create collections and data for a full-stack app.
Log and validate login form data in the Chrome extension by updating the popup controller to capture email and password and print the data to the console.
Learn how a Chrome extension handles authentication by passing credentials from the popup to the background, then to the server, and back to the popup, with a three-part architecture.
Create and style the signup view in the extension popup, link login and signup routes with UI-Router, and wire form data to the background for server submission.
Send signup form data from the popup to background using chrome messaging. Implement a background listener with a switch on message type to handle login and keep the connection open.
Set up authentication for a chrome extension by implementing sign up and log in routes on a Node.js server with a MongoDB user model and ajax calls from background page.
Sync the Chrome extension and server code to enable user sign up and login via Ajax to /user/sign up and /user/log in, deriving a username from email.
Learn how to authenticate users in a chrome extension by signing up and logging in, then send the server response, including a token and user object, back to the popup.
Redirect a logged-in user to the welcome view by routing login and signup outcomes through the chrome extension popup and background, with state and data updates.
Save the user token in local storage after login and send it in the request header for subsequent ajax calls, highlighting Node.js middleware handling the token flow.
Learn how Node.js middleware handles a request with a user token, extracting the token from the header and passing it through the off middleware to /user/me.
Explore the high-level architecture for scraping Amazon data with a Chrome extension, using a content script, a background page, and server coordination to manage years and next pages.
Learn to extract your Amazon order history and purchase years via a Chrome extension content script and save the data to a Node.js and MongoDB backend.
Pass purchase years from the content script to the background script using Chrome messaging, handle server responses, and navigate pages to fetch yearly purchase history in a Chrome extension.
Grab the purchase years from the orders page, build a purchase years array, and send it to the background via a purchase years event for processing and server coordination.
Explore how a Chrome extension sends purchase years from the content to the background, stores them in local storage, and prepares data for server saving.
Set up the product API with a product route and controller, save products to MongoDB via the product model, and use a slugger and middleware to handle chrome extension data.
Build a full-stack chrome extension backend with Node.js and MongoDB by implementing /product routing, saving product and page records, wiring controllers and models, and managing dependencies with npm.
Learn to save multiple product records on a single page by debugging MongoDB and Node setup, and fix duplicate key errors by removing the slug field.
Learn how the content script, background, and server coordinate to save Amazon orders and determine when to navigate to the next page or next year across multi-page purchase years.
Explore helper functions that fetch data from the DOM and URL, including year and page number, and retrieve yearly orders via content and background scripts, with debugging tips.
Learn to fetch and scrape Amazon product data with ajax and jQuery, converting page html into a jQuery object to extract descriptions and reviews.
Fetch product pages via Ajax, parse the HTML with jQuery, enrich each product with summary and reviews, and store the data in a database collection.
Handle JavaScript race conditions in a Chrome extension by buffering order details in a global array and using a 10-second wait before sending data to the background.
Show how the popup view fetches a user's purchase history by triggering background and content scripts in the chrome extension, enabling history scraping and navigation to the order history page.
Implement a backend API to save products from Amazon search results by wiring routes for save products from search and save page from search to MongoDB.
Develops a content script to scrape amazon search results, extract product data using DOM selectors, and send it to the background while managing total pages and page numbers.
Learn how to fetch product summaries and reviews from search results in a chrome extension using ajax, pass the data to a background script, and prepare it for server submission.
Fetch product descriptions and reviews from the search results using AJAX, and aggregate them in the content script. Then send the data to the server via a post route.
Verify the server saves all products to the database, then enable the background to deliver the next steps to the content script for the Aretha Franklin search results.
Demonstrates looping through search result pages and keywords by coordinating content scripts, background logic, and the server, while saving scraped data to a database.
Set up views for scraping search results with two functions—initiate search scraping and initiate search keyword scraping—and a search options view guiding users to current search or multi-keyword scraping.
Configure a chrome extension to scrape current search results and multiple keywords. Request tab permissions and use the background page to fetch pages and scrape products and reviews.
Learn how to scale a Chrome extension by applying product management and marketing fundamentals, using lean startup tests, market research, and analytics to drive organic growth.
In this course, we'll be developing a new Full-Stack Chrome Extension that Scrapes Amazon, and automatically saves Product Data within a MongoDB Database.
Our finished product (which you'll be able to publish to the Chrome Store) will be a Chrome Extension that enables any user to Scrape their own Amazon Purchase History, the results of any Amazon Search URL, or the results of multiple Amazon Search Keywords - one after the next.
*Code Samples Included All Along Your Path To Mastering Chrome Extension Development*
The Technology Stack you'll be dealing with in this course:
- Chrome Extension
- AngularJS (for the Chrome Extension Popup)
- jQuery *(for interacting with the Amazon DOM)
- NodeJS Server
- Mongo Database
The Functionality For the Chrome Extension:
Signup and Login via the Popup View
Select Elements From The DOM with the Content.js Page
Scrape Your Own Amazon Purchase History
Scrape Amazon Search Results of a Given Page
Scrape Amazon Search Results of Multiple Keywords (one after the next automatically)
Save The Amazon Product Title
Save The Amazon Product Description
Save The Amazon Product Image
Save The Amazon Product Reviews
Save The Product Rating
Save The Amount of Ratings of a Given Product
Make The Chrome Extension Automatically Navigate Through All Pages of Search Results
While developing this awesome sample project, you'll learn:
a) How To Scrape Any Data From The Web Programatically via the Power of Chrome Extensions
b) The Manifest.json File
c) The Popup.js File
c) The Background.js File
d) The Content.js File
e) How To Debug Your Chrome Extension
Getting the architecture of your Chrome Extension right is super crucial to keeping your code clean and structured! We'll be covering lots of considerations when building a Full-Stack Chrome Extension.
I built this course because all of the other Chrome Extension courses on Udemy don't go quite as deep (compare the Amount of Hours this course provides relative to the competitors), and because Chrome Extensions are like the surf-suit for websurfers - users can take them with them anywhere they go on the web.
If you're excited about the Awesome Power of Chrome Extensions and Web Scraping, then I hope you get a lot out of this course.
The Architecture is meant to be re-usable no matter what type of Chrome Extension / Web Scraper you'd like to build, so feel to reach out if you need help taking the codebase in your own direction, or if you have any questions along the way.
Sincerely,
Elisha