Build reliable web scrapers. Fast.
Apify is the platform where developers build, deploy, and publish
web scraping, data extraction, and web automation tools.
Web scraping can be challenging
Headless browsers, infrastructure scaling, sophisticated blocking.
Meet the full-stack platform that makes it all easy.
Simplify scraping withCrawlee
Give your crawlers an unfair advantage with Crawlee, our popular library for building reliable scrapers in Node.js.
import { PuppeteerCrawler, Dataset } from 'crawlee';const crawler = new PuppeteerCrawler({async requestHandler({ request, page, enqueueLinks }) {await Dataset.pushData({url: request.url,title: await page.title(),});await enqueueLinks();},});await crawler.run(['https://crawlee.dev']);
Use your favorite libraries
Apify works great with both Python and JavaScript. Scrapy, Selenium, Playwright or Puppeteer. It's your choice.
Start with our code templatesfrom scrapy.spiders import CrawlSpider, Ruleclass Scraper(CrawlSpider):name = "scraper"start_urls = ["https://the-coolest-store.com/"]def parse_item(self, response):item = Item()item["price"] = response.css(".price_color::text").get()return item
Scrapy
Puppeteer
Playwright
Cypress
Turn your code into an Apify Actor
Actors are serverless microapps that are easy to develop, run, share, and integrate. The infra, proxies, and storages are ready to go.
Learn more about Actorsimport { Actor } from 'apify'await Actor.init();// Add your code and deploy!
Deploy to the cloud
No config required. Use a single CLI command or build directly from GitHub.
Deploy to Apify> apify pushInfo: Deploying Actor 'computer-scraper' to Apify.Run: Updated version 0.0 for scraper Actor.Run: Building Actor scraperACTOR: Pushing Docker image to repository.ACTOR: Build finished.Actor build detail -> https://console.apify.com/actors#/builds/0.0.2Success: Actor was deployed to Apify cloud and built there.
Run your Actors
Start from Apify Console, CLI, via API, or schedule your Actor to start at any time. It’s your call.
POST/v2/acts/4cT0r1D/runs
{
"id": "seHnBnyCTfiEnXft",
"startedAt": "2022-12-01T13:42:00.364Z",
"finishedAt": null,
"status": "RUNNING",
"options": {
"build": "version-3",
"timeoutSecs": 3600,
"memoryMbytes": 4096
},
"defaultKeyValueStoreId": "EiGjhZkqseHnBnyC",
"defaultDatasetId": "vVh7jTthEiGjhZkq",
"defaultRequestQueueId": "TfiEnXftvVh7jTth"
}
Never get blocked
Use our large pool of datacenter and residential proxies. Rely on smart IP address rotation with human-like browser fingerprints.
Learn more about Apify Proxyawait Actor.createProxyConfiguration({countryCode: 'US',groups: ['RESIDENTIAL'],});
Store and share crawling results
Use distributed queues of URLs to crawl. Store structured data or binary files. Export datasets in CSV, JSON, Excel or other formats.
Learn more about Apify StorageGET/v2/datasets/d4T453t1D/items
[
{
"title": "myPhone 99 Super Max",
"description": "Such phone, max 99, wow!",
"price": 999
},
{
"title": "myPad Hyper Thin",
"description": "So thin it's 2D.",
"price": 1499
}
]
Monitor performance over time
Inspect all Actor runs, their logs, and runtime costs. Listen to events and get custom automated alerts.
Integrations. Everywhere.
Connect to hundreds of apps right away using ready-made integrations, or set up your own with webhooks and our API.
See all integrationsTrusted business partner
Need someone to take a look at your web scraping or automation project? Connect with top experts through our Enterprise program or Partners.