Con el propósito de aprender a desarrollar extensiones para Google Chrome, creé un Removedor de Diálogos de Suscripción que hace unas semanas aparecen en los sitios Web de El Financiero y La Nación. Tomó 45 minutos.
Usé estos sitios como prueba de concepto porque rápidamente recordé la aparición de estos nuevos diálogos y que se ajustaban muy bien al tutorial oficial de Google que estaba leyendo sobre extensiones para Chrome. Le comparto más adelante el código fuente para efectos de prueba.
Cómo Funciona
La extensión sólo opera bajo los que se indican en el manifiesto del código fuente. Como experimento se indicaron los sitios de La Nacion y El Financiero, pero podría ser adaptado a cualquier otro con facilidad. Cuando se terminan de cargar por completo en su navegador y se muestran los diálogos de suscripción, la extensión los ocultará manipulando el DOM.
En caso de que usted desee probar esta u otra extensión, debe tener en cuenta que lo hace bajo su propia responsabilidad y en su propio computador. Para probarla, primero debe descargar el código fuente e instalarla por su propia cuenta usando el modo Desarrollador en Google Chrome, como se muestra en la siguiente imagen.
Como parte de la prueba de concepto, la extensión también fue publicada en la Tienda de Google Chrome para verificar el proceso, pero una vez concluido fue removida a las pocas horas pues no hay intención alguna de causar perjuicio al modelo de negocio del medio. Para publicar una aplicación de su creación en la Tienda de Chrome, solo requiere de una cuenta de Google y acceder al Developer Dashboard.
Esta extensión, simplemente ajusta el aspecto visual de cada artículo una vez que todo el contenido del mismo se cargó y presentó en pantalla de forma íntegra y completa en su navegador, no tiene mucha ciencia en realidad y otros colegas han compartido incluso algunas opciones más ágiles de lograr un fin similar.
Código Fuente
Con el afán de continuar el espíritu de aprendizaje, compartí el código fuente de la extensión en un repositorio en GitHub que contiene todos los ficheros del proyecto. Cómo apreciará, el código es bastante sencillo, y es una de tantas formas de lograr algo similar en otros sitios.
Es claro que un eventual simple cambio en el DOM ocasionará que la extensión falle, pero que siempre funcione no es el objetivo, sino explicar la técnica abriendo la posibilidad de realizar un aporte abriendo un issue de mejora u observación. En el mejor de los casos puede crear un pull request.
Toda la información que se obtuvo para crear esta sencilla extensión está disponible en el sitio de Google Chrome para Desarrolladores, precisamente en la creación de scripts de contenido. Hay un Pull Request enviado por un colega que remueve el uso de Javascript, otro propone una solución inline que oculta todo.
Disclaimer
Cabe reiterar que esta extensión solamente manipula la apariencia en pantalla del contenido que se le presenta en su navegador, por tanto todas las acciones que lleva a cabo se realizan en su computador y bajo su responsabilidad al aceptar los permisos al publicarla o instalarla en la tienda en Google, así como en su propio navegador.
No hay ningún tipo de desencriptación, infiltración, interceptación, violentación de privacidad, re-edición de imágenes, cambios en el texto de la nota o contacto con otros servicios externos del todo. Esto queda evidente en el código fuente que contiene la prueba de concepto.
Este mismo efecto se puede lograr desabilitando estilos, desabilitando scripts, limpiando cookies, usando bloqueadores disponibles, presionando ESC mientras carga o ejecutando otros códigos similares en su navegador, nuevamente siempre dentro de su entorno computacional y sin instalar nada adicional. El propósito era compartir esta primer experiencia, pues la técnica no tiene mucha ciencia que digamos.
Por otro lado y por aquello de las dudas, insisto en que no tengo nada en contra del nuevo modelo de suscripción de La Nación al realizar esta prueba, aunque no me parezca el más conveniente, por lo que si ellos consideran que usted debe pagar por el contenido, entonces están en su derecho de cobrarle por ello o mejor absténgase de acceder al mismo.