this post was submitted on 24 Aug 2023
325 points (99.1% liked)

Firefox

17870 readers
6 users here now

A place to discuss the news and latest developments on the open-source browser Firefox

founded 4 years ago
MODERATORS
you are viewing a single comment's thread
view the rest of the comments
[–] TheAnonymouseJoker@lemmy.ml 0 points 1 year ago (1 children)

Bazzacuda is truly unique in what it does, and its very useful when you want to open dozens of images from a webpage or site, that you cannot conventionally batch download, since they may have cookies or expire tokens for each image URL. Many such sites exist, where you can use this. Keep it in your toolbox ;)

[–] Crul@lemm.ee 4 points 1 year ago (1 children)

One question... do you know if it works with videos?

I don't see anything on the addon page, but it seems weird because the use case is very similar.

[–] TheAnonymouseJoker@lemmy.ml 2 points 1 year ago (1 children)

Unfortunately, no. Your only options are video grabber extensions or software.

Software is IDM on Windows and XDM cross platform. Both work on just about any video, but for rare videos for which they will not work... extensions are VideoDownload Helper and Ant Video Downloader (both need their native plugin software on system). The software is easier, extensions are a secondary option, and if these do not work, nothing will, other than screen recording.

[–] Crul@lemm.ee 2 points 1 year ago (1 children)

I think I don't undestand it properly.

What I meant is: if I have some tabs with one video URL* in each of them, it seems trivial to just automate a "click download" for each one of them.

* I mean plain MP4 normal URLs with no tricks, like imgur MP4 URLS:

[–] TheAnonymouseJoker@lemmy.ml -1 points 1 year ago (1 children)

You have only one option, then. Video grabber utility in IDM/XDM. I think you can feed multiple links for batch download in them, and they auto fetch video files from website to download without browser. IDM on Windows is a lot more robust, if you do use Windows. Get it from Lrepacks, its safe.

[–] Crul@lemm.ee 1 points 1 year ago (1 children)

I think there is some misunderstanding... there are a lot of ways of downloading a list of URLs. For videos I use yt-dlp.

I didn't know about IDM/IDX, I asume they are Internet Download Manager and Xtreme Download Manager, right? From what I see those are independent programs and not Firefox add-ons (correct me if I'm wrong).

What I find weird is that, what Bazzacuda can achieve if I have multiple tabs with i.imgur.com/.../...jpg URLs does not work if I change the jpg extensions with mp4. But I'm probably missing something (or not explaining myself properly).

Thanks!

[–] TheAnonymouseJoker@lemmy.ml -3 points 1 year ago (1 children)

I know what you are saying, exactly same way videos instead of tabs. There is nothing like Bazzacuda for it. Its a very unique tool. You either use yt-dlp or IDM/XDM for batch videos. (Yes you figured correct names.) Gallery-dl exists for image galleries btw, on that note, exactly like yt-dlp.

Bazzacuda is just built different. Its the reason why I shared it, since that Image Max URL you told about is intriguing. It makes the job easier than reverse searching image with Yandex (which is the best method I use).

[–] Crul@lemm.ee 1 points 1 year ago* (last edited 1 year ago) (1 children)

Got it, thanks for the patience :)

It makes the job easier than reverse searching image with Yandex (which is the best method I use).

Regarding reverse image search, this is the bookmarklet I use to lauch 5 different searches at once. On firefox you can set a keyword so I just type rev on the navbar on a tab with an image.

If the page has more than 1 images, it tries to print a number on each one so you can specify which one you want to search... but that feature doesn't work very well. Removing that, the script would be much more simpler.

pretty-print reverse image searches bookmarklet

(function() {
    var url;
    var args = '%s';
    var imgs = document.getElementsByTagName("img");
    var imgIdx = undefined;
    if (imgs.length == 0) return;
    if (imgs.length > 1) {
        if (args.length > 1) imgIdx = parseInt(args[1]);
        if (imgIdx === undefined || isNaN(imgIdx) || imgIdx < 1 || imgIdx > imgs.length) {
            numberImgs();
            imgIdx = parseInt(prompt(`There are ${imgs.length} images, select index:`, 1));
        }
        if (isNaN(imgIdx) || imgIdx < 1 || imgIdx > imgs.length) return;
        url = imgs[imgIdx - 1].src;
    } else {
        url = imgs[0].src;
    }
    if (!url) return;
    url = encodeURIComponent(url);
    window.open("https://saucenao.com/search.php?url=" + url);
    window.open("https://lens.google.com/uploadbyurl?url=" + url);
    window.open("https://www.bing.com/images/searchbyimage?cbir=sbi&imgurl=" + url);
    window.open("https://www.tineye.com/search?url=" + url);
    window.open("https://yandex.com/images/search?rpt=imageview&url=" + url);

    function numberImgs() {
        var imgs = document.getElementsByTagName("img");
        for (var img = 0; img < imgs.length; img++) {
            var parent = imgs[img].parentElement;
            if (!parent) continue;
            var numberDiv = document.createElement("div");
            numberDiv.innerHTML = 1 + img;
            numberDiv.className = "tmpImgNumberDiv";
            numberDiv.style.position = "absolute";
            numberDiv.style.padding = "2px 9px 2px 6px";
            numberDiv.style.background = "#f00";
            numberDiv.style.color = "#fff";
            numberDiv.style.zIndex = "9999";
            numberDiv.style.lineHeight = "normal";
            parent.prepend(numberDiv);
        }
        setTimeout(function() {
            var imgNumbers = document.getElementsByClassName("tmpImgNumberDiv");
            var idx = imgNumbers.length - 1;
            while (idx >= 0) {
                imgNumbers[idx].remove();
                idx--;
            }
        }, 5000);
    }
})();

 

