Lexech / project-valerie

Automatically exported from code.google.com/p/project-valerie
0 stars 0 forks source link

Keine Synchronisation und kein Zugriff auf das Webinterface #642

Open GoogleCodeExporter opened 8 years ago

GoogleCodeExporter commented 8 years ago
Box: VU+ Ultimo VTI 5.0 Image

Ich bekomme kein Zugriff auf das Webinterface von PV. Folgende Fehlermeldung 
wird angezeigt:

web.Server Traceback (most recent call last):

<type 'exceptions.TypeError'>: 'NoneType' object is not iterable
/usr/lib/python2.7/site-packages/twisted/web/server.py, line 150 in process
148    try:
149      resrc = self.site.getResourceFor(self)
150      self.render(resrc)
151    except:
Self
site    
twisted.web.server.Site instance @ 0x1e09d00 <twisted.web.server.Site instance 
at 0x1e09d00>
Locals
resrc   
Plugins.Extensions.ProjectValerie.DMC_Plugins.DMC_WebInterfaceExtras.core.WebMai
nActions.Home instance @ 0x1e09698 
<Plugins.Extensions.ProjectValerie.DMC_Plugins.DMC_WebInterfaceExtras.core.WebMa
inActions.Home instance at 0x1e09698>
self    
twisted.web.server.Request instance @ 0x2130f08 <GET / HTTP/1.1>
/usr/lib/python2.7/site-packages/twisted/web/server.py, line 157 in render
155  def render(self, resrc):
156    try:
157      body = resrc.render(self)
158    except UnsupportedMethod, e:
Locals
resrc   
Plugins.Extensions.ProjectValerie.DMC_Plugins.DMC_WebInterfaceExtras.core.WebMai
nActions.Home instance @ 0x1e09698 
<Plugins.Extensions.ProjectValerie.DMC_Plugins.DMC_WebInterfaceExtras.core.WebMa
inActions.Home instance at 0x1e09698>
self    
twisted.web.server.Request instance @ 0x2130f08 <GET / HTTP/1.1>
Globals
UnsupportedMethod   <class 'twisted.web.server.UnsupportedMethod'>
/usr/lib/python2.7/site-packages/twisted/web/resource.py, line 190 in render
188      from twisted.web.server import UnsupportedMethod
189      raise UnsupportedMethod(getattr(self, 'allowedMethods', ()))
190    return m(request)
191
Locals
m   <bound method Home.render_GET of 
<Plugins.Extensions.ProjectValerie.DMC_Plugins.DMC_WebInterfaceExtras.core.WebMa
inActions.Home instance at 0x1e09698>>
self    
Plugins.Extensions.ProjectValerie.DMC_Plugins.DMC_WebInterfaceExtras.core.WebMai
nActions.Home instance @ 0x1e09698 
<Plugins.Extensions.ProjectValerie.DMC_Plugins.DMC_WebInterfaceExtras.core.WebMa
inActions.Home instance at 0x1e09698>
request 
twisted.web.server.Request instance @ 0x2130f08 <GET / HTTP/1.1>
/usr/lib/enigma2/python/Plugins/Extensions/ProjectValerie/DMC_Plugins/DMC_WebInt
erfaceExtras/core/WebMainActions.py, line 32 in render_GET
30
31        def render_GET(self, request):
32                return self.action(request)
33
Locals
self    
Plugins.Extensions.ProjectValerie.DMC_Plugins.DMC_WebInterfaceExtras.core.WebMai
nActions.Home instance @ 0x1e09698 
<Plugins.Extensions.ProjectValerie.DMC_Plugins.DMC_WebInterfaceExtras.core.WebMa
inActions.Home instance at 0x1e09698>
request 
twisted.web.server.Request instance @ 0x2130f08 <GET / HTTP/1.1>
/usr/lib/enigma2/python/Plugins/Extensions/ProjectValerie/DMC_Plugins/DMC_WebInt
erfaceExtras/core/WebMainActions.py, line 49 in action
47                currentVersion = Update().getInstalledRevision()
48                manager = Manager("WebIf:MainActions")
49                movieCount = str(manager.getMoviesCount())
50                tvShowCount = str(manager.getSeriesCount())
Locals
manager 
Plugins.Extensions.ProjectValerie.DMC_Plugins.DMC_SyncExtras.Manager.Manager 
instance @ 0x7375c918 
<Plugins.Extensions.ProjectValerie.DMC_Plugins.DMC_SyncExtras.Manager.Manager 
instance at 0x7375c918>
currentVersion  'r1270'
Globals
Update  <class 'Plugins.Extensions.ProjectValerie.DMC_Global.Update'>
Manager <class 
Plugins.Extensions.ProjectValerie.DMC_Plugins.DMC_SyncExtras.Manager.Manager at 
0x189c880>
/usr/lib/enigma2/python/Plugins/Extensions/ProjectValerie/DMC_Plugins/DMC_SyncEx
tras/Manager.py, line 166 in getMoviesCount
164
165        def getMoviesCount(self):
166                return self.db.getMediaCount(MediaInfo.MOVIE)
167#
Self
db  <Plugins.Extensions.ProjectValerie.DMC_Plugins.DMC_SyncExtras.PVS_DatabaseHan
dler.Database object at 0x2067e90>
Locals
self    
Plugins.Extensions.ProjectValerie.DMC_Plugins.DMC_SyncExtras.Manager.Manager 
instance @ 0x7375c918 
<Plugins.Extensions.ProjectValerie.DMC_Plugins.DMC_SyncExtras.Manager.Manager 
instance at 0x7375c918>
Globals
MediaInfo   <class 
'Plugins.Extensions.ProjectValerie.DMC_Plugins.DMC_SyncExtras.MediaInfo.MediaInf
o'>
/usr/lib/enigma2/python/Plugins/Extensions/ProjectValerie/DMC_Plugins/DMC_SyncEx
tras/PVS_DatabaseHandler.py, line 441 in getMediaCount
439        def getMediaCount(self, mediaType, parentId=None, season=None):
440                printl("->", self, "S")
441                return self.dbHandler.getMediaCount(mediaType, parentId, 
season)
442
Self
dbHandler   <Plugins.Extensions.ProjectValerie.DMC_Plugins.DMC_SyncExtras.PVS_Data
baseHandlerPICKLEV2.databaseHandlerPICKLEV2 object at 0x2067070>
Locals
season  None
self    <Plugins.Extensions.ProjectValerie.DMC_Plugins.DMC_SyncExtras.PVS_DatabaseH
andler.Database object at 0x2067e90>
mediaType   1
parentId    None
Globals
printl  
function printl2 in file 
/usr/lib/enigma2/python/Plugins/Extensions/ProjectValerie/__common__.py at line 
36
/usr/lib/enigma2/python/Plugins/Extensions/ProjectValerie/DMC_Plugins/DMC_SyncEx
tras/PVS_DatabaseHandlerPICKLEV2.py, line 533 in getMediaCount
531                printl("->", self, "S")
532                self._mediaFilesCheckLoaded()
533                return len(self._getMediaValuesWithFilter(mediaType, 
parentId, season))
534
Locals
season  None
self    <Plugins.Extensions.ProjectValerie.DMC_Plugins.DMC_SyncExtras.PVS_DatabaseH
andlerPICKLEV2.databaseHandlerPICKLEV2 object at 0x2067070>
mediaType   1
parentId    None
Globals
printl  
function printl2 in file 
/usr/lib/enigma2/python/Plugins/Extensions/ProjectValerie/__common__.py at line 
36
/usr/lib/enigma2/python/Plugins/Extensions/ProjectValerie/DMC_Plugins/DMC_SyncEx
tras/PVS_DatabaseHandlerPICKLEV2.py, line 466 in _getMediaValuesWithFilter
464                start_time = time.time()
465
466                for key in self._dbMediaFiles:
467                        if self._checkKeyValid(key):
Locals
start_time  1355328526.3816531
self    <Plugins.Extensions.ProjectValerie.DMC_Plugins.DMC_SyncExtras.PVS_DatabaseH
andlerPICKLEV2.databaseHandlerPICKLEV2 object at 0x2067070>
Globals
time    <module 'time' from '/usr/lib/python2.7/lib-dynload/time.so'>

