Display and export all links found on the current webpage.
// ==UserScript==
// @name Link Extractor
// @name:ru Извлечение ссылок
// @name:pl Ekstraktor linków
// @name:tr Bağlantı Çıkarıcı
// @namespace https://greasyfork.org/users/your-id
// @version 1.0
// @description Display and export all links found on the current webpage.
// @description:ru Показывает и экспортирует все ссылки, найденные на текущей веб-странице.
// @description:pl Wyświetla i eksportuje wszystkie linki znalezione na bieżącej stronie.
// @description:tr Geçerli web sayfasında bulunan tüm bağlantıları görüntüler ve dışa aktarır.
// @author Alex
// @match *://*/*
// @grant GM_setClipboard
// ==/UserScript==
(function() {
'use strict';
const btn = document.createElement('button');
btn.textContent = '🔗 Показать ссылки';
Object.assign(btn.style, {
position: 'fixed',
top: '10px',
right: '10px',
zIndex: '999999',
padding: '8px 12px',
background: '#222',
color: '#fff',
border: '1px solid #777',
borderRadius: '6px',
cursor: 'pointer'
});
btn.onclick = () => {
const links = [...document.querySelectorAll('a')]
.map(a => ({
text: a.textContent.trim(),
href: a.href || a.getAttribute('href') || ''
}))
.filter(x => x.href || x.text)
.map(x => x.href || x.text);
const list = links.join('\n');
const w = window.open('', '_blank');
w.document.body.innerHTML = `
<textarea style="width:100%;height:90vh;font-family:monospace;font-size:14px;">${list}</textarea>
<button onclick="navigator.clipboard.writeText(document.querySelector('textarea').value)">📋 Copy</button>
<p>Найдено: ${links.length}</p>
`;
};
document.body.appendChild(btn);
})();