Shoppers Drug Mart & Pharmaprix Scraper — Prices & PC Optimum avatar

Shoppers Drug Mart & Pharmaprix Scraper — Prices & PC Optimum

Pricing

from $1.50 / 1,000 result rows

Go to Apify Store
Shoppers Drug Mart & Pharmaprix Scraper — Prices & PC Optimum

Shoppers Drug Mart & Pharmaprix Scraper — Prices & PC Optimum

Shoppers Drug Mart & Pharmaprix products by keyword, category, brand, UPC or the whole ~23,500-product catalogue: price, sale price and end date, every deal, PC Optimum points and offers, online stock count, UPC, ratings, category and images. Store locator included. No login.

Pricing

from $1.50 / 1,000 result rows

Rating

0.0

(0)

Developer

Yugenox Corp

Yugenox Corp

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

4 days ago

Last modified

Share

Shoppers Drug Mart & Pharmaprix Scraper — Prices, Deals & PC Optimum

Scrape Shoppers Drug Mart and Pharmaprix products at scale: prices, sale prices and when they end, PC Optimum points and bonus offers, online stock counts, UPC barcodes, ratings, full category paths, images and ingredients. Search by keyword, browse categories, look up UPCs, pull a brand's whole range, or download the entire online catalogue (~23,500 products) in one run.

  • 🏷️ Every deal, with dates. Percent off, sale price, multi-buy ("2 for $24.00"), gift with purchase — each with its start and end date.
  • ⭐ PC Optimum built in. Base points per product plus bonus offers ("5,000 bonus points when you buy 2") and points multipliers.
  • 📦 Real online stock counts (e.g. onlineStock: 104), not just in/out of stock.
  • 🔢 UPC barcodes on every row, so you can match products against Amazon, Walmart or your own catalogue.
  • 🗂️ Whole catalogue or just what you need: keywords, categories, brands, UPC lists, or everything.
  • 🇫🇷 Pharmaprix (Quebec) with French names and deal labels.
  • 📍 Store locator: the 50 stores nearest any Canadian city, with address, phone and opening hours.
  • 🔑 No account, no login, no cookies. Paste and run.

What you can scrape

InputExampleWhat you get
🔎 Search termsadvil, vitamin d, ceraveThe products the website search returns (up to ~500 per term)
🗂️ CategoriesSkin Care, 57127, https://www.shoppersdrugmart.ca/…/c/57127Every product in the category
🔗 Website URLsproduct, category or search page linksThat product / category / search
🏷️ UPCs062107004107That exact product — ideal for monitoring a fixed list
BrandsLife Brand, CeraVeThe brand's whole range, or narrows your searches/categories to it
Entire cataloguefullCatalog: trueAll ~23,500 products (Pharmaprix: ~22,500)
📍 Store locatorToronto, Montreal, 43.65,-79.38The 50 nearest stores with hours and phone

Filters and sorting

  • On sale only — only products with a sale price or deal right now. With Entire catalogue this gives you every current Shoppers deal (~4,000 products) in about two minutes.
  • PC Optimum bonus offers only — only products with a bonus-points offer.
  • Sort — relevance, price low→high, price high→low, newest, top rated. With a per-search limit this picks e.g. the 50 cheapest.

Use cases

  • Price and promotion monitoring for brands and distributors (MAP compliance, competitor pricing, promo calendars).
  • Deal and points sites — the full weekly list of Shoppers sales and PC Optimum bonus offers with exact end dates.
  • Retail arbitrage — UPCs, prices and live online stock to match against other marketplaces.
  • Assortment and market research — what Canada's largest pharmacy chain carries, by category and brand, with ratings.
  • Beauty analytics — shades, finishes, skin types and luxury flags from the Beauty Boutique range.

Input

FieldTypeDescription
searchTermsarrayKeywords, as typed on the website
categoriesarrayCategory names, numbers or URLs
startUrlsarrayshoppersdrugmart.ca / pharmaprix.ca product, category or search URLs
upcsarrayUPC barcodes / product codes
brandsarrayBrand names
fullCatalogbooleanThe whole online catalogue
onlyOnSalebooleanOnly products on sale
onlyPcOptimumOffersbooleanOnly products with a PC Optimum bonus offer
sortstringrelevance, price-asc, price-desc, newest, top-rated
maxItemsPerQueryintegerLimit per search term / category (default 500, 0 = none)
maxItemsintegerLimit for the whole run (0 = none)
bannerstringshoppers (default) or pharmaprix
languagestringauto, en or fr
includeDescriptionbooleanDescription, ingredients, how to use (default on, no extra requests)
fetchMissingImagesbooleanFetch the image for the ~1 in 3 products the listing shows without one (default on)
includeDetailsbooleanProduct-page details: every shade/size with its own price and stock, canonical URL, extra ratings
storeLocationsarrayCities or lat,lng for the store locator

Example — every vitamin, supplement and Advil product on sale right now, cheapest first:

{
"categories": ["Vitamins & Supplements"],
"onlyOnSale": true,
"searchTerms": ["advil"],
"sort": "price-asc",
"maxItemsPerQuery": 0
}

Output

