Website Screenshot Crawler avatar
Website Screenshot Crawler

Pricing

Pay per event

Go to Store
Website Screenshot Crawler

Website Screenshot Crawler

Developed by

dz_omar

dz_omar

Maintained by Community

๐Ÿ“ธ Capture high-quality screenshots of any website with full-page support, custom viewports, and cookie authentication. Perfect for web monitoring, documentation, competitor analysis, and automated testing. Features smart loading detection and 30-second interval pricing for cost efficiency.

5.0 (3)

Pricing

Pay per event

3

Total users

3

Monthly users

3

Runs succeeded

>99%

Last modified

a day ago

๐Ÿ“ธ Website Screenshot Crawler ๐ŸŒ

Capture high-quality screenshots of any website with advanced scrolling capabilities and cookie support. Perfect for web monitoring, documentation, testing, and content archival.

โœจ Key Features

๐Ÿ“ท Advanced Screenshot Capture

  • Full-Page Screenshots: Capture entire webpage length, not just viewport
  • Custom Viewport: Set any browser window dimensions
  • High-Quality PNG: Lossless image format for professional results
  • Smart Wait Conditions: Multiple options for page load completion

๐Ÿช Session Management

  • Cookie Support: Import cookies for authenticated sessions
  • Persistent Sessions: Maintain login states across captures
  • Paywall Bypass: Access restricted content with proper authentication
  • Custom Headers: Support for various authentication methods

๐ŸŒ Network Optimization

  • Network Idle Detection: Multiple wait conditions for page loading
  • Timeout Control: Configurable page load timeouts
  • Resource Management: Efficient memory usage with headless browsing

๐Ÿ’ฐ Pricing Structure

This actor uses a 30-second interval charging system for optimal cost efficiency:

๐Ÿงฎ Interactive Cost Calculator

Plan your budget with precision! Use our interactive cost calculator to estimate your exact costs before running the actor:

๐Ÿ”— Launch Cost Calculator

Features:

  • โšก Real-time calculations as you adjust parameters
  • ๐Ÿ“Š Visual cost breakdown by component (initialization, memory, screenshots)
  • ๐ŸŽฏ Scenario planning with different configurations
  • ๐Ÿ’ก Cost optimization suggestions for better efficiency
  • ๐Ÿ“ฑ Mobile-friendly interface for on-the-go planning

๐Ÿ“Š How Pricing Works

๐Ÿ”ง Three Types of Charges:

  1. Actor Initialization - One-time startup fee
  2. Memory Usage - Based on memory allocation and runtime
  3. Screenshot Capture - Per successful screenshot

โฑ๏ธ 30-Second Interval System:

  • Every 30 seconds of runtime = 1 interval
  • 1 minute = 2 intervals | 1 hour = 120 intervals
  • Total operations = Memory (GB) ร— Number of intervals

๐Ÿ’ต Pricing Tiers

ComponentFREEBRONZESILVERGOLD
Initialization$0.05$0.03$0.02$0.01
Memory (per operation)$0.0033$0.0020$0.0015$0.0005
Screenshot$0.01$0.007$0.006$0.005

๐Ÿ“ Pricing Examples

Example 1: Quick Single Screenshot

  • Scenario: 1 screenshot, 1GB memory, 30 seconds runtime
  • Calculation:
    • Initialization: $0.05
    • Memory: 1GB ร— 1 interval ร— $0.0033 = $0.0033
    • Screenshots: 1 ร— $0.01 = $0.01
  • Total: $0.0633 (FREE tier)

Example 2: Multiple Screenshots

  • Scenario: 10 screenshots, 2GB memory, 5 minutes runtime
  • Calculation:
    • Initialization: $0.05
    • Memory: 2GB ร— 10 intervals ร— $0.0033 = $0.066
    • Screenshots: 10 ร— $0.01 = $0.10
  • Total: $0.216 (FREE tier)

Example 3: Long Running Task

  • Scenario: 50 screenshots, 4GB memory, 30 minutes runtime
  • Calculation:
    • Initialization: $0.05
    • Memory: 4GB ร— 60 intervals ร— $0.0033 = $0.792
    • Screenshots: 50 ร— $0.01 = $0.50
  • Total: $1.342 (FREE tier)

๐Ÿ’ก Cost Optimization Tips

  1. Choose Right Memory: Use minimum required memory allocation
  2. Optimize Runtime: Reduce unnecessary wait times
  3. Batch Processing: Process multiple URLs in single run
  4. Upgrade Tier: Higher tiers offer significant savings for heavy usage
  5. Use the Calculator: Plan your runs with our cost calculator tool