One-liner:

javascript:(function() {var url;var args = '%s';var imgs = document.getElementsByTagName("img");var imgIdx = undefined;if (imgs.length == 0) return;if (imgs.length > 1) {if (args.length > 1) imgIdx = parseInt(args[1]);if (imgIdx === undefined || isNaN(imgIdx) || imgIdx < 1 || imgIdx > imgs.length) {numberImgs();imgIdx = parseInt(prompt(`There are ${imgs.length} images, select index:`, 1));}if (isNaN(imgIdx) || imgIdx < 1 || imgIdx > imgs.length) return;url = imgs[imgIdx - 1].src;} else {url = imgs[0].src;}if (!url) return;url = encodeURIComponent(url);window.open("https://saucenao.com/search.php?url=" + url);window.open("https://lens.google.com/uploadbyurl?url=" + url);window.open("https://www.bing.com/images/searchbyimage?cbir=sbi&imgurl=" + url);window.open("https://www.tineye.com/search?url=" + url);window.open("https://yandex.com/images/search?rpt=imageview&url=" + url);function numberImgs() {var imgs = document.getElementsByTagName("img");for (var img = 0; img < imgs.length; img++) {var parent = imgs[img].parentElement;if (!parent) continue;var numberDiv = document.createElement("div");numberDiv.innerHTML = 1 + img;numberDiv.className = "tmpImgNumberDiv";numberDiv.style.position = "absolute";numberDiv.style.padding = "2px 9px 2px 6px";numberDiv.style.background = "#f00";numberDiv.style.color = "#fff";numberDiv.style.zIndex = "9999";numberDiv.style.lineHeight = "normal";parent.prepend(numberDiv);}setTimeout(function() {var imgNumbers = document.getElementsByClassName("tmpImgNumberDiv");var idx = imgNumbers.length - 1;while (idx >= 0) {imgNumbers[idx].remove();idx--;}}, 5000);}})();

The 5 searches it launches are (replacing XXXX with the image URL):

  • Google: https://lens.google.com/uploadbyurl?url=XXXX
  • Bing: https://www.bing.com/images/searchbyimage?cbir=sbi&imgurl=XXXX
  • TinEye: https://www.tineye.com/search?url=XXXX
  • Yandex: https://yandex.com/images/search?rpt=imageview&url=XXXX
  • SauceNAO: https://saucenao.com/search.php?url=XXXX
[–] TheAnonymouseJoker@lemmy.ml -2 points 1 year ago (1 children)

An extension that does this with over 30 image search engines is Search By Image, a Mozilla recommended extension. Check the developer's GitHub (dessant). On the one off occasion, I also use ImgOps.com, but almost always, I never need to go beyond using Yandex. They are the only search engine that, unlike Google and Bing, did not cripple theirs. Although I am starting to see them putting up captchas more frequently (less than Cloudflare or Google) with any searches that might be related to adult or piracy content.

[–] Crul@lemm.ee 1 points 1 year ago* (last edited 1 year ago)

An extension that does this with over 30 image search engines is Search By Image, a Mozilla recommended extension

I don't know how I missed that until now, thanks!! I will try it right now.

I also use ImgOps.com

Yeah, that's what I was using for a while and what motivated me to write the bookmarklet to avoid going through it every time.

Regarding the different searches, I found that they cover very different needs:

  • TinEye: usually the best when you want (almost) exact matches.
  • Yandex: probably the stronger as a general search
  • Google: in my experience, the best to "understand" the image and identify the object / subject even if there are no real matches for that image
  • Bing: you sometimes get lucky with it when the others fail
  • SauceNAO: the most convenient to find the original pages for DeviantArt, ArtStation and Twitter images.