Script para descargar todas las imágenes de un hilo

Clorhídrico

Madmaxista
Desde
1 Ene 2018
Mensajes
3.794
Reputación
13.135
Buenas. Os dejo un obsequio. Espero que sea útil. Cuando tenga un rato le añadiré que pueda descargar imágenes alojadas fuera.

Screenshot_20211122_123445.png
Tamper/Violent Monkey

JavaScript:
// ==UserScript==
// @name        BURBUIMAGE
// @namespace   burbuimage
// @match       *://*.burbuja.info/inmobiliaria/threads/*
// @version     0.8
// @icon        https://www.burbuja.info/inmobiliaria/data/avatars/m/132/132035.jpg
// @downloadURL https://pastebin.com/raw/Dj9Pa10U
// @updateURL   https://pastebin.com/raw/Dj9Pa10U
// @grant       GM_download
// @grant       GM_notification
// @grant       GM_setValue
// @grant       GM_getValue
// @run-at      document-idle
// @require     http://ajax.googleapis.com/ajax/libs/jquery/1.8.3/jquery.min.js
// @author      clorhídrico
// @description DESCARGA LAS IMÁGENES DE LA PÁGINA ACTUAL
// ==/UserScript==
/*
██████╗ ██╗   ██╗██████╗ ██████╗ ██╗   ██╗██╗███╗   ███╗ █████╗  ██████╗ ███████╗
██╔══██╗██║   ██║██╔══██╗██╔══██╗██║   ██║██║████╗ ████║██╔══██╗██╔════╝ ██╔════╝
██████╔╝██║   ██║██████╔╝██████╔╝██║   ██║██║██╔████╔██║███████║██║  ███╗█████╗  
██╔══██╗██║   ██║██╔══██╗██╔══██╗██║   ██║██║██║╚██╔╝██║██╔══██║██║   ██║██╔══╝  
██████╔╝╚██████╔╝██║  ██║██████╔╝╚██████╔╝██║██║ ╚═╝ ██║██║  ██║╚██████╔╝███████╗
╚═════╝  ╚═════╝ ╚═╝  ╚═╝╚═════╝  ╚═════╝ ╚═╝╚═╝     ╚═╝╚═╝  ╚═╝ ╚═════╝ ╚══════╝
*/

/*
 *   A TENER EN CUENTA:
 * 
 * - ES MUY RECOMENDABLE tener activado en el navegador que las descargas se guarden siempre en alguna carpeta o tendremos que aceptar una a una la descarga de cada imagen.
 * - SÓLO descarga las imágenes subidas al FORO (no imgur, no instagram, etc PENDIENTE SI TENGO TIEMPO).
 * - Las urls de las imágenes descargadas se guardan para evitar volver a descargarlas y gastar espacio a lo simple (si hace falta repetir descargar, borrar historial de las variables de *Monkey)
 * - SIN NINGUNA GARANTÍA.
 * 
 */
