Link Extractor

Display and export all links found on the current webpage.

이 스크립트를 설치하려면 Tampermonkey, Greasemonkey 또는 Violentmonkey와 같은 확장 프로그램이 필요합니다.

이 스크립트를 설치하려면 Tampermonkey와 같은 확장 프로그램을 설치해야 합니다.

이 스크립트를 설치하려면 Tampermonkey 또는 Violentmonkey와 같은 확장 프로그램이 필요합니다.

이 스크립트를 설치하려면 Tampermonkey 또는 Userscripts와 같은 확장 프로그램이 필요합니다.

이 스크립트를 설치하려면 Tampermonkey와 같은 확장 프로그램이 필요합니다.

이 스크립트를 설치하려면 유저 스크립트 관리자 확장 프로그램이 필요합니다.

(이미 유저 스크립트 관리자가 설치되어 있습니다. 설치를 진행합니다!)

Advertisement:

이 스타일을 설치하려면 Stylus와 같은 확장 프로그램이 필요합니다.

이 스타일을 설치하려면 Stylus와 같은 확장 프로그램이 필요합니다.

이 스타일을 설치하려면 Stylus와 같은 확장 프로그램이 필요합니다.

이 스타일을 설치하려면 유저 스타일 관리자 확장 프로그램이 필요합니다.

이 스타일을 설치하려면 유저 스타일 관리자 확장 프로그램이 필요합니다.

이 스타일을 설치하려면 유저 스타일 관리자 확장 프로그램이 필요합니다.

(이미 유저 스타일 관리자가 설치되어 있습니다. 설치를 진행합니다!)

Advertisement:

// ==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);
})();