WhatsUpCams Scraper - Live HLS Streams, Snapshots & Weather
Pricing
$10.00 / 1,000 visionsync results
WhatsUpCams Scraper - Live HLS Streams, Snapshots & Weather
Scrape WhatsUpCams webcams worldwide, with the densest coverage in Croatia and the Adriatic. Verified HLS stream URLs, live snapshots with their age in seconds, GPS coordinates and current weather.
Pricing
$10.00 / 1,000 visionsync results
Rating
0.0
(0)
Developer
the anh nguyen
Maintained by CommunityActor stats
0
Bookmarked
1
Total users
0
Monthly active users
5 days ago
Last modified
Share
Scrape WhatsUpCams webcams worldwide, with the densest coverage in Croatia and the Adriatic. Verified HLS stream URLs, live snapshots with their age in seconds, GPS coordinates and current weather.
What does this Actor return?
Every field below was checked against live WhatsUpCams pages on 2026-08-21.
- Live HLS stream URL, fetched and confirmed to return a real playlist before it ships
- Live snapshot URL with
ageSeconds-- the frame's actual age, read from the CDN - GPS coordinates taken from the camera's own map position on the page
- Current weather at those coordinates: temperature, feels-like, conditions, wind, humidity, UV index
- Timezone, elevation, sunrise and sunset
- Auto-tagging (beach, harbour, city, mountain, wildlife, traffic, landmark)
- Location search -- type a city name, no URLs needed
The snapshot CDN is unreliable. cdn.whatsupcams.com answered 502 after thirty
seconds on two of three consecutive requests for a file it served in 0.15 s on
the third, and it timed out for one camera during a platform run while serving
another in the same run. The check is retried once and then gives up:
snapshot.state reads "unverified" rather than "dead", because a check that
could not complete is not evidence about the camera. When that happens the record
still ships if the stream verified, and the snapshot URL is simply absent rather
than present and untested.
Cameras whose feed has stopped are dropped, not billed. WhatsUpCams keeps listing them: at the time of writing the Bale Tomaso Bembo Square camera still has a page, and its playlist answers 404 while its "snapshot" is a frame from May 2023.
Why scrape WhatsUpCams?
WhatsUpCams provides high-quality HD streams of European tourist destinations, focusing on Croatia, Italy, and Mediterranean coastlines. Perfect for travel agencies, destination marketing, tourism analytics, and coastal monitoring applications.
How to use
- Create a free Apify account at apify.com if you don't have one.
- Open this Actor and type a location (e.g., "Split") -- or paste specific URLs.
- Click Run and get stream URLs, live snapshots, coordinates and weather.
- Download results as JSON, CSV, or Excel from the Output tab.
Search by location (no URLs needed)
{"location": "Senj"}
Just type a city, country, or landmark. The Actor auto-discovers webcams on WhatsUpCams for that location.
Search by URL
{"startUrls": [{ "url": "https://www.whatsupcams.com/en/webcams/croatia/lika-senj/senj/senj-harbour-webcam/" },{ "url": "https://www.whatsupcams.com/en/webcams/croatia/lika-senj/senj/live-webcam-senj-riva-seafront-croatia/" }]}
Output example
A record from an actual run, not an illustration:
{"visionSyncId": "VS-WUC-senj-harbour-webcam","url": "https://www.whatsupcams.com/en/webcams/croatia/lika-senj/senj/senj-harbour-webcam/","title": "Senj Harbour Webcam – Breakwater & Lighthouse Live View","description": "Watch the Senj harbour webcam live. View the breakwater, lighthouse, sea conditions and coastal activity in real time on Croatia’s Adriatic coast.","stream": {"url": "https://cdn-006.whatsupcams.com/hls/hr_senj12.m3u8","type": "hls","isLive": true,"lastVerified": "2026-08-21T18:41:10.831Z","state": "verified"},"snapshotUrl": "https://cdn.whatsupcams.com/snapshot/hr_senj12.jpg","snapshot": {"url": "https://cdn.whatsupcams.com/snapshot/hr_senj12.jpg","state": "verified","ageSeconds": 98,"source": "provider"},"tags": ["beach","harbor"],"enrichment": {"location": {"city": "Senj","country": "Hrvatska","countryCode": "HR","lat": 44.989419,"lon": 14.8981,"coordsSource": "map-embed"},"weather": {"temp": "24.9°C","feelsLike": "29.7°C","condition": "Rain showers: Slight","wind": "5 km/h","humidity": "89%","uvIndex": 0},"timezone": "Europe/Zagreb","elevation": 0,"sunrise": "2026-08-21T06:09","sunset": "2026-08-21T19:57"},"provider": "whatsupcams","timestamp": "2026-08-21T18:41:10.831Z"}
Filter live cameras only
Set filterLiveOnly: true to skip offline cameras -- useful for scheduled monitoring runs.
{"location": "Senj","filterLiveOnly": true}
How much will it cost?
This Actor uses Pay-Per-Event pricing: $0.002 per result until 2026-09-04, $0.01 after.
| Volume | Until 2026-09-04 | From 2026-09-04 |
|---|---|---|
| 100 results | $0.20 | $1.00 |
| 1,000 results | $2.00 | $10.00 |
| 10,000 results | $20.00 | $100.00 |
You are only charged for a result that carries a verified asset. A camera whose stream returns 404, or whose only still image has not been rewritten in weeks, is reported in the log and skipped rather than billed. Titles and descriptions on their own are never charged for.
Programmatic access (API)
Python
from apify_client import ApifyClientclient = ApifyClient("YOUR_API_TOKEN")run = client.actor("zPSQzGVfEE9VXG7Sh").call(run_input={"location": "Senj"})for item in client.dataset(run["defaultDatasetId"]).iterate_items():print(item["title"], item.get("tags"), item["enrichment"]["weather"]["temp"])
JavaScript
import { ApifyClient } from 'apify-client';const client = new ApifyClient({ token: 'YOUR_API_TOKEN' });const run = await client.actor('zPSQzGVfEE9VXG7Sh').call({location: 'Split',});const { items } = await client.dataset(run.defaultDatasetId).listItems();items.forEach(item => console.log(item.title, item.tags, item.enrichment?.weather?.temp));
Schedule for monitoring
Build a time series of snapshots and weather by scheduling this Actor:
{"actId": "zPSQzGVfEE9VXG7Sh","cronExpression": "0 */6 * * *","input": {"location": "Senj","filterLiveOnly": true,"maxRequestsPerCrawl": 20}}
Tips
- Search by location -- type a city name instead of hunting for URLs.
- Use filterLiveOnly for scheduled runs to skip offline cameras and save costs.
- Use the tags field to filter results by category (beach, city, mountain, etc.).
- Pass a listing page URL to auto-discover all cameras on that page.
- Schedule runs every 6 hours to track weather changes at camera locations.
Is it legal to scrape WhatsUpCams?
This Actor extracts publicly available data from WhatsUpCams camera pages. Web scraping of publicly accessible information is generally permitted under applicable law. Always review the target site's Terms of Service and applicable regulations (including GDPR for EU data) before use. This Actor does not bypass authentication, paywalls, or CAPTCHAs. Use responsibly and respect rate limits.
Part of VisionSync Suite
Search all 12 providers at once with VisionSync Hub -- just type a location.
| Provider | Link |
|---|---|
| EarthCam | Open in Store |
| SkylineWebcams | Open in Store |
| Explore.org | Open in Store |
| Webcamtaxi | Open in Store |
| Windy | Open in Store |
| YouTube Live | Open in Store |
| Worldcam | Open in Store |
| Webcamera24 | Open in Store |
| IPLiveCams | Open in Store |
| GeoCam | Open in Store |
| OpenWebcamDB | Open in Store |