One row per product. A real example (long text fields shortened):

{
"productId": "SDM_062107004343",
"upc": "062107004343",
"name": "Children's Fever and Pain Relief Ibuprofen Oral Suspension, Dye Free, Grape, 100 mL",
"brand": "Advil",
"packageSize": "100 ml",
"price": 12.99,
"regularPrice": 14.49,
"wasPrice": 14.49,
"onSale": true,
"discountPercent": 10,
"salePriceEndsAt": "2026-09-25T03:59:59.000Z",
"dealLabel": "Now $12.99",
"pcOptimumPoints": 180,
"pcOptimumOffer": "5,000 bonus points when you buy 2",
"pcOptimumBonusPoints": 5000,
"pcOptimumOfferEndsAt": "2026-10-10T03:59:59.000Z",
"promotions": [
{ "type": "LOYALTY", "kind": "bonus-points", "label": "5,000 bonus points when you buy 2", "value": 5000, "minQuantity": 2, "validFrom": "2026-09-12T04:00:00.000Z", "validTo": "2026-10-10T03:59:59.000Z" },
{ "type": "DEAL", "kind": "sale-price", "label": "Now $12.99", "value": 12.99, "validFrom": "2026-09-19T04:00:00.000Z", "validTo": "2026-09-25T03:59:59.000Z" }
],
"inStock": true,
"onlineStock": 13,
"maxOrderQuantity": 6,
"category": "Children's Pain & Fever Relief",
"categoryPath": "Health > Medicine & Treatments > Pain Relief > Children's Pain & Fever Relief",
"categoryIds": ["57127", "57139", "57203", "57490"],
"badges": ["Prepared in Canada", "PC Optimum Offer", "Sale"],
"isScheduleThree": false,
"imageUrl": "https://assets.beauty.shoppersdrugmart.ca/bb-prod-product-image/062107004343/…/white.jpg",
"url": "https://www.shoppersdrugmart.ca/…/p/SDM_062107004343",
"description": "…",
"ingredients": "…",
"rank": 36,
"source": "search:advil",
"banner": "Shoppers Drug Mart",
"scrapedAt": "2026-09-24T04:31:10.000Z"
}

Other fields include rating, ratingCount, reviewCount, shade / shadeHex for makeup, attributes (finish, skin type, concern, hair type…), isPrivateLabel, isLuxury, isOnlineExclusive, images, howToUse and featuresBenefits. Prices are in CAD. With Product page details on, variants lists every shade or size with its own UPC, price and stock.

Store locator rows (dataType: "store") carry storeNumber, name, address, city, province, postalCode, phone, latitude, longitude, distanceKm, openStatus, hours and links to the store page, flyer and pharmacy appointment booking.

The dataset has three views: Products, Deals & PC Optimum and Stores. Export as JSON, CSV, Excel or via API.

FAQ

Are prices the same in every store? The prices, deals and stock here are the online (shoppersdrugmart.ca / pharmaprix.ca) ones. In-store prices can differ by location.

Why does a search stop at about 500 products? That is the website's own limit for a keyword search. For more, use categories (no limit) or Entire catalogue.

Why do the last results of a search look loosely related? The website's search is AI-based: it ranks by similarity, so the top results match best and the tail drifts (a typo still returns products). Keep the per-search limit modest for keyword searches, or add Brands to keep only exact brand matches.

I searched for stores in Montreal with Shoppers Drug Mart selected. Quebec stores are listed under Pharmaprix. When a location has no stores under the selected banner, the other banner's store list is used automatically.

How long does the entire catalogue take? About 7–8 minutes for all ~23,500 products. On sale only narrows it to about 4,000 products and under two minutes. Switch off Fill in missing images for the fastest run.

What is onlineStock? The number of units available for online orders at the time of the run. inStock is true when it is above zero.

Pharmaprix or Shoppers Drug Mart? Pharmaprix is the Quebec banner with its own catalogue and prices (French by default). Its online catalogue carries far fewer over-the-counter medicines, so some Shoppers products and UPCs are not found there. Pick it under Store; French search terms give the best results. Pharmaprix URLs pasted into Website URLs are recognised automatically.

Does it return reviews? It returns the average rating and the number of ratings and reviews, not the review texts.

Can I track prices over time? Yes. Schedule the actor (daily or weekly) with the same input and compare runs by productId or upc.

A product I know exists was not found by UPC. Only products in the online catalogue can be found. Some in-store-only items are not sold online.

Is it legal to scrape Shoppers Drug Mart? This Actor only collects publicly available data: product listings, prices, deals, PC Optimum offers, stock and store locations that anyone can see on the Shoppers Drug Mart and Pharmaprix websites without an account. Collecting publicly available data is generally legal, but you're responsible for how you use it. You must follow privacy laws such as GDPR, PIPEDA and CCPA, as well as Shoppers Drug Mart's and Pharmaprix's terms. If you're unsure, check with a lawyer. More on this: Is web scraping legal?

Does it access any private data? No. Everything comes from pages Shoppers Drug Mart and Pharmaprix show to any visitor without logging in. It never uses a login, never touches private or restricted accounts, and never reaches password-protected areas.