๐Ÿ” Understanding Your Bill

Your Apify dashboard will show:

  • Operations count: Memory (GB) ร— 30-second intervals
  • Example: 2GB memory running for 5 minutes = 2 ร— 10 = 20 operations
  • Cost calculation: 20 operations ร— $0.0033 = $0.066 for memory usage

๐Ÿš€ Quick Start

Basic Screenshot

{
"link_urls": [
{ "url": "https://example.com" }
],
"fullPage": true
}

Multiple URLs

{
"link_urls": [
{ "url": "https://example.com" },
{ "url": "https://github.com" },
{ "url": "https://stackoverflow.com" }
],
"fullPage": false,
"waitUntil": "domcontentloaded"
}

Custom Viewport

{
"link_urls": [
{ "url": "https://example.com" }
],
"window_Width": 1366,
"window_Height": 768,
"waitUntil": "networkidle0"
}

With Authentication

{
"link_urls": [
{ "url": "https://secure-site.com/dashboard" }
],
"cookies": [
{
"name": "session_token",
"value": "abc123xyz",
"domain": ".secure-site.com"
}
],
"fullPage": true
}

๐Ÿ“‹ Input Configuration

๐ŸŽฏ Basic Settings

ParameterTypeDefaultDescription
link_urlsArray[{"url": "https://apify.com/"}]List of URL objects to capture screenshots from
fullPageBooleanfalseCapture entire page height vs viewport only
waitUntilString"domcontentloaded"Page load completion condition

๐Ÿ“ฑ Viewport Configuration

ParameterTypeDefaultDescription
window_WidthInteger1920Browser window width in pixels
window_HeightInteger1080Browser window height in pixels

๐Ÿ”„ Scrolling Options

Note: Scrolling features have been removed from this version. Use fullPage: true to capture the entire page height.

๐Ÿช Authentication

ParameterTypeDefaultDescription
cookiesArray[]Cookie objects for authenticated sessions

๐ŸŒ Network Settings

ParameterTypeOptionsDescription
waitUntilStringload, domcontentloaded, networkidle0, networkidle2Navigation completion condition

Wait Conditions Explained:

  • load: Wait until all resources are loaded (slower but complete)
  • domcontentloaded: Wait until HTML is parsed (faster, recommended for complex sites)
  • networkidle0: Wait until no network connections (may timeout on complex sites)
  • networkidle2: Wait until minimal network connections (may timeout on complex sites)

๐Ÿ“Š Output Data

Each successful capture returns:

{
"screenshot_url": "https://api.apify.com/v2/key-value-stores/QNNAmIXDEDePpHEd5/records/hrp8rcmv12jgllxf.png",
"linkUrl": "https://www.medium.com"
}

Output Details:

  • screenshot_url: Direct download link to the captured PNG image
  • linkUrl: Original URL that was captured (extracted from the URL object)
  • File Format: PNG with random 16-character filename
  • Storage: Apify Key-Value Store with permanent URLs

๐ŸŽฏ Use Cases

๐Ÿ“ˆ Business & Monitoring

  • Website Monitoring: Track visual changes and updates
  • Competitor Analysis: Regular captures of competitor pages
  • Documentation: Create visual records of web states
  • Archival: Preserve webpage appearances over time

๐Ÿงช Development & Testing

  • Responsive Testing: Verify layouts at different viewport sizes
  • Cross-Browser Testing: Ensure consistent appearance
  • Bug Documentation: Capture error states and issues
  • CI/CD Integration: Automated screenshot testing

๐Ÿ“š Content & Research

  • Tutorial Creation: Generate step-by-step visual guides
  • Academic Research: Capture web-based data and layouts
  • Social Media: Create engaging visual content
  • Portfolio: Showcase web development projects

๐Ÿ” E-commerce & Marketing

  • Price Monitoring: Track product pages and pricing
  • Ad Campaign Tracking: Monitor landing pages
  • A/B Testing: Compare different page versions
  • SEO Analysis: Document search result pages

โš™๏ธ Advanced Configuration Examples

High-Resolution Capture

{
"link_urls": [
{ "url": "https://example.com" }
],
"window_Width": 2560,
"window_Height": 1440,
"fullPage": true,
"waitUntil": "networkidle0"
}

Fast Processing

{
"link_urls": [
{ "url": "https://fast-site.com" }
],
"fullPage": false,
"waitUntil": "domcontentloaded"
}

Mobile Viewport Simulation

{
"link_urls": [
{ "url": "https://mobile-site.com" }
],
"window_Width": 375,
"window_Height": 812,
"fullPage": true
}

