Bionus / imgbrd-grabber

Very customizable imageboard/booru downloader with powerful filenaming features.
https://www.bionus.org/imgbrd-grabber/
Apache License 2.0
2.56k stars 219 forks source link

Segregation to folders while downloading a batch? #1009

Closed maslos closed 7 years ago

maslos commented 7 years ago

Sorry for noob question. Lets say i have a batch of some images and i want a image with tag "a" go to folder named "a" same for image with tag "b" go to folder named "b". Is this possible? I assume it is withusing correct condiitionals in filenames but how do you set multiple conditions for one batch? Thank you in advance.

Bionus commented 7 years ago

You could use filename conditionals (<> stuff), possibly mixed with custom tokens if you have multiple tags. Or even more simply use conditional filenames if it works for your case.

With filename conditionals: <"a"a/><"b"b/>%md5%.%ext%

With conditional filenames:

    • Condition: a
    • Filename: a/%md5%.%ext%
    • Condition: b
    • Filename: b/%md5%.%ext%
maslos commented 7 years ago

Thanks alot, also theres an issue with tags that contain "/" (like fate/grand_order), using this tag as condition creates subfolder and output looks like this: "fate/grand_order/file.jpg"

maslos commented 7 years ago

After messing with custom tokens and conditionals i feel like theres something wrong when you are trying to give multiple conditions when using any method or mixing false/positive conditions as well and i think all conditions separated by >< are threaten as OR operator.

Whenever i try to make condition like <"tag1" !"tag2" folder/> it will download file to "folder" as long as tag1 is in tag list no matter if i want there a file that dont have tag2.

Also when using multiple <> for file name, for example: <"tag1" folder1/><"tag2" folder2/><!"tag3" folder3/> i end up with something like this: ../folder1/folder2/folder3/file, (or some random mixes),

Another issue i got is with custom tokens, if i set multiple tags for one token to be ignored but one tag was a condition to download i also end up with some random folder directories, for example: <!%token1% "tag1"/><!%token2% %token3%/> i get folder ../tag1/ with files containing stuff from token3.

I cant get conditional filenames to work at all, (maybe some more detailed manual? ^^) Anyway after messing with random options i see how powerful Grabber has become, really good work. Thanks alot.

Bionus commented 7 years ago

Sorry for the late answer, your comment totally passed under my radar! 😕

theres an issue with tags that contain "/" (like fate/grand_order), using this tag as condition creates subfolder and output looks like this: "fate/grand_order/file.jpg"

Thanks, I just pushed a fix for that that will arrive in v5.5.0.

i feel like theres something wrong when you are trying to give multiple conditions when using any method or mixing false/positive conditions as well

Whenever i try to make condition like <"tag1" !"tag2" folder/> it will download file to "folder" as long as tag1 is in tag list no matter if i want there a file that dont have tag2.

I actually don't think I have ever tested that, to be honest. I just checked and it indeed doesn't really work properly in the 5.4.x version. It will somehow only consider the first condition.

i think all conditions separated by >< are threaten as OR operator.

Also when using multiple <> for file name, for example: <"tag1" folder1/><"tag2" folder2/><!"tag3" folder3/> i end up with something like this: ../folder1/folder2/folder3/file, (or some random mixes),

They are simply all treated independently: if you have only "tag1", you will get "folder1/folder3/" for example.

I cant get conditional filenames to work at all, (maybe some more detailed manual? ^^)

It's simply one big <> condition. If the condition field is found, the filename that will be used is the one provided. Example:

image

If an image contains "tag1", it will be saved in "folder1/", if it contains "tag2", "folder2/", etc. If it contains both, it will use the first in the list (in this case, "folder1/").

Actually, what kind of filenaming scheme are you trying to achieve?

Anyway after messing with random options i see how powerful Grabber has become, really good work. Thanks alot.

Thanks! :smile:

Bionus commented 7 years ago

Ok I pushed some changes that should ensure it works properly with multiple and mixed conditions. However, I truly believe you'd be better off with conditional filenames (ass my screenshot above).

Now, given an image has an artist and the tags "tag1 tag2 tag3":

Note that if you don't want to see the condition in the result, you can prepend it with a -:

maslos commented 6 years ago

just want to say thanks for all replys and fixes ^^ and sorry for late reply aswell