Jump to content

Refresh people images


Doonga

Recommended Posts

Doonga

I reinstalled my server recently and am missing a lot of people images. Is there a way to kick off a full refresh? If I click on a person and choose refresh I get the image. Running the scheduled task doesn't help.

Link to comment
Share on other sites

Doonga

I figured it out. I just renamed the People folder and let it grab all of them again. I did notice a lot of HTTP 429s which is a "Too Many Requests" error. Probably should have some throttling on that task so that it doesn't bombard the webserver with requests.

 

edit: Yea it appears that themoviedb has a 40 requests/10 second rule. This was trying to go much faster than that.

 

It looks like the issue is that once the request for a person gets an error, it isn't retried in subsequent runs of the task. So I'm missing hundreds of pictures and really have no way to get them without going to each missing one and doing a refresh on it.

Edited by Doonga
Link to comment
Share on other sites

kelpo

Hi there,

 

when i start the "refresh people" scheduled task the log file gets spammed with 429 http errors from thetvdb.com.

i assume its needed to limit the api request rate on my end, does such a option already exist ?

Link to comment
Share on other sites

Interesting, haven't seen that before. It might be something new. We'll have to adjust to that. Thanks.

Link to comment
Share on other sites

Doonga

Sorry to bump my own post, but this is definitely an issue. The people image task is sending requests to themoviedb.com way too fast. They only allow 40 requests every 10 seconds. What happens is that the calls start returning a "429 too many requests" error. When this happens an empty folder is created in Metadata/People. Once that happens, the server won't try to download the image anymore, leaving you with missing images. If you delete all of the empty folders then restart the server it will try again but of course it goes too fast again so you get a few more images but still a bunch of broken ones.

 

Either the people image task needs to be throttled or empty images need to be picked up on each run, or probably both. It's probably not such a good idea to hammer their service with so many requests.

 

I'm working around this in the meantime by putting in a scheduled task that deletes all the empty folders in People before the task runs. Eventually it'll catch up.

  • Like 1
Link to comment
Share on other sites

badaas

Ahh, this is why I have actors without images or data, even famous ones, which I thought odd.

I can identify manually and it will download data. But not ideal.

  • Like 1
Link to comment
Share on other sites

TX_Theater

Same thing is happening to me, unable to download actor images.  I run the "refresh people", it takes forever, and no images are downloaded.  Is there a workaround or an estimated get well date?

 

Thanks!

Link to comment
Share on other sites

TX_Theater

Sorry to bump my own post, but this is definitely an issue. The people image task is sending requests to themoviedb.com way too fast. They only allow 40 requests every 10 seconds. What happens is that the calls start returning a "429 too many requests" error. When this happens an empty folder is created in Metadata/People. Once that happens, the server won't try to download the image anymore, leaving you with missing images. If you delete all of the empty folders then restart the server it will try again but of course it goes too fast again so you get a few more images but still a bunch of broken ones.

 

Either the people image task needs to be throttled or empty images need to be picked up on each run, or probably both. It's probably not such a good idea to hammer their service with so many requests.

 

I'm working around this in the meantime by putting in a scheduled task that deletes all the empty folders in People before the task runs. Eventually it'll catch up.

 How did you create the "delete empty folder" task??

Link to comment
Share on other sites

Happy2Play

I occasionally run "RED" (Remove Empty Directories).  Have one server it removed 4200 directories and another it removed 25,000.  They always come back since not every actor, director, cast member has info to be collected.

 

http://www.jonasjohn.de/red.htm

  • Like 2
Link to comment
Share on other sites

TX_Theater

I occasionally run "RED" (Remove Empty Directories).  Have one server it removed 4200 directories and another it removed 25,000.  They always come back since not every actor, director, cast member has info to be collected.

 

http://www.jonasjohn.de/red.htm

Great, thanks!!!

  • Like 1
Link to comment
Share on other sites

  • 1 month later...
puithove

I'd still like to find a way to tell Emby to pull any missing people images, just like we can do with other images.  I'm still in a state where a lot of people images are missing.  Doing individual "refresh" on single people does pull them in, but there's far too many to do that manually.

 

Shouldn't this already be something automatic - to continue to periodically search for missing images?  Search for any and all missing metadata for that matter - in case something fails the first time it's requested (which is what seems to have happened to my people images).

Link to comment
Share on other sites

  • 1 month later...
Happy2Play

Still seems to be an issue....any chance this has been addressed??

What is the issue?  I know something changed because I am no longer getting empty folders, where before I would get about 5000 every time I ran RED.

Edited by Happy2Play
Link to comment
Share on other sites

TX_Theater

What is the issue?  I know something changed because I am no longer getting empty folders, where before I would get about 5000 every time I ran RED.

I'm still getting thousands of empty folders....viewing the MediaBrowser-Server log file it's still the "The remote server returned an error: (429)." problem when getting people information from TMDB.  Here is the full error: (there at thousands of these, this is just the error for one particular person being lookied up)

 

2015-09-07 18:50:29.7564 Info - App: HttpClientManager GET: http://api.themoviedb.org/3/search/person?api_key=f6bd687ffa63cd282b6ff2c6877f2669&query=Dennis+McCarthy

