Skip to content

URL Extractor

Extract, normalize, and deduplicate HTTP, HTTPS, and www links from up to one million characters without uploading the source text.

Privacy: your files never leave your device. All processing happens locally in your browser.

How to use

  1. 1.Paste text containing HTTP, HTTPS, or www web addresses.
  2. 2.Extract the URLs and review browser normalization, punctuation boundaries, and the unique count.
  3. 3.Download the one-URL-per-line UTF-8 TXT result.

About URL Extractor

URL Extractor scans plain text for HTTP, HTTPS, and www-style web addresses, validates each candidate with the browser URL parser, removes normalized duplicates, and returns one URL per line. Paste up to 1,000,000 UTF-16 code units, run the scan, review the exact list, and download it as UTF-8 text. Source content never leaves the current browser tab.

Candidates must begin with http://, https://, or www. Scheme matching is case-insensitive. A www candidate receives https:// before validation, so WWW.Example.com becomes a complete HTTPS URL. FTP, mailto, file, JavaScript, bare domains without www, and email addresses are outside the declared detection scope.

The browser URL constructor performs structural parsing and normalization. Hostnames become lowercase, a missing root path can become a trailing slash, default URL serialization rules apply, and valid fragments, queries, ports, paths, and credentials remain. The output is therefore normalized URL text, not necessarily the exact spelling found in the source.

Common prose punctuation is handled conservatively. Periods, exclamation marks, question marks, and colons at the end of a candidate are removed. A closing parenthesis, bracket, or brace is removed only when it is unmatched within the candidate, which preserves a balanced path such as /a_(b) while removing the prose wrapper around (https://example.org/). Commas and semicolons are treated as candidate boundaries.

Because commas and semicolons are valid inside some URLs, treating them as boundaries favors extraction from ordinary prose and comma-separated lists over capturing every unusual RFC-valid path verbatim. When those characters are meaningful inside a URL, verify the original source or encode them before extraction. The tool does not claim to be a full HTML or email parser.

Duplicates are removed after normalization using exact serialized URL equality. https://EXAMPLE.com and https://example.com/ therefore become one entry. URLs that differ by query order, fragment, path case, credentials, or a meaningful trailing path remain separate because the browser serialization still differs. Tracking parameters are not stripped.

Up to 10,000 unique URLs are accepted. The text limit and URL limit bound candidate matching, parser work, preview rendering, memory, and Blob creation. An over-limit input or result is rejected rather than silently truncated. Invalid candidates are skipped without preventing valid neighbors from being returned.

Malformed UTF-16 surrogate sequences are rejected before scanning. This prevents the URL parser or UTF-8 download encoder from substituting replacement characters without notice. Ordinary browser text input is normally well formed, but the explicit check preserves the exact transformation contract.

Use this tool for extracting references from notes, exported messages, logs, documentation, research drafts, or copied page text. It does not crawl URLs, verify reachability, follow redirects, fetch titles, check safety, resolve short links, or determine whether a destination is trustworthy. A syntactically valid URL can still be malicious or unavailable.

Credentials embedded in a URL remain visible in the result because stripping them would change the parsed address. Avoid pasting secrets, tokens, signed links, private hosts, or personal data into any workflow unless the destination and local device are trusted. The tool makes no network request to extracted addresses.

The downloaded file contains the same newline-joined strings shown in the preview and uses LF separators. A temporary Blob URL is created only when Download is clicked and is revoked immediately afterward. Editing input clears the previous result, and no server account, history, or external dataset participates in processing.

For HTML href extraction, CSV fields, Markdown link destinations, or mail archives, use a format-aware parser when structure matters. This scanner intentionally handles visible text candidates with transparent boundaries rather than attempting to interpret every document grammar.

Methodology & sources

Reject empty, malformed-Unicode, or over-1,000,000-code-unit text; match case-insensitive http, https, and www candidates using conservative prose boundaries; remove terminal prose punctuation and only unmatched closing brackets; prepend https to www candidates; validate and serialize with the browser URL constructor; retain only HTTP or HTTPS protocols; preserve first-seen order while deduplicating exact serialized values; reject more than 10,000 unique results; join with LF and create a short-lived UTF-8 Blob URL on download click.

Frequently asked questions

Does it find bare example.com domains?
No. Candidates must begin with HTTP, HTTPS, or www.
Why did a hostname change case or gain a slash?
The browser URL parser serializes normalized URLs before deduplication.
Does it visit or safety-check extracted links?
No. It performs local syntax parsing only and makes no request to the destinations.
Is pasted text uploaded?
No. Scanning, parsing, previewing, and download creation happen locally.

Text Tools guides

View all