(function() {
    'use strict'

    var conta_images = $('.bbImage').length;

    if (conta_images > 0) {

        var HISTORY = GM_getValue('history');

        if (!HISTORY) {
            HISTORY = "";
        }

        const regexp = /\/threads\/([^\/]+(?:\/page\-[0-9]+)?)/;

        var matches = window.location.href.match(regexp);

        var PREFIX = 'BURBUIMAGE_' + matches[1] + '_';

        var BUTTON = document.createElement('a');
        BUTTON.className = 'button--link button';
        document.getElementsByClassName("buttonGroup")[0].appendChild(BUTTON);
        reset_button();

        function todas_para_mi() {

            BUTTON.onclick = null;

            BUTTON.innerHTML = '<span style="font-weight:bold" class="button-text">DESCARGANDO IMÁGENES...</span>';

            $('.bbImage').each(function(index) {

                if (!$(this).prop('src').includes('youtube.com/') && !HISTORY.includes($(this).prop('src'))) {

                    HISTORY = HISTORY + "|" + $(this).prop('src');

                    var arg = {
                        url: $(this).prop('src'),
                        name: PREFIX + $(this).prop('src'),

                        saveAs: false,

                        onload: function() {
                            if (--conta_images == 0) {
                                ya_ta();
                            }
                        },

                        onerror: function() {
                            if (--conta_images == 0) {
                                ya_ta();
                            }
                        }
                    };

                    GM_download(arg);

                    console.log(PREFIX + $(this).prop('src'));

                } else if (conta_images == 0 || --conta_images == 0) {
                    ya_ta();
                }
            });

        }

        function ya_ta() {
            GM_notification('TODAS LAS IMÁGENES DESCARGADAS', 'BURBUIMAGE', 'https://www.burbuja.info/inmobiliaria/data/avatars/m/132/132035.jpg');
            GM_setValue('history', HISTORY);
            reset_button();
        }

        function reset_button() {
            BUTTON.onclick = todas_para_mi;
            BUTTON.innerHTML = '<span style="font-weight:bold" class="button-text">DESCARGAR TODAS LAS IMÁGENES</span>';
        }
    }

})();
 
Última edición:

Gotthard

Unser Giftzwerg
Desde
4 Ene 2021
Mensajes
15.206
Reputación
60.283
Lugar
ɘupɒɿɿɒq
Si, es por el tema de olvido digital. Cuando te piras de un sitio, para borrar lo que has dejado. No creo que a querido líder le haga gracia, pero estaria bien. Puedes borrar un comentario antiguo entrando en tu perfil >> Tu contenido e ir borrando uno a uno, lo que si tienes 100 mensajes es factible, pero si tienes 4000 es una locura.

He pensado en un macro de windows, pero no lo he conseguido
 

Clorhídrico

Madmaxista
Desde
1 Ene 2018
Mensajes
3.794
Reputación
13.135
Si, es por el tema de olvido digital. Cuando te piras de un sitio, para borrar lo que has dejado. No creo que a querido líder le haga gracia, pero estaria bien. Puedes borrar un comentario antiguo entrando en tu perfil >> Tu contenido e ir borrando uno a uno, lo que si tienes 100 mensajes es factible, pero si tienes 4000 es una locura.

He pensado en un macro de windows, pero no lo he conseguido
Por poder se puede, pero me parece un poco "delicado" ese script. Si te equivocas puedes liarla bien.

Se me ocurre algo que en vez de borrar lo que haga es como los ransomware y edite y cifre cada comentario tuyo de tal forma que si quieres dar marcha atrás se pueda ya que el contenido sigue ahí.

Salu2 ;)
 

Gotthard

Unser Giftzwerg
Desde
4 Ene 2021
Mensajes
15.206
Reputación
60.283
Lugar
ɘupɒɿɿɒq
Por poder se puede, pero me parece un poco "delicado" ese script. Si te equivocas puedes liarla bien.

Se me ocurre algo que en vez de borrar lo que haga es como los ransomware y edite y cifre cada comentario tuyo de tal forma que si quieres dar marcha atrás se pueda ya que el contenido sigue ahí.

Salu2 ;)
Pues la idea del cifrado es cohonuda... de esa forma en caso de que quieras retomar la actividad, con descifrar otra vez con un script muy muy similar, solucionado.
 

SPQR

Lo van a pagar los borricos.
Desde
3 Abr 2011
Mensajes
13.919
Reputación
33.210
Lugar
Far Southeast
Si, es por el tema de olvido digital. Cuando te piras de un sitio, para borrar lo que has dejado. No creo que a querido líder le haga gracia, pero estaria bien. Puedes borrar un comentario antiguo entrando en tu perfil >> Tu contenido e ir borrando uno a uno, lo que si tienes 100 mensajes es factible, pero si tienes 4000 es una locura.

He pensado en un macro de windows, pero no lo he conseguido
Se podria hacer con el greasemonkey, que guardaba acciones repetitivas. Comentario-->eliminar-->confirmar. Y así miles de veces.