<type 'exceptions.TypeError'>: 'NoneType' object is not iterable

Mein Medienordner lässt sich nicht synchronisieren, der Synch beginnt und dann 
passiert nichts mehr

Original issue reported on code.google.com by m.krei...@gmail.com on 12 Dec 2012 at 4:10

GoogleCodeExporter commented 8 years ago
Hi,

kannst Du mal bitte ein PVMC-Log anhängen? Also konkret:

(1) den Debug-Modus auf "high" stellen, wie hier beschrieben:
http://bit.ly/zLqAJw

(2) nochmal einen Sync starten

(3) das neu erzeugte PVMC-Logfile hier anhängen

Sieht für mich so aus, als ob da beim Einlesen der Daten aus der Datenbank was 
schiefläuft. hattest Du PVMC schonmal erfolgreich synchronisieren lassen - 
oder ist das eine frische Installation mit "leerer" Datenbank?

Danke im voraus & Gruß, Erik

Original comment by erik.for...@gmail.com on 13 Dec 2012 at 11:11

GoogleCodeExporter commented 8 years ago
Habe das Problem gelöst. Da waren wohl noch Reste einer alten PV Installation 
auf der HDD, die grundlegend gestört haben. Ich habe alle entsprechenden 
Ordner gelöscht, PV neu installiert und nun läuft es wunschgemäß. Fast 
zumindest, obwohl ich in den Synch Einstellungen Sprache "de" gewählt habe, 
bekomme ich nur englische Filmbeschreibungen nach einem Synch. Wollen wir das 
hier bereden oder soll ich ein neues Issue aufmachen?

