ScreenshotNeo

BlogGuides

Does Distill.io Work on Dynamic Websites Built with React or Angular?

Distill can monitor many dynamic pages, including React and Angular sites, but results depend on rendering time and page behavior. Here’s how to configure and verify a monitor.

By the ScreenshotNeo team4 October 20266 min read

Yes, generally. Distill.io documents support for dynamic webpage content and JavaScript-intensive single-page applications, so it may work with pages built using React or Angular. Its reviewed documentation does not name either framework or promise compatibility with every site. Treat framework support as an inference, then test the exact page and content you need to monitor.

The practical keys are enabling the dynamic option, allowing enough time for the page to render, and selecting the right content. If the information appears only after an interaction, you may need a recorded macro. Distill’s web app setup documentation covers monitor creation and selection.

1. How dynamic-page monitoring works

A React or Angular page can return an initial document before its application has finished rendering the content you care about. A monitor that checks too early may see an incomplete page or miss a later update. Distill’s dynamic setting is intended to load dynamic webpage content; its troubleshooting guidance also calls out JavaScript-intensive single-page applications as pages that may need more time.

This does not mean every page built with these frameworks behaves the same way. Rendering strategy, authentication, delayed API requests, and interaction requirements all affect what a monitor can observe.

2. Set up and verify a Distill monitor

  1. Add the page. Create a monitor for the page you want to watch.
  2. Choose the monitoring area. Monitor the whole page or use Distill’s visual selector to choose the changing section. A focused selection can avoid unrelated changes elsewhere on the page.
  3. Enable dynamic loading. In the monitor configuration, turn on the dynamic option when the page renders its content dynamically. Distill describes dynamic as loading dynamic webpage content when true.
  4. Set a suitable delay. If the target section is absent or incomplete in the first check, increase the wait delay and check again. Distill documents delays from 0 to 20 seconds and recommends experimenting with a longer delay for slow pages.
  5. Check the first result. Review the first check and the change history. Confirm that the captured content includes the target section and that unrelated changes are not generating noise.
  6. Adjust the selection or timing. If the capture is inconsistent, refine the selected area and try a longer delay before concluding that the page cannot be monitored.

Run a few checks under the conditions that matter to you. A successful capture once confirms only that the page worked under those conditions; it does not establish reliable monitoring for every state or visit.

3. Handle content that appears after interaction

A longer wait helps when the page simply needs more time. It will not necessarily perform an action needed to reveal the content. If the target appears only after scrolling, clicking a tab, applying a filter, submitting a form, or searching, investigate Distill macros, which can record and replay page actions.

After configuring an interaction, verify that the macro reaches the same state on repeated checks. Pages whose content depends on a signed-in session, changing account state, or a transient interaction may need additional setup beyond enabling dynamic loading.

4. Choose local or cloud checks

Monitor type Where it runs Practical consideration
Local Your browser or app The relevant device, browser, or app must be available for checks.
Cloud Distill’s servers Checks do not require your device to stay on. Consider whether the page depends on a local browsing context.

Pick based on when checks need to run and whether the page requires the local browsing context. Distill’s documentation describes these execution differences; the best choice depends on the particular page and setup.

5. Common problems and fixes

Symptom Likely cause What to try
The captured page is blank or missing the target The application has not rendered the content when extraction occurs. Enable dynamic loading and increase the delay; inspect the next check.
The capture contains only part of a section Content loads in stages or after a slower request. Try a longer delay, up to the documented 20-second range, and refine the selection.
The page loads, but the monitored content never appears The content may require scrolling, a click, filtering, form submission, or a search. Investigate a Distill macro to record and replay the required page actions.
Alerts fire for unrelated page changes The monitor covers too much content or includes volatile sections. Select the relevant section instead of the whole page, then review the change history.
A local monitor misses checks while the device is unavailable Local checks run through the relevant browser, app, or device. Keep that environment available or consider a cloud monitor if the page works in that context.
A cloud check does not reproduce the local page state The page may rely on the local browsing context. Compare the page behavior in the two contexts and use the execution location that can access the required state.

6. Performance, reliability, and cost considerations

Performance: A longer delay can give a JavaScript-heavy page more time to render, but it also makes each check take longer. Use a delay that captures the desired content consistently, rather than assuming the maximum is always necessary.

Reliability: Keep the selection as narrow as practical, verify the first capture and change history, and account for any required actions with a macro. Recheck after meaningful changes to the page because its rendering or interaction flow may change.

Cost: The research reviewed for this article does not establish Distill pricing or plan limits, so check Distill’s current plan information for those details. For any monitoring service, account for how often checks run and how long each check takes when choosing a configuration.

7. ScreenshotNeo as an alternative for taking screenshots

Distill is for monitoring page changes. If your goal is to capture a rendered page as an image or PDF, ScreenshotNeo is a website screenshot API and MCP server for developers, made by Yorker Media. It is an alternative to try first when you need a screenshot rather than change monitoring. One GET request returns a PNG, JPEG, WebP, or PDF, and its options include waiting for a selector, a delay, or network idle.

For Distill’s documented dynamic monitoring workflow, use Distill and validate the target page. For a rendered screenshot, see the ScreenshotNeo API documentation.

Or skip the browser setup

Make a screenshot request with cURL:

curl -G "https://api.screenshotneo.com/v1/shot" -d access_key=YOUR_API_KEY --data-urlencode url=https://stripe.com -o shot.webp

Python:

import requests

r = requests.get(
    "https://api.screenshotneo.com/v1/shot",
    params={"access_key": "YOUR_API_KEY", "url": "https://stripe.com"},
    timeout=90,
)
open("shot.webp", "wb").write(r.content)

Node.js:

const q = new URLSearchParams({ access_key: 'YOUR_API_KEY', url: 'https://stripe.com' });
const res = await fetch(`https://api.screenshotneo.com/v1/shot?${q}`);

ScreenshotNeo removes cookie banners, popups, and chat widgets before the shot. Bot checks, blank pages, and failed loads are never billed. An MCP server lets AI agents take screenshots. The free plan includes 1,000 screenshots a month with no card; paid plans start at $5 for 3,000. Sign up for free and get 1,000 screenshots a month with no card.

FAQ

Does Distill officially guarantee compatibility with React or Angular?

The reviewed documentation does not name either framework or give a framework-specific guarantee. Its general support for dynamic pages and guidance for JavaScript-intensive SPAs make compatibility plausible, but you should test the specific page.

Should I monitor the whole page or only a component?

Monitor the smallest area that contains the information you care about when unrelated page changes would create noise. Use a whole-page monitor when changes anywhere on the page matter.

Will increasing the delay reveal content that requires a click?

Not by itself. A delay gives the page time to load; content that requires an action may need a macro to perform that action.

Does ScreenshotNeo monitor changes over time?

ScreenshotNeo is a screenshot API and MCP server. The facts provided for this article describe screenshot capture, not change-monitoring alerts.