Samplefocus Downloader

Replaces the original download button with one that directly downloads the mp3 file using a server-side proxy. Adds download notification and customizable filename. Compatible with Chromium, Firefox, and WebKit.

ของเมื่อวันที่ 06-03-2025 ดู เวอร์ชันล่าสุด

// ==UserScript==
// @name        Samplefocus Downloader
// @name:fr     Téléchargeur Samplefocus
// @name:de     Samplefocus-Downloader
// @namespace   http://tampermonkey.net/
// @version     2.0
// @description Replaces the original download button with one that directly downloads the mp3 file using a server-side proxy. Adds download notification and customizable filename. Compatible with Chromium, Firefox, and WebKit.
// @description:fr  Remplace le bouton de téléchargement d'origine par un bouton qui télécharge directement le fichier MP3 via un proxy serveur. Ajoute une notification de téléchargement et un nom de fichier personnalisable.
// @description:de Ersetzt die ursprüngliche Download-Schaltfläche durch eine Schaltfläche, die die MP3-Datei über einen Proxy-Server direkt herunterlädt. Fügt eine Download-Benachrichtigung und einen anpassbaren Dateinamen hinzu.
// @author      ToxicBiohazard
// @match       *://*.samplefocus.com/*
// @grant       none
// @license MIT
// ==/UserScript==

(function() {
  'use strict';

  console.log('Samplefocus Downloader script started.');

  // Check if the script has already been executed
  if (document.getElementById('samplefocus-downloader-script')) {
    console.log('Script already executed. Exiting.');
    return;
  }

  // Add an element to mark the script execution
  const scriptMarker = document.createElement('div');
  scriptMarker.id = 'samplefocus-downloader-script';
  document.body.appendChild(scriptMarker);

  const originalLink = document.querySelector('.download-link');

  if (!originalLink) {
    console.warn('Original download link not found.');
    return;
  }

  const audioElement = document.querySelector('audio');

  if (!audioElement || !audioElement.src) {
    console.error('No audio element found or no source loaded.');
    return;
  }

  const audioSrc = audioElement.src;
  console.log('Audio source:', audioSrc);

  const downloadSample = () => {
    const fileName = prompt('Enter the filename for the downloaded audio:', 'extracted-audio.mp3');
    if (fileName) {
      const link = document.createElement('a');
      link.href = `http://localhost:3000/download?url=${encodeURIComponent(audioSrc)}`; // Pass the audio URL as a query parameter
      link.download = fileName;
      document.body.appendChild(link);
      link.click();
      document.body.removeChild(link);
      console.log('Download initiated.');
      alert('Download started!');
    }
  };

  const downloadButton = document.createElement('button');
  downloadButton.classList.add('btn-large', 'waves-effect', 'waves-light', 'samplefocus-download-btn');
  downloadButton.textContent = 'Download Sample';
  downloadButton.addEventListener('click', downloadSample);

  // Add styles for the button
  const style = document.createElement('style');
  style.textContent = `
    .samplefocus-download-btn {
      background-color: #4CAF50;
      color: white;
      padding: 15px 32px;
      text-align: center;
      font-size: 16px;
      margin: 4px 2px;
      cursor: pointer;
      border: none;
      border-radius: 4px;
    }
    .samplefocus-download-btn:hover {
      background-color: #45a049;
    }
  `;
  document.head.appendChild(style);

  originalLink.parentNode.replaceChild(downloadButton, originalLink);
  console.log('Download button added.');
})();
长期地址
遇到问题?请前往 GitHub 提 Issues,或加Q群1031348184

赞助商

Fishcpy

广告

Rainyun

一年攒够 12 元

云驰互联

云驰互联