Original comment by m.krei...@gmail.com on 13 Dec 2012 at 5:40

GoogleCodeExporter commented 8 years ago
[deleted comment]
GoogleCodeExporter commented 8 years ago
Hi,

Danke für's feedback... Können wir hier weiter bearbeiten, denn Deine erstes 
Problem hat sich ja "by magic" in Wohlgefallen aufgelöst => falls es auf ein 
Coding-Problem rausläuft, können wir den Subject ja entsprechend ändern... 
;-)  

Kannst Du mal ein paar Beispiele nennen - und hattest Du mal überprüft, ob in 
den Online-Datenbanken, die PVMC zum Synchronisieren benutzt (TheMovieDb für 
Filme und TheTvDb für Serien), auch deutsche Beschreibungen verfügbar sind? 
Wenn ja, dann wäre ein Log eines Sync-Laufs doch hilfreich... :-)

Gruß, Erik

Original comment by erik.for...@gmail.com on 13 Dec 2012 at 6:05

GoogleCodeExporter commented 8 years ago
[deleted comment]
GoogleCodeExporter commented 8 years ago
Mit älteren Versionen von PV wurde meine Sammlung korrekt erkannt. Manuell 
kann ich die Beschreibungen auch über das Webinterface auf deutsch ändern, 
die Beschreibungen sind also vorhanden. 
Laut Log File übernimmt PV die Einstellung "de" bei Sprache nicht, es sucht 
mit Einstellung "en"...

Original comment by m.krei...@gmail.com on 13 Dec 2012 at 6:35

Attachments:

GoogleCodeExporter commented 8 years ago
Wow wow - moooment mal... :-)

Du schreibst:
> Manuell kann ich die Beschreibungen auch über das Webinterface auf 
> deutsch ändern, die Beschreibungen sind also vorhanden. 

