Bookmarklet to Copy All Links on Page
Extract every link from any webpage instantly. One click to copy all URLs to your clipboard.
🚀 Install the Bookmarklet
Drag this button to your bookmarks bar, or right-click and bookmark it:
How It Works
- 1. Click the bookmarklet on any webpage
- 2. Automatically extracts all HTTP/HTTPS links
- 3. Removes duplicates for a clean list
- 4. Copies to clipboard (or shows in prompt for older browsers)
Features
✨ Smart Extraction
- • Finds all <a> tags with href attributes
- • Filters out non-HTTP links (mailto:, tel:, etc.)
- • Removes duplicate URLs automatically
- • Preserves full URL with parameters
🔧 Universal Compatibility
- • Works on any website
- • No permissions required
- • Fallback for older browsers
- • Mobile-friendly (where supported)
Common Use Cases
🔍 SEO Analysis
Extract all links from a webpage to analyze link structure, find broken links, or audit external links.
📚 Research
Quickly gather all reference links from articles, documentation, or resource pages for further reading.
🛒 E-commerce
Extract product links from category pages, search results, or competitor websites for analysis.
Advanced Variations
Need more specific functionality? Try these variations:
Extract External Links Only
This version only copies links that point to external domains:
javascript:(function(){
const currentDomain = window.location.hostname;
const links = Array.from(document.querySelectorAll('a[href]'))
.map(a => a.href)
.filter(href => {
try {
const url = new URL(href);
return url.hostname !== currentDomain;
} catch { return false; }
})
.filter((href, index, self) => self.indexOf(href) === index);
const text = links.join('\n');
navigator.clipboard.writeText(text).then(() => {
alert(`Copied ${links.length} external links!`);
});
})();
Extract Links with Titles
This version includes the link text or title with each URL:
javascript:(function(){
const links = Array.from(document.querySelectorAll('a[href]'))
.map(a => ({
url: a.href,
text: a.textContent.trim() || a.title || 'No text'
}))
.filter(link => link.url.startsWith('http'))
.map(link => `${link.text} - ${link.url}`);
const text = links.join('\n');
navigator.clipboard.writeText(text).then(() => {
alert(`Copied ${links.length} links with titles!`);
});
})();
Frequently Asked Questions
Why doesn't it work on some websites?
Some websites have strict Content Security Policies that prevent bookmarklets. Also, some sites dynamically load content, so links might not be available immediately.
Can I filter links by domain or pattern?
Yes! Check our advanced variations above or use our bookmarklet generator to create a custom version with your specific filters.
How do I export the links to a file?
After copying the links, paste them into any text editor and save as a .txt or .csv file. For automated file downloads, you'd need a more complex bookmarklet or browser extension.
Create Your Own Custom Link Extractor
Need specific filtering, formatting, or export options? Build your own version!