2015-09-07 18:50:29.8144 Error - App: Error getting response from http://api.themoviedb.org/3/search/person?api_key=f6bd687ffa63cd282b6ff2c6877f2669&query=Dennis+McCarthy

    *** Error Report ***

    Version: 3.0.5724.3

    Command line: C:\Users\Mayfields\AppData\Roaming\MediaBrowser-Server\System\MediaBrowser.ServerApplication.exe

    Operating system: Microsoft Windows NT 6.2.9200.0

    Processor count: 4

    64-Bit OS: True

    64-Bit Process: False

    Program data path: C:\Users\Mayfields\AppData\Roaming\MediaBrowser-Server

    Application Path: C:\Users\Mayfields\AppData\Roaming\MediaBrowser-Server\System\MediaBrowser.ServerApplication.exe

    The remote server returned an error: (429).

    System.Net.WebException

       at System.Net.HttpWebRequest.EndGetResponse(IAsyncResult asyncResult)

       at System.Threading.Tasks.TaskFactory`1.FromAsyncCoreLogic(IAsyncResult iar, Func`2 endFunction, Action`1 endAction, Task`1 promise, Boolean requiresSynchronization)

    

2015-09-07 18:50:29.8144 Error - App: Error in TheMovieDb

    *** Error Report ***

    Version: 3.0.5724.3

    Command line: C:\Users\Mayfields\AppData\Roaming\MediaBrowser-Server\System\MediaBrowser.ServerApplication.exe

    Operating system: Microsoft Windows NT 6.2.9200.0

    Processor count: 4

    64-Bit OS: True

    64-Bit Process: False

    Program data path: C:\Users\Mayfields\AppData\Roaming\MediaBrowser-Server

    Application Path: C:\Users\Mayfields\AppData\Roaming\MediaBrowser-Server\System\MediaBrowser.ServerApplication.exe

    The remote server returned an error: (429).

    MediaBrowser.Model.Net.HttpException

       at MediaBrowser.Common.Implementations.HttpClientManager.HttpClientManager.<SendAsyncInternal>d__1e.MoveNext()

    --- End of stack trace from previous location where exception was thrown ---

       at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task)

       at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)

       at MediaBrowser.Common.Implementations.HttpClientManager.HttpClientManager.<SendAsync>d__7.MoveNext()

    --- End of stack trace from previous location where exception was thrown ---

       at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task)

       at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)

       at MediaBrowser.Common.Implementations.HttpClientManager.HttpClientManager.<Get>d__2.MoveNext()

    --- End of stack trace from previous location where exception was thrown ---

       at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task)

       at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)

       at System.Runtime.CompilerServices.TaskAwaiter.ValidateEnd(Task task)

       at MediaBrowser.Providers.People.MovieDbPersonProvider.<GetSearchResults>d__6.MoveNext()

    --- End of stack trace from previous location where exception was thrown ---

       at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task)

       at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)

       at MediaBrowser.Providers.People.MovieDbPersonProvider.<GetTmdbId>d__20.MoveNext()

    --- End of stack trace from previous location where exception was thrown ---

       at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task)

       at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)

       at MediaBrowser.Providers.People.MovieDbPersonProvider.<GetMetadata>d__14.MoveNext()

    --- End of stack trace from previous location where exception was thrown ---

       at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task)

       at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)

       at MediaBrowser.Providers.Manager.MetadataService`2.<ExecuteRemoteProviders>d__55.MoveNext()

    InnerException: System.Net.WebException

    The remote server returned an error: (429).

       at System.Net.HttpWebRequest.EndGetResponse(IAsyncResult asyncResult)

       at System.Threading.Tasks.TaskFactory`1.FromAsyncCoreLogic(IAsyncResult iar, Func`2 endFunction, Action`1 endAction, Task`1 promise, Boolean requiresSynchronization)

Link to comment
Share on other sites

  • 5 months later...
Alastair Cairns

Hi all

 

I noticed this recently too - but think I have a fix (is working for me at least).

In the settings under 'Metadata' and 'Advanced' I ticked the 'Other' box along with the defaults of actors and directors.

 

From then on all new movies I added get the cast pics OK.

 

 

To get the previous library entries sorted I did a bit of trial & error & found that if I removed the movie's folder, and cleared its meta data from within it, then did a library scan without it there. When I put it back, the cast etc got found just as if it were a new movie :-)

 

I guess the servers must flag some actors with a different tag to 'actors'  (I dunno - starring or supported by ... but the 'Other' tick seems to catch most.

 

Hope this is useful to to someone - I appreciate the thread is a little old now.

Cheers

Al

  • Like 1
Link to comment
Share on other sites

puithove

 

Hope this is useful to to someone - I appreciate the thread is a little old now.

 

 

I like that your first post here is one meant to help :)  Welcome.

Link to comment
Share on other sites

Alastair Cairns

Thanks for the welcome :-)

I'm loving Emby - it's inspired me to rip the untidy mass of DVDs to something manageable.

 

Great system.

Cheers

Al

Link to comment
Share on other sites

  • 5 months later...

Just fyi for the next release and in the current beta, behavior is improved to help with this.

 

When scanning in new titles, even if you have existing metadata we'll still go out to the internet to try and pull in people information. 

 

Also, when opening individual person detail screens, there will be some on demand refreshing to attempt to fill in metadata for people that don't have any. 

  • Like 1
Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...