Klar - wenn Du via WebIF für einen Film einen deutschen Plot eingibst, dann 
wird der später natürlich auch auf Deutsch angezeigt - das heißt aber doch 
noch lange nicht, dass für diesen Film bei TheMovieDb.com auch ein deutscher 
Plot vorhanden ist. Und diese Online-Datenbank benutzt PVMC eigentlich zum 
automatischen Synchronisieren.

> Laut Log File übernimmt PV die Einstellung "de" bei Sprache nicht, 
> es sucht mit Einstellung "en"...

Wo genau siehst Du das (bitte Filmnamen angeben, damit ich im Log genau diese 
Stelle suchen kann)? Wenn Du solche Zeilen hier meinst, wo ein "en" drin 
vorkommt:

Plugins.Extensions.ProjectValerie.DMC_Plugins.DMC_SyncExtras.WebGrabber-> (0) 
http://api.themoviedb.org/2.1/Movie.imdbLookup/en/xml/7bcd34bb47bc65d20a49b6b446
a32866/tt0299825

dann hat das hingegen nix mit dem Laden des Plots zu tun! Das ist völlig in 
Ordnung, dass hier die englische Seite aufgerufen wird. 

Bei dem Video "Tanz der Teufel" wiederum sieht man, dass versucht wird, den 
Plot auf Deutsch zu laden - und erst als das nicht klappt, wird es nochmal mit 
Englisch probiert:

19:32:15.0859896 I  Sync::syncWithId Get movie for language: de
19:32:15.0861219 I  TheMovieDbProvider::getMovie  <- None (info.TmDbId == 
info.TmDbIdNull)
19:32:15.0862424 I  Sync::syncWithId Nothing found => trying fallback: en
19:32:15.0863688 I  TheMovieDbProvider::getMovie  <- None (info.TmDbId == 
info.TmDbIdNull)
19:32:15.0865061 I  Sync::syncWithId <- search in TMDb didn't succeed! => 
return 'None'...

Dummerweise liefert die Abfrage bei IMDb mit dem Suchstring "Tanz der Teufel" 
den Film "Der Tanz mit dem Teufel - Die Entführung des Richard Oetker (2001)" 
zurück - was natürlich ganz falsch ist. => Abhilfe könnte hier z.B. eine 
Suchhilfe mit der IMDb-ID im Dateinamen bringen - oder eine der anderen 
Suchhilfen, die wir im Wiki beschrieben haben:
http://code.google.com/p/project-valerie/wiki/Sync#Excludes_und_Suchhilfen

Die restlichen Probleme mit nicht gefundenen Filmen lassen sich auf Probleme 
mit deutschen Sonderzeichen im Dateinamen zurückführen. Wenn Du die bei eins, 
zwei Files mal testhalber durch "ae", "oe" oder "ue" entsetzt, sollten diese 
Files ebenfalls gesynct werden. 

Für mich sieht das so aus, als ob in diesem Log sonst keine Plots mehr geladen 
wurden - für alle restlichen Filme sind also schon Plots vorhanden. Um das 
Problem im Log zu sehen, müsstest Du also einen der Filme mit englischen Plots 
mal via WebIF aus der Datenbank löschen...

Gruß, Erik

Original comment by erik.for...@gmail.com on 13 Dec 2012 at 7:27

GoogleCodeExporter commented 8 years ago
a) Ich dachte dieser String:

16:46:45.0592694 I  __init__:: language=EN

ist für die Sprache zuständig, da habe ich mich wohl getäuscht.

b) Hab es heute nochmal versucht, alle Poster/Datenbank/Chaches gelöscht und 
neuer Synch. Fimbeschreibungen werden wieder in englisch angezeigt. Wenn ich 
dann über das Webinterface auf den Film gehen, edit ---> change imdbld werden 
unter den Filtiteln auch deutsche Beschreibungen gefunden. 
Warum klappt das beim automatischen Synch nicht???

Original comment by m.krei...@gmail.com on 14 Dec 2012 at 4:51