// ==UserScript== // @name Amazon Video AutoSkip ADs // @name:de Amazon Video Automatisch Werbung überspringen // @namespace https://greasyfork.org/users/928242 // @version 0.3 // @description Auto Skip Ads by watching Amazon Prime Video // @description:de Überspringt automatisch die Werbung beim ansehen von Videos auf Amazon Prime. // @author Kamikaze (https://github.com/Kamiikaze) // @match https://www.amazon.de/gp/video/detail/* // @icon https://www.google.com/s2/favicons?sz=64&domain=amazon.de // @grant none // @license MIT // @downloadURL none // ==/UserScript== // Change to the text matching your language for the skip button const skipAdButtonText = 'Überspringen' // How often in X seconds to scan for ADs const scanInterval = 3 // Start scanning again in X minutes after AD has been skipped const delayScanInterval = 5 /* ! ! ! ! ! ! ! ! Dont change below! ! ! ! ! ! ! ! ! */ let checkForAds = '' let skipAdEl = '' const clp = '[Amazon AutoSkip Script] ' startAdScan() // Main Function Scanning for ADs function skipAds() { console.log(clp + "Scanning for running Ads..") skipAdEl = document.querySelector("div.atvwebplayersdk-infobar-container > div > div:nth-child(3) > div:nth-child(2)") console.log(clp + "Skip-Button ElementId:", skipAdEl) console.log(clp + "Skip-Button Text:", skipAdEl.innerText) if (!skipAdEl) return if (skipAdEl.innerText == skipAdButtonText) { console.log(clp + "Found playing Ads. Skipping..") skipAdEl.click() restartAdScan() return } console.log(clp + "Error in skipAds()") restartAdScan() } // Starting AdScan Interval function startAdScan() { checkForAds = setInterval( () => { skipAds() }, scanInterval * 1000 ) } // Clearing Interval, Vars and delaying restart of scan function restartAdScan() { clearInterval(checkForAds) checkForAds = '' skipAdEl = '' console.log(clp + `Restarting AdScan in ${delayScanInterval} Minutes.`) setTimeout(() => { startAdScan() }, delayScanInterval * 60 * 1000) }