Gif Scroll Animation avatar

Gif Scroll Animation

Pricing

from $4.99 / 1,000 results

Go to Apify Store
Gif Scroll Animation

Gif Scroll Animation

Pricing

from $4.99 / 1,000 results

Rating

0.0

(0)

Developer

API Empire

API Empire

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

3 days ago

Last modified

Share

🎬 GIF Scroll Animation

Capture any webpage as a beautiful, smooth, scrolling animated GIF β€” in seconds.

πŸ“– Overview

GIF Scroll Animation is a powerful Apify Actor that launches a real Chromium browser, navigates to your URL, scrolls the full page from top to bottom, and saves every frame as a looping animated GIF. Use it to create website previews, onboarding demos, portfolio showcases, and social media content.

Supports bulk URL input, custom viewport sizing, frame rate control, cookie banner dismissal, click interactions, and gifsicle-powered compression.


✨ Why Choose This Actor?

FeatureThis Actor
πŸ–₯️ Real browser renderingβœ… Playwright + Chromium
πŸ“¦ Bulk URL inputβœ… Unlimited URLs
πŸ—œοΈ Compressionβœ… Lossy + Lossless via gifsicle
πŸͺ Cookie handlingβœ… Auto-dismiss + custom selector
πŸ”€ Proxy fallbackβœ… Direct β†’ Datacenter β†’ Residential
πŸ’Ύ Live outputβœ… Per-URL results saved immediately
πŸ–ΌοΈ GIF preview in Consoleβœ… Image column in output table

🎯 Key Features

  • πŸ“Έ Real browser screenshots β€” renders JavaScript, CSS animations, lazy-loaded images
  • 🌐 Bulk URL input β€” capture dozens of pages in one run
  • πŸ“ Custom viewport β€” set width & height for perfect canvas sizing
  • 🎞️ Adjustable FPS β€” 1–30 frames per second
  • ⬇️ Full-page scroll β€” configurable step size and max frame cap
  • πŸ–±οΈ Click interactions β€” click any CSS selector and record the result
  • πŸͺ Cookie handling β€” auto-dismiss common consent dialogs or remove by selector
  • πŸ—œοΈ Dual compression β€” optional lossy (gifsicle -O3 --lossy=80) and lossless variants
  • πŸ”€ Proxy fallback β€” direct β†’ datacenter β†’ residential, auto-triggered on blocks
  • 🐒 Animation slow-down β€” capture CSS animations at 10% speed for clarity
  • πŸ’Ύ Live KVS upload β€” GIFs stored in the run's Key-Value Store, accessible via URL

πŸ“₯ Input

{
"urls": [
{ "url": "https://crawlee.dev/" },
{ "url": "https://apify.com" }
],
"viewportWidth": 1366,
"viewportHeight": 768,
"frameRate": 7,
"scrollDown": true,
"scrollPercentage": 10,
"recordingTimeBeforeAction": 1000,
"clickSelector": "",
"recordingTimeAfterClick": 1000,
"waitToLoadPage": 0,
"cookieWindowSelector": "",
"autoDismissCookies": true,
"slowDownAnimations": false,
"lossyCompression": true,
"losslessCompression": false,
"maxFrames": 600,
"pageLoadTimeout": 90,
"retries": 2,
"proxyConfiguration": { "useApifyProxy": false }
}
FieldTypeDefaultDescription
urlsarrayrequiredURLs to capture
viewportWidthinteger1366Browser width (px)
viewportHeightinteger768Browser height (px)
frameRateinteger7Output GIF frames per second
scrollDownbooleantrueScroll page top-to-bottom
scrollPercentageinteger10Scroll step as % of viewport height
recordingTimeBeforeActioninteger1000Hold first frame (ms)
clickSelectorstring""CSS selector to click (optional)
recordingTimeAfterClickinteger1000Record duration after click (ms)
waitToLoadPageinteger0Extra wait after page load (ms)
cookieWindowSelectorstring""CSS selector of cookie banner to remove
autoDismissCookiesbooleantrueAuto-click cookie accept buttons
slowDownAnimationsbooleanfalseSlow animations to 10% speed
lossyCompressionbooleantrueGenerate lossy-compressed variant
losslessCompressionbooleanfalseGenerate lossless-compressed variant
maxFramesinteger600Cap on total scroll frames
pageLoadTimeoutinteger90Page load timeout in seconds
retriesinteger2Retry attempts per URL
proxyConfigurationobjectno proxyApify proxy settings

πŸ“€ Output

Each captured GIF is uploaded to the run's Key-Value Store and a dataset row is pushed immediately. If both original and compressed variants are requested, each gets its own dataset row.

{
"url": "https://crawlee.dev/",
"site_name": "crawlee.dev",
"gif_type": "original",
"gif_key": "crawlee.dev-scroll_original",
"gif_url": "https://api.apify.com/v2/key-value-stores/<id>/records/crawlee.dev-scroll_original",
"frame_count": 42,
"file_size_bytes": 1215463,
"file_size_human": "1.2 MB",
"viewport": "1366x768",
"frame_rate": 7,
"success": true,
"error_message": null,
"captured_at": "2026-05-21T14:00:00+00:00"
}

πŸš€ How to Use (Apify Console)

  1. Go to console.apify.com β†’ Actors
  2. Search for GIF Scroll Animation and open it
  3. Add your URLs in the Website URLs field
  4. Adjust viewport, FPS, and compression settings as needed
  5. Click Start
  6. Watch the real-time logs β€” you'll see frames captured as they happen
  7. Open the Output tab to see your GIF table with image previews
  8. Click any GIF URL to download or preview

πŸ€– Use via API

curl -X POST \
"https://api.apify.com/v2/acts/YOUR_ACTOR_ID/runs?token=YOUR_TOKEN" \
-H "Content-Type: application/json" \
-d '{
"urls": [{"url": "https://crawlee.dev/"}],
"frameRate": 7,
"lossyCompression": true
}'

πŸ”€ Proxy Behavior

ScenarioBehavior
DefaultDirect request (no proxy)
Target blocks directAuto-fallback to Apify Datacenter proxy
Datacenter blockedAuto-fallback to Residential proxy
Residential blockedRetry up to 3 times with residential
Fallback triggeredAll subsequent requests use the fallback proxy

All proxy transitions are logged in real time.


πŸ’° Pricing

This actor uses the Pay per usage model β€” you pay only for the Apify platform compute and proxy costs. No additional Store charges.


❓ Frequently Asked Questions

Q: What format are the output GIFs in? A: Standard animated GIF. Original, lossy-compressed, and lossless-compressed variants are available.

Q: Why is my GIF blank or only one frame? A: Check if the page uses authentication or a full-screen overlay. Try setting waitToLoadPage to 2000–5000 ms.

Q: How do I make a smaller GIF? A: Enable lossyCompression, reduce frameRate to 5, or increase scrollPercentage to 15–20.

Q: Can it handle infinite-scroll pages? A: Yes, set maxFrames to cap the recording. Default is 600 frames.

Q: What viewport sizes work best? A: 1366Γ—768 is a common laptop screen. Use 1920Γ—1080 for full HD. Smaller viewports (1024Γ—576) produce smaller files.


πŸ› οΈ Support and Feedback

Found a bug or have a feature request? Open an issue or contact the author through the Apify platform.