🌐 Download HTML from URLs avatar

🌐 Download HTML from URLs

Pricing

from $3.99 / 1,000 results

Go to Apify Store
🌐 Download HTML from URLs

🌐 Download HTML from URLs

🌐πŸ“₯ Download HTML from any URL with download-html-from-urls. Extract and save raw page source for analysis, scraping, or automationβ€”fast, reliable, and easy to use. Perfect for developers and data teams. πŸš€βœ¨

Pricing

from $3.99 / 1,000 results

Rating

0.0

(0)

Developer

Scrapio

Scrapio

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

2 days ago

Last modified

Share

Download the complete HTML of any list of web pages β€” fast, reliable, and at scale. Paste your URLs (bulk supported), press Start, and get the full page source of every URL saved neatly into a dataset you can export as JSON, CSV, or Excel.

The actor uses a smart two-stage download engine: a lightning-fast HTTP fetch first, and an automatic real-browser rendering fallback for pages that need JavaScript or block simple clients. Blocked requests trigger an automatic proxy escalation ladder (direct β†’ datacenter β†’ residential), so you get your HTML even from protected sites.

✨ Why Choose Us?

  • πŸš€ Fast by default β€” direct connections and parallel downloads, no wasted proxy traffic.
  • πŸ›‘οΈ Self-healing on blocks β€” automatically falls back to datacenter and then residential proxies, and keeps the stronger proxy for the rest of the run.
  • 🎭 Browser rendering fallback β€” pages that fail plain HTTP get rendered in a real headless Chromium browser.
  • πŸ’Ύ Live results β€” every page is saved to the dataset the moment it finishes, so even interrupted runs keep their data.
  • πŸ”— Flexible input β€” URLs with or without https://, bulk paste, file upload, or Google Sheets.

πŸ”‘ Key Features

  • Bulk URL input (requestListSources editor β€” paste lists, upload files, link sheets)
  • Full page HTML (fullHtml) and extracted <body> HTML (html) per page
  • Automatic retries with exponential backoff (configurable)
  • Configurable concurrency, page timeout, and polite request delays
  • Detailed per-URL debug info (#debug) β€” status code, retries, error messages, proxy tier

πŸ“₯ Input

{
"startUrls": [
{ "url": "https://apify.com" },
{ "url": "example.com" }
],
"proxyConfiguration": { "useApifyProxy": false },
"pageTimeoutSecs": 60,
"maxRetries": 3,
"maxConcurrency": 5,
"requestDelaySecs": 0
}
FieldTypeDefaultDescription
startUrlsarrayβ€”Required. List of URLs to download. Missing schemes default to https://.
proxyConfigurationobjectno proxyProxy settings. By default requests go direct; on blocks the actor escalates to datacenter β†’ residential automatically.
pageTimeoutSecsinteger60Max seconds to spend downloading one page.
maxRetriesinteger3Extra attempts for a failing URL.
maxConcurrencyinteger5Pages downloaded in parallel.
requestDelaySecsnumber0Optional polite delay before each request (jitter added).

πŸ“€ Output

One dataset record per URL:

{
"url": "https://apify.com",
"finishedAt": "2026-06-10T10:14:29.693Z",
"fullHtml": "<!DOCTYPE html><html>...</html>",
"html": "<body>...</body>"
}
FieldDescription
urlThe downloaded URL.
finishedAtUTC timestamp when the page finished downloading.
fullHtmlComplete HTML source of the page.
htmlJust the <body>...</body> portion.
#debugHidden field with status code, retry count, error messages, and the proxy tier used.
#errorHidden boolean β€” true if no HTML could be retrieved.

πŸš€ How to Use (Apify Console)

  1. Log in at console.apify.com β†’ Actors.
  2. Open Download HTML from URLs.
  3. Paste your URLs into πŸ”— Website URLs (bulk paste works!).
  4. Optionally tweak proxy, timeout, retries, and concurrency.
  5. Click Start and watch the live progress logs.
  6. Open the Output tab when the run completes.
  7. Export to JSON / CSV / XLSX with one click.

πŸ€– Use via API

curl -X POST "https://api.apify.com/v2/acts/<ACTOR_ID>/run-sync-get-dataset-items?token=$APIFY_TOKEN" \
-H "Content-Type: application/json" \
-d '{"startUrls":[{"url":"https://apify.com"}]}'

πŸ’Ό Best Use Cases

  • πŸ“° Archiving article or product pages
  • πŸ”Ž Feeding HTML into your own parsers / LLM pipelines
  • πŸ§ͺ Monitoring page content and structure changes
  • πŸ—‚οΈ Bulk snapshotting of competitor or partner sites
  • πŸ€– Pre-fetching pages for downstream AI extraction Actors

πŸ’° Pricing

This actor uses the pay-per-event model with one simple event:

EventCharged when
page-downloadedA page's HTML is successfully downloaded and saved to the dataset.

Failed URLs are never charged. When your spending limit is reached, the run stops gracefully and keeps everything collected so far.

❓ Frequently Asked Questions

Do I need a proxy? Usually not β€” the actor starts with direct connections. If a site blocks the request, it escalates to datacenter and then residential proxies automatically.

Does it render JavaScript? Yes, when needed. Pages that fail the fast HTTP download are automatically rendered in a real headless browser.

Can I paste URLs without https://? Yes β€” example.com is automatically converted to https://example.com.

What happens to URLs that fail completely? They're still saved to the dataset with an empty fullHtml and full error details in #debug, so you always know exactly what happened β€” and you're not charged for them.

This actor downloads only publicly available web pages. You are responsible for complying with the target websites' terms of service and applicable laws (GDPR, CCPA, etc.) when using the downloaded data.

πŸ’¬ Support and Feedback

Found a bug or need a feature? Open an issue on the actor's Issues tab in Apify Console β€” we respond quickly!