Rimuove il paywall su lescienze.it senza necessità di autenticazione
// ==UserScript==
// @name Le Scienze Paywall Bypass Edicola 09/2024
// @namespace Science
// @version 1.1.3
// @description Rimuove il paywall su lescienze.it senza necessità di autenticazione
// @author Science
// @match https://www.lescienze.it/*
// @grant GM_addStyle
// @license GPL version 3 or any later version http://www.gnu.org/copyleft/gpl.html
// ==/UserScript==
(function() {
'use strict';
/**
* Rimuove elementi del paywall dal DOM
*/
const removePaywall = () => {
// Selettori di elementi paywall
const paywallSelectors = [
'.paywall-container', // Contenitore del paywall
'.paywall-message', // Messaggio del paywall
'#ph-paywall', // Banner del paywall
'#paywall-banner', // Banner alternativo
'.paywall-overlay', // Overlay che copre l'articolo
'.premium-blocked' // Contenuto bloccato per utenti non premium
];
// Rimozione degli elementi del paywall
paywallSelectors.forEach(selector => {
const paywallElement = document.querySelector(selector);
if (paywallElement) {
paywallElement.remove();
console.log('Elemento paywall rimosso:', selector);
}
});
// Ripristina visibilità del contenuto nascosto
const premiumContent = document.querySelectorAll('.premium, .premium-article');
premiumContent.forEach(content => {
content.style.display = 'block';
content.style.visibility = 'visible';
content.style.opacity = '1';
content.style.maxHeight = 'none';
content.style.overflow = 'visible';
});
console.log('Contenuto premium sbloccato.');
};
/**
* Osserva modifiche nel DOM e rimuove paywall caricati dinamicamente
*/
const observeDOMChanges = () => {
const observer = new MutationObserver(() => {
removePaywall(); // Rimuove eventuali nuovi paywall
});
observer.observe(document.body, { childList: true, subtree: true });
};
// Funzione principale
const main = () => {
removePaywall(); // Rimuove il paywall al caricamento della pagina
observeDOMChanges(); // Osserva eventuali modifiche dinamiche nel DOM
};
// Esegui la funzione principale quando la pagina è completamente caricata
window.addEventListener('load', main);
// Aggiungi uno stile per rendere sempre visibile il contenuto premium
GM_addStyle(`
.premium, .premium-article {
display: block !important;
visibility: visible !important;
opacity: 1 !important;
max-height: none !important;
overflow: visible !important;
}
`);
})();