Extractor Button

Agrega un botón de extractor a https://www.xvideos.com/profileslist

Fra 03.06.2023. Se den seneste versjonen.

// ==UserScript==
// @license MIT
// @name         Extractor Button
// @namespace    https://www.example.com
// @version      1.0.12
// @description  Agrega un botón de extractor a https://www.xvideos.com/profileslist
// @author       Tu Nombre
// @match        https://www.xvideos.com/profileslist
// @grant        none
// ==/UserScript==

(function() {
    'use strict';

    // Wait for the page to load completely
    window.addEventListener('load', function() {
        // Inserting search form
        const searchFormHtml = `
            <div>
                <label for="keyword">Keyword:</label>
                <input type="text" id="keyword" />
                <button id="searchBtn">Search</button>
            </div>
            <div id="results"></div>
        `;
        const mainContent = document.querySelector('.main-content');
        if (mainContent) {
            mainContent.insertAdjacentHTML('afterbegin', searchFormHtml);

            // Handle search button click
            const searchBtn = document.getElementById('searchBtn');
            searchBtn.addEventListener('click', function() {
                const keyword = document.getElementById('keyword').value;
                const profiles = document.querySelectorAll('.mozaique.profileslist.thumbs-5-cols.with-about-me .thumb-block');
                const matchingUsernames = Array.from(profiles).filter(profile => profile.innerHTML.includes(keyword))
                    .map(profile => profile.querySelector('.profile-name a').textContent);
                displayResults(matchingUsernames);
            });
        }
    });

    // Display search results
    function displayResults(usernames) {
        const resultsContainer = document.getElementById('results');
        let html = '';
        if (usernames.length === 0) {
            html = 'No usernames found.';
        } else {
            html = usernames.map(username => `<p>${username}</p>`).join('');
        }
        resultsContainer.innerHTML = html;
    }
})();