Chrome Web Store Scraper avatar

Chrome Web Store Scraper

Pricing

Pay per event

Go to Apify Store
Chrome Web Store Scraper

Chrome Web Store Scraper

Scrape Chrome extensions from the Chrome Web Store. Pull name, rating, review count, user count, version, manifest, permissions, categories, developer info, screenshots, and website URL. Search by keyword or scrape specific extension IDs.

Pricing

Pay per event

Rating

0.0

(0)

Developer

BowTiedRaccoon

BowTiedRaccoon

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

2 days ago

Last modified

Categories

Share

Scrape Chrome extensions from the Chrome Web Store. Pull comprehensive extension metadata — name, rating, review count, user count, version, full manifest, permissions, category, developer info, screenshots, and website URL. Search by keyword or provide specific extension IDs.

Features

  • Three input modes: by extension ID, by URL, or by search query
  • Rich data extraction: 25 fields per extension including the full parsed manifest.json
  • No proxy needed: Chrome Web Store serves to datacenter IPs cleanly
  • Fast extraction: Data is embedded server-side in the HTML — no JavaScript rendering required
  • Permissions analysis: Extracts permissions array from the manifest for security audits

Use Cases

  • Extension research and competitive analysis
  • Security auditing — identify extensions with broad permissions (<all_urls>, webRequest, etc.)
  • Developer directory building
  • Chrome extension market research and trend tracking
  • Finding extensions by category or keyword

Input Configuration

FieldTypeDescription
extensionIdsArrayList of extension IDs (32-char alphanumeric) to scrape directly
startUrlsArrayChrome Web Store URLs (detail pages, search pages, or category pages)
searchQueryStringSearch term to find extensions (e.g. "password manager", "ad blocker")
maxItemsIntegerMaximum number of records to return (0 = unlimited, default 20)

Provide one of extensionIds, startUrls, or searchQuery. If none are provided, the actor runs a default search for "productivity".

Example: Scrape by Extension ID

{
"extensionIds": ["cjpalhdlnbpafiamejdnhcphjbkeiagm"],
"maxItems": 1
}

Example: Search by Keyword

{
"searchQuery": "password manager",
"maxItems": 20
}

Example: Specific Store URLs

{
"startUrls": [
"https://chromewebstore.google.com/detail/ublock-origin/cjpalhdlnbpafiamejdnhcphjbkeiagm",
"https://chromewebstore.google.com/search/vpn"
],
"maxItems": 50
}

Output Fields

Each result record contains:

FieldTypeDescription
extension_idStringUnique 32-char extension ID
urlStringChrome Web Store detail page URL
nameStringExtension display name
short_descriptionStringShort description shown in search results
long_descriptionStringFull description from the detail page
ratingNumberAverage user rating (0–5)
review_countIntegerTotal number of user reviews
user_countIntegerApproximate number of active users
versionStringCurrent published version
sizeStringExtension file size (e.g. "4.27MiB")
categoryStringPrimary category path (e.g. "productivity/workflow")
website_urlStringDeveloper's website URL
icon_urlStringExtension icon URL
header_image_urlStringHeader/marquee image URL
promo_image_urlStringPromotional tile image URL
screenshotsArrayScreenshot image URLs
developer_emailStringDeveloper contact email
developer_nameStringDeveloper display name
developer_idStringDeveloper identifier
manifestObjectFull parsed manifest.json
permissionsArrayExtension permissions list
languagesArraySupported language names
published_atStringOriginal publish date (ISO 8601)
updated_atStringLast update date (ISO 8601)
scraped_atStringScrape timestamp (ISO 8601)

Sample Output

{
"extension_id": "cjpalhdlnbpafiamejdnhcphjbkeiagm",
"url": "https://chromewebstore.google.com/detail/ublock-origin/cjpalhdlnbpafiamejdnhcphjbkeiagm",
"name": "uBlock Origin",
"short_description": "Finally, an efficient blocker. Easy on CPU and memory.",
"rating": 4.6973,
"review_count": 35453,
"user_count": 14000000,
"version": "1.71.0",
"size": "4.27MiB",
"category": "make_chrome_yours/privacy",
"developer_email": "ubo@raymondhill.net",
"developer_name": "Raymond Hill (gorhill)",
"permissions": ["alarms", "contextMenus", "privacy", "storage", "tabs", "webRequest", "webRequestBlocking", "<all_urls>"],
"published_at": "2014-06-24T00:52:35.000Z",
"updated_at": "2026-05-12T05:16:59.000Z",
"scraped_at": "2026-06-12T03:00:10.000Z"
}

Technical Notes

  • Data is extracted from server-rendered AF_initDataCallback script blocks — no browser rendering needed
  • core_crawler (CheerioCrawler) with concurrency 3 to respect Google rate limits
  • No proxy required — datacenter IPs work fine
  • Memory: 512 MB is sufficient for most runs
  • Timeout: 4 hours default (plenty for bulk runs)