tauraloke / tegownitsa

Image tag manager (based on Electron.js)
MIT License
3 stars 0 forks source link

I can't recognize picture tags with saucenao\iqdb #99

Open mehmeh1z opened 1 year ago

mehmeh1z commented 1 year ago

And speaking of bugs, I ran into the fact that the tags for the saucenao\iqdb picture are not assigned. And it would be a little-known picture, but I specifically took from the same danbooru, and tags just did not appear. (Although in the very first run of the application, i was able to pull the tags for the iqdb\saucenao picture, but after that, I never got around to doing it again.)

tauraloke commented 1 year ago

The most obvious reasons of the same behavior I have in my environment: 1) the host of a remote search engine is temporarily unavailable. 2) the host of a booru with tags is temporarily unavailable. 3) I had retrieved tags after a totally bad tag run and the picture has blocking marks (special marks are stopping repeated tag retrieving to reduce traffic; but you can free remove this blocking marks in the picture screen from the block "Pollee tag sources").

Sometimes reasons was more exotic due to bugs in the program logic. So, I looked through the logs by Ctrl+Shift+I and got some additional info.

mehmeh1z commented 1 year ago

Am I doing it wrong? For example, I add a picture => Edit =>Load tags from Saucenao for current files => Predict tags by neuronet And one time the tags themselves were added to the picture, all the other times I had to add each tag manually.

tauraloke commented 1 year ago

First, you can check Saucenao API key in Edit / Settings (Ctrl+,) / Tag sources / Saucenao. Then you can check your daily limit on the same screen. BTW IQDB do not request api key so I don't know what exactly happened.

Neuronet prediction is a separate option. If you have already downloaded the model files, you can predict tags even if booru don't know about the image. It is usually a bit long procedure the first time.

mehmeh1z commented 1 year ago

When i check saucenao daily limits: 30s: 0 (limit 4) 24h: 0 (limit 100) When i try to load tags from saucenao after add api: All files in query are already inspected for tags

tauraloke commented 1 year ago

Looks like unused free limits. So you can still use Saucenao with it. You can remove the pollee mark from the picture after the unsuccess attempt (in the picture screen) and try get tags again.

mehmeh1z commented 1 year ago

I tried it, but nothing changed. The tags were not added. I ran the picture through saucenao in the browser and there the author and the sites are quite found. Hence the tags should be added, but this does not happen.

tauraloke commented 1 year ago

Yes, it's strange. If you remove pollee marks of boorus and search engines from the picture, you can still get tags. What is output to the console in developer tools (Ctrl+Shift+I)?

mehmeh1z commented 1 year ago

I think I got it. Maybe the problem is that it's trying to take tags from pixiv (that's the topmost source links in saucenao), and it can't do it. UPD: Yes, will check on another picture, and in the console the same error because of the pixiv. UPD 2: Although, no, it seems that the problem is not only in the pixiv. I also tried to get tags through Kheina, and there is about the same error, but from yande.re изображение

mehmeh1z commented 1 year ago

That's it, now I think I've finally figured it out. Started vpn and tried again to get tags through saucenao and everything was successful. Maybe there's a way to add ISP blocking bypass/proxy to your program? I guess it probably works through chrome (considering the kind of console in your program). Maybe there is an option to install add-ons from webstore?

tauraloke commented 1 year ago

So it's case #2 (a booru is unavailable).

I guess it probably works through chrome (considering the kind of console in your program).

It's Electron framework with Chromium browser engine. Full add-ons are not supported: https://www.electronjs.org/docs/latest/api/extensions

Maybe there's a way to add ISP blocking bypass/proxy to your program?

I think it can be solved with low-level packages like https://www.npmjs.com/package/https-proxy-agent It's not a simple way ofcource.

I have added proxy options to the app roadmap.

mehmeh1z commented 1 year ago

I have added proxy options to the app roadmap.

Would it be possible to add a url field to enter automatic proxy settings(PAC)? ((like in firefox))