Comments (8)
storageFilename
is set by a separate subtask that downloads the actual thumbnail images for performance purposes. Right now, if one of those subtasks fails it'll still proceed, but then run into this error, possibly others too, when calculating duplicates.
Two options I see to address:
- Skip invalid media items during processing, logging a warning.
- Fail the main task if a subtask fails, prompt the user to start again.
I'm leaning toward Option 2 for now, and will make that change soon. My reasoning is it's also what I'm doing when daily quota is exceeded, because if 1 failed it's likely that others may have failed as well, and the application is already optimized to skip over media items where the thumbnail has already been downloaded.
This will also benefit the project as I can get a better sense of why the subtasks are failing and not setting storageFilename
, and better address the root issue.
from google-photos-deduper.
@olsw I plan to find some time over the holidays, so by end of year.
from google-photos-deduper.
So GPT suggest this:
def _get_storage_path(self, media_item) -> str:
if "storageFilename" in media_item:
return self.image_store.get_storage_path(media_item["storageFilename"])
else:
self.logger.error(f"'storageFilename' not found in media_item: {media_item}")
return None # Or handle this case differently, perhaps raising a custom exception
It worked, and now have a screen full of duplicates :)
Going to leave this open though, as it's probably better to fix for all.
from google-photos-deduper.
Getting the same error (KeyError: 'storageFilename'
) basically. I can see that some media_items
have no storageFilename
in their dictionary. The solution suggested by @bighippo999 does not work for me since returning None
throws an error later in the game. I think that the root cause needs to be fixed where the media_items
get populated and there must be a reason why there is no storageFilename
saved for some. But I haven't figured out where that happens, nor why it does (not) happen yet... any help is appreciated...
from google-photos-deduper.
@mtalcott any indication when this will be released? Many thanks
from google-photos-deduper.
I think im having the same issues, and im hoping you can fix them soon.
Edit:
Welllll, something that worked for me was using Google Chrome instead of FireFox!
I installed the extention before starting program aswell. Hopefully this will help someone else aswell.
Thanks alot @mtalcott this app is awesome, got to remove so many dupe's
The only downside is that i need to shutdown my own Nginx container to get this running. But still awesome!!!!
from google-photos-deduper.
I've merged #32 which should help identify the root issue(s) at play here. Please pull the latest from main
branch to get the update.
A new log/celery_worker.log
will be created, I'd appreciate it if anyone is willing to share a relevant stacktrace from theirs here.
from google-photos-deduper.
Related Issues (18)
- FileNotFoundError: [Errno 2] No such file or directory: 'client_secret_ ... .apps.googleusercontent.com.json' HOT 2
- 403 forbidden possibly due to rate limit HOT 7
- Cannot build Chrome Extension HOT 2
- Error processing duplicates HOT 9
- Ability to limit the library scan by date HOT 1
- No upload into the Duplicate folder HOT 2
- Ability to delete an image that is part of a burst shot
- MaxRetryError HOT 1
- Server 404 HOT 1
- Some duplicate images not in resultlist HOT 3
- Standalone deleter HOT 1
- I encountered an error HOT 3
- Chrome extension loading error HOT 2
- Suggest improvements to README HOT 3
- Add duplicate filtering HOT 1
- Show full previews
- Allow to keep more than photo
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from google-photos-deduper.