Authenticated Session

{
"link_urls": [
{ "url": "https://dashboard.example.com" }
],
"cookies": [
{
"name": "auth_token",
"value": "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9...",
"domain": ".example.com",
"path": "/",
"secure": true,
"httpOnly": true
}
],
"waitUntil": "networkidle0"
}

๐Ÿ”ง Technical Details

Browser Configuration

  • Engine: Pyppeteer (Chrome/Chromium)
  • Mode: Headless for optimal performance
  • Security: Sandbox disabled for containerized environments
  • Memory: Optimized shared memory usage
  • Images: Optional image loading for faster processing

Performance Optimization

  • Async Processing: Non-blocking operations for multiple URLs
  • Memory Management: Efficient resource cleanup
  • Network Optimization: Configurable network idle detection
  • Error Handling: Robust error recovery and logging

File Management

  • Naming: Random 16-character filenames to prevent conflicts
  • Storage: Apify Key-Value Store with permanent URLs
  • Format: PNG for lossless quality
  • Cleanup: Automatic temporary file removal

๐Ÿ› ๏ธ Installation & Usage

Running the Actor

  1. Cost Planning: Use our cost calculator to estimate expenses
  2. Input Configuration: Set your parameters using JSON or the visual editor
  3. Execute: Run the actor and monitor progress
  4. Results: Access screenshots via the generated dataset
  5. Download: Use the provided URLs to download images

Integration Options

  • Apify API: Programmatic access via REST API
  • Webhooks: Automated notifications on completion
  • Scheduling: Run captures at regular intervals
  • Zapier Integration: Connect with other tools and services

๐Ÿ” Troubleshooting

Common Issues

Screenshots are blank or incomplete?

  • Try waitUntil: "networkidle2" for slower sites
  • Enable fullPage: true for complete page capture
  • Check if site blocks automation tools
  • Verify URL accessibility

Page won't load properly?

  • Increase timeout by using different waitUntil conditions
  • Verify URL accessibility
  • Check for required cookies/authentication
  • Try waitUntil: "domcontentloaded" for faster loading

Cookie authentication failing?

  • Verify cookie format and values
  • Check domain and path settings
  • Ensure cookies are not expired
  • Test with browser developer tools first

๐Ÿ“„ API Reference

Input Schema Validation

The actor validates all input parameters according to the JSON Schema specification. Invalid inputs will result in clear error messages.

Output Format

Results are stored in Apify Dataset with consistent structure:

  • URL: screenshot_url for direct image access
  • Source: linkUrl for reference tracking
  • Storage: Permanent Key-Value Store links

Error Handling

  • Network Errors: Automatic retry mechanisms
  • Timeout Handling: Graceful failure with logging
  • Invalid URLs: Clear error messages
  • Memory Issues: Efficient cleanup and recovery

๐Ÿ† Best Practices

Configuration Tips

  1. Plan Costs First: Use our cost calculator to optimize your budget
  2. Test First: Start with default settings and adjust gradually
  3. Monitor Performance: Balance quality vs speed based on needs
  4. Handle Failures: Implement retry logic for critical captures
  5. Optimize Timing: Adjust Sleep and delay for your target sites
  6. Use Appropriate Viewports: Match your analysis requirements

Performance Optimization

  • Use domcontentloaded for fast, static sites (default)
  • Use networkidle0 for dynamic, interactive sites
  • Use fullPage: false for faster viewport-only captures
  • Monitor memory usage for large batch operations

Security Considerations

  • Store cookies securely when using authentication
  • Validate URLs before processing
  • Respect robots.txt and rate limits
  • Use proper authentication methods
  • Monitor for sensitive data in screenshots

๐Ÿ“ˆ Performance Metrics

Speed Benchmarks

  • Simple Page: ~5-10 seconds per screenshot
  • Complex Page: ~15-30 seconds with scrolling
  • Full Page: Additional 2-5 seconds for scrolling
  • Authenticated: +2-3 seconds for cookie setup

Resource Usage

  • Memory: ~50-100MB per browser instance
  • CPU: Moderate usage during capture
  • Network: Depends on page size and resources
  • Storage: PNG files typically 100KB-5MB

๐Ÿค Support & Resources

Getting Help

Getting Help

  • Review this documentation thoroughly
  • Check common issues and solutions
  • Test with simple examples first
  • Monitor actor logs for detailed error information

Updates & Improvements

  • Regular updates for browser compatibility
  • Performance optimizations based on usage patterns
  • New features based on user feedback
  • Security updates and bug fixes

On this page

Share Actor: