Recently had a movie leave the IMDb top 250 but noticed the overlay was still present, when looking in the backup folder I realised that even the backups had the overlay so proceeded to manually change the posters in the UI. About halfway through the script ran again and reapplied the overlays to everything so I was unable to see which ones needed changing, so I've just run remove_overlays: true which I expected would leave me with around half the posters still with the overlay so I would know what needed changing but instead it's saying there's no overlays to remove π€ looking in the UI none of the movies actually have the Overlay label which I'm assuming is the issue but not sure why they don't have that label
#Unable to remove overlays
1 messages Β· Page 1 of 1 (latest)
Please complete #938455615741775902 and someone from the community or one of our <@&938443185347244033> members will respond when they're available.
Including the meta.log from the beginning is a huge help use !logs for more information.
There are ongoing issues with Overlays
We are seeing some odd behaviours with the Overlay label
I could probably manually add the label for now to at least achieve what I need
Also only seems to be affecting my movie library, overlays for TV episodes seem to be working fine
you could do a mass_poster_update
Yeah could do, though wouldn't that reset them to Plex defaults? Around half are from TPDb
I don't no, I haven't opened that can of worms π I just upload in the UI, but for some reason the ones I've added manually aren't in the UI anymore, just the version with the overlay is there
I'd like to use the asset folder in terms of using it like a backup, but I'm rarely at my pc and adding thousands of posters remotely doesn't do anything for me
You could add them as URLs to a metadata file.
Since they're coming from TPDB anyway.
That's a valid option also, though instead means copy and pasting thousands of URLs π there's also some posters where I'm just happy with the Plex default so I'd need to find the source, this is partly why I opted for just adding them in the UI and using tautulli to back everything up, though I've never actually tried restoring from tautulli so not sure how smooth it would be
Only one way to find outβ¦ restore from Tautulliβ¦ π
Have you considered https://github.com/chazlarson/Media-Scripts/blob/main/Plex/grab-all-posters.py
This will grab ALL posters that the ui has available for that movie and throws them into an organized folder structure. Youβll still need to sift through them, but maybe this is just what you needβ¦
as an example
Finally got round to trying this (and grab-current-posters.py) and I've hit a block π€¦πΌββοΈ getting error xml.etree.ElementTree.ParseError: mismatched tag: line 33, column 2 for all posters and Segmentation fault (core dumped) for current posters π€
So you tried both scripts?
I presume you installed the latest versions of each and installed the latest requirements.txt?
On a windows machine or Linux?
Yeah I thought i may as well try both since the .env and requirements are the same π yep fresh download on linux
Neither of those scripts do any xml parsing, so I'm not sure why either would be throwing an XML-related error. grab-current-posters.py works fine on both OSX and Linux for me:
OS X:
% python grab-all-posters.py
connecting to https://testplex.madrigal-streams.com...
getting shows from [TV Shows]...
Grab all posters |βββββββ | βββ 2/13 [15%] in 15s (0.1/s, eta: 1:49)
Breaking Bad - 104 posters - 1
% python grab-current-posters.py
connecting to https://testplex.bingbangboing.com...
getting shows from [TV Shows]...
13 shows retrieved...
Grab current posters |ββββββββββββββββββββββββββββββββββ | βββ 11/13 [85%] in 13s (0.8/s, eta: 4s)
South Park - DOWNLOADING South Park (1997) {tvdb-75897}-2190-75897-1755-poster.dat
Linux:
β― python grab-current-posters.py
================== ATTENTION ==================
There was a problem importing the python-magic library
This typically means you haven't installed libmagic
Script will default to .jpg extension on all images
================== ATTENTION ==================
connecting to https://testplex.bingbangboing.com...
getting shows from [TV Shows]...
13 shows retrieved...
Grab current posters |ββββββββββββββββββββββββββββββββββββββββ| 13/13 [100%] in 2.0s (6.56/s)
β― python grab-all-posters.py
connecting to https://testplex.bingbangboing.com...
getting shows from [TV Shows]...
Grab all posters |ββββββββββ | βββ 3/13 [23%] in 42s (0.1/s, eta: 2:06)
Friends - 99 posters - 9
Do you have a log of either of these things happening?
If I change the URL for Plex I get something, but still errors π wondering if it's something my end though, aside from the fact the errors change depending on if I use my local IP vs domain, but I got the same mismatched tag error running bloat fix
It wouldn't surprise me that it's me, I don't manually run scripts too often, though I did follow the instructions so just my crappy PC
Seems like an issue with your plex, but without more details itβs hard to say. Not something Iβve ever seen or can reproduce.
Yeah not really sure where to start troubleshooting that, it's a pretty standard setup, nothing weird
What's the rest of this error? At least one of those scripts of mine produces a log, which might contain something useful.
The Segmentation fault (core dumped) is going to be something with the python install or the OS outside the script.
Not particularly....
2022-12-31 08:30:56,676 - root - INFO - connecting to https://plex.domain.com...```
They're both just that π€¦πΌββοΈ
OS is just plain vanilla Ubuntu, I guess there could be something screwy with python
OK, what's around that error line in the output? There should be an indication in the traceback of where the in the script that error is occurring.
Traceback (most recent call last):
File "grab-all-posters.py", line 85, in <module>
plex = PlexServer(PLEX_URL, PLEX_TOKEN)
File "/home/mikenobbs/.pyenv/versions/3.7.2/lib/python3.7/site-packages/plexapi/server.py", line 115, in __init__
data = self.query(self.key, timeout=self._timeout)
File "/home/mikenobbs/.pyenv/versions/3.7.2/lib/python3.7/site-packages/plexapi/server.py", line 757, in query
return ElementTree.fromstring(data) if data.strip() else None
File "/home/mikenobbs/.pyenv/versions/3.7.2/lib/python3.7/xml/etree/ElementTree.py", line 1315, in XML
parser.feed(text)
xml.etree.ElementTree.ParseError: not well-formed (invalid token): line 2, column 27```
It looks like the PlexAPI library is issuing a request to Plex and what it's getting back is not well-formed XML. Let me see if I can make it spit out a more sensible error.
Thanks Chaz 
Added some more output on the exception.
Ok so now all posters spots this out
Plex Error: ('not well-formed (invalid token): line 2, column 27',)```
Current posters still gives the segmentation fault
OK, so what Plex is handing back on the connection attempt is broken.
The segmentation fault isn't anything I can affect. That's upstream of this script. That is unless it's something related to Python 3.7.
My linux test machine is running 3.8 and my mac 3.10
I can switch it to 3.10 see if it'll help, I was running 3.10 initially but bumped it down
Perhaps given the Plex URL and token I could see what's coming back, but without that there's not a lot more I can extract.
Iβll be home in a bit and look over this and see if I can help
Progress, kinda, switching to 3.10 results in both scripts erroring with invalid token, segmentation fault is gone
This invalid token error?
#1057383117112999997 message
Message:
Ok so now all posters spots this out
Plex Error: ('not well-formed (invalid token): line 2, column 27',)```
Quoted By:
@urban cipher from #1057383117112999997 in Plex Meta Manager
Yep same one, just now with both scripts rather than just the one π
so its trying to hit {URL}/?X-Plex-Token={TOKEN}
you should see what happens if you try and go to that url
Well it loads π wasn't expecting that, I get an XML file
<MediaContainer size="25" allowCameraUpload="1" allowChannelAccess="1" allowMediaDeletion="1" allowSharing="1" allowSync="1" allowTuners="1" backgroundProcessing="1" certificate="1" companionProxy="1" countryCode="gbr" diagnostics="logs,databases,streaminglogs"
etc etc
Just plexdance your whole libraryβ¦ I mean it was New Years Eve, so dancing is acceptable. π
I'll just switch to Jellyfin and abandon all sanity /s
cool, so we can !close this yes?
This post has been marked as Resolved and will be closed in one hour.
If you require further assistance on this issue, you can send another message in this post to re-open it.
If you require further support that is unrelated to this post, please start a new post and do not re-open this one.
Thanks for using Plex Meta Manager.
π