Some links on this page are affiliate links: if you buy through them we may earn a commission, at no extra cost to you.
To find a video URL, open your browser’s developer tools, check the page’s video markup, then use the Network panel while the video plays to capture the request the browser actually loads. Inspect Element is a useful starting point, but Network is usually more reliable for JavaScript-powered players. The result may be a direct video file, a streaming playlist, or a temporary, session-dependent URL—not necessarily a permanent download link.
What you can—and cannot—get from a video URL
A video player can load media in several ways. A simple page may expose one file, such as an MP4 or WebM. A streaming player may instead request a playlist, such as an M3U8 file, followed by many smaller media segments. The latter is not one complete video file, even if one of the segment requests looks like a media URL.
A URL can also contain an authorization token or expiration time. It may work only for a short period, in the browser session that created it, or alongside the page’s cookies or referrer. Copying the address preserves the text of the URL; it does not guarantee that it will keep working or that you have permission to download, copy, or redistribute the video.
Free tools Windows power users keep installed
One-click scans. No signup required.
Find a video URL in Chrome or Firefox
1. Open the developer tools
In Chrome, right-click the page and choose Inspect. Developer tools opens, normally with the Elements panel selected. In Firefox, open Developer Tools and use the Inspector panel; you can also open it from the page’s context menu. If the player is inside an embedded frame, the relevant page content may belong to that frame rather than the surrounding page.
#1 Best Overall
2. Check the video element and its sources
In Elements or Inspector, search the page markup for <video>. Look inside the element for a src attribute, or for child <source> elements with their own src attributes. A value ending in .mp4 or .webm may identify a direct video file. A playlist URL may end in .m3u8 or another format used by the player.
This is the quickest method when the page declares a usable source directly in its HTML. It can miss videos that are added or configured by JavaScript after the page loads. A page may also contain several sources for different formats or quality levels, so the first source you see is not necessarily the one currently playing.
3. Capture the request in Network
- Open Network before playing. Select the Network panel in developer tools. If you are about to navigate away from the current page, enable Preserve log so navigation does not clear the request list.
- Start a fresh recording. Clear the existing Network log, then reload the page while the panel is open. Wait for the player to appear and start playback; some sites do not request media until playback begins.
- Filter for media. Use the media resource filter if it is available in your browser, or inspect requests while playback starts. Look for requests that appear at that moment and have a media or playlist response.
- Inspect the candidate request. Select a likely request and inspect its details. In Chrome, hovering over or inspecting the request can reveal its full resource URL. Confirm that the request is associated with the player and not an unrelated image, advertisement, or analytics call.
- Copy and save the URL. Copy the request URL into a plain-text note or project log. Record the page and date alongside it if you need to understand later where it came from.
Network is generally the better choice when the player creates its source dynamically: it records what the browser requested, rather than only what was declared in the initial markup.
Recommended Free Tools
4. Check Chrome’s Media panel
Chrome also provides a Media panel for information about audio and video sources associated with players. It can save player information as JSON. Use it as a way to identify the source connected to a player; use Network when you need the actual request and its full URL.
Rank #3
Choose the right method for the result you need
| Method | What it shows | Best use | Limitation |
|---|---|---|---|
| Elements or Inspector | Video and source declarations in the page markup | A quick check for a direct, statically declared source | May not show a source created at runtime by JavaScript |
| Network | Requests the browser actually makes while loading or playing media | Finding runtime sources, playlists, and request URLs | Requires capturing the activity; playback may produce multiple requests |
| Chrome Media panel | Player-associated audio and video source information | Reviewing what a Chrome player is using | Does not turn a protected or segmented stream into an authorized download |
| HAR export | A saved record of Network requests and their context | Keeping debugging evidence or sharing a diagnostic capture | Can contain sensitive request data and should be sanitized before sharing |
Save a URL or preserve a useful record
For a URL you may need again
Paste the copied address into a plain-text note, bookmark, or project log. Include the page address and the date you captured it. If the URL has query parameters, preserve the entire address rather than trimming what looks like extra text: those parameters may be needed for authorization or may specify when the link expires. Treat a URL containing access tokens or other session data as sensitive.
For a request record
In Network, export a HAR if you need more than the address—for example, to retain request context for debugging. A HAR can include sensitive request data. Review and sanitize it before sending it to someone else, and avoid sharing cookies, authorization values, or other credentials.
Streaming, embedded players, and expiring links
Several small requests instead of one video file
Adaptive streaming commonly involves a playlist and multiple media segments. If Network shows a sequence of small requests, the player may be fetching the video in parts or at different qualities. A single segment is not the whole video. For legitimate playback or archival work, identify the relevant playlist or player source rather than treating one segment as a complete file.
What’s actually slowing this PC down?
Pick the symptom - the matching free tool is one click away.
A player inside an iframe
If the visible player is embedded, inspect the frame that owns the player. Its markup and requests may not appear where you expect in the outer page. Check the frame’s document in Elements or Inspector, then observe the associated activity in Network while playback begins.
Best Value
A URL that stops working
A copied URL may be signed, expire, or depend on the browser’s current session. It can fail when opened in a new tab, on another device, or after time passes because the original page supplied cookies, a referrer, or a still-valid token. A failed direct open does not by itself mean you copied the wrong request; check whether the media works in its original page and whether the request depends on the session.
Independent reader supportYour contribution helps us test, update, and keep practical guides available for everyone.Troubleshoot when the URL is missing or unusable
- No media request appears: Clear the Network log, make sure the panel is recording, reload with developer tools open, and start playback. If navigation clears the log, enable Preserve log before reloading.
- The markup has no source: The player may configure itself with JavaScript. Capture Network activity during playback instead of relying on the initial HTML.
- There are many small media requests: The site may be using adaptive streaming. Look for the playlist or player source and do not mistake one segment for the complete video.
- The URL opens an error: The request may need the original session, cookies, a referrer, or a token that has expired. Check it in the page where it was captured; do not publish or share session credentials.
- The video is in an embedded frame: Inspect the frame that contains the player and watch its Network activity, rather than focusing only on the outer page.
- The player is DRM-protected: Developer tools may expose requests, but seeing a request does not grant authorization to decrypt, download, or redistribute protected content.
Or skip the browser setup
ScreenshotNeo is a website screenshot API, not a video-URL extractor: this request captures a visual screenshot of the page, not the media address. It can be useful when your goal is to save a page image alongside your notes. The API accepts one GET request with a URL and returns a screenshot or PDF. See the ScreenshotNeo API documentation for options.
curl -G "https://api.screenshotneo.com/v1/shot" -d access_key=YOUR_API_KEY --data-urlencode url=https://stripe.com -o shot.webp
Before capture, it accepts cookie or consent banners like a visitor and removes more than 60 known consent platforms, newsletter popups, and chat widgets; each of those steps can be turned off. Bot checks or CAPTCHAs, blank pages, timeouts, failed loads, and cache hits are not billed, and the response identifies the page verdict and billing status in headers. Its MCP server gives AI agents tools for screenshots, page information, and PDF capture. The Free plan includes 1,000 screenshots a month with no card; paid plans start at $5 for 3,000. For the actual video request, use the browser workflow above. Try ScreenshotNeo free to get 1,000 screenshots a month with no card.
Use the URL only within your rights
A visible or copyable request URL is not proof that a video is freely downloadable or yours to redistribute. Respect the site’s terms, the rights holder’s permissions, and any applicable law. For protected playback, a URL is not a substitute for authorization.
Frequently Asked Questions
Does Inspect Element always show an MP4 link?
No. The page may use a playlist, segmented streaming, or a source created by JavaScript. In those cases, capture the player’s requests in Network while playback starts.
Can I save a HAR file and send it to support?
You can export a HAR from Network, but inspect and sanitize it first because it may contain sensitive request data such as cookies or authorization information.
Quick Recap
Product prices and availability are accurate as of the date/time indicated and are subject to change. Any price and availability information displayed on Amazon at the time of purchase will apply.

