Jump to content
Sign in to follow this  
Nologic

Has the metadata format changed?

Recommended Posts

Nologic

I'm running into an issue scanning my library.

 

 

Scan media library failed.

a minute ago

The 'br' start tag on line 8 position 6 does not match the end that of 'Overview'. Line 9, position 118.

 

I typically scrap my data with Media Center Master...with the following formats checked.
 

X Generate MediaBrowser metadata (movie.xml and series.xml, required for now)

X Generate Kodi/XBMC-compatible metadata (.nfo)

 

I'm attaching file examples.

 

hmm odd that i can't upload NFO files.

server-63580784722.txt

03X05 - The Usurper.xml

03X05 - The Usurper.zip

Share this post


Link to post
Share on other sites
Luke

Probably you have malformed xml

Share this post


Link to post
Share on other sites
Abobader

hmm odd that i can't upload NFO files.

 

 

You can now.

Share this post


Link to post
Share on other sites
Nologic

Thanks Abobader. :)

 

Doh! still didn't allow uploading "tvshow.nfo"

 

 

@ Luke -

 

Okay but any clue what one it is?

 

This seems like it's the proper section:

2015-10-18 17:06:33.9834 Info - App: HttpClientManager GET: http://www.thetvdb.com/api/GetSeries.php?seriesname=The+Musketeers+(2014)&language=en
2015-10-18 17:06:34.0324 Info - LibraryMonitor: Watching directory D:\TV Shows
2015-10-18 17:06:34.0324 Info - LibraryMonitor: Watching directory C:\Users\media\AppData\Roaming\Emby-Server\root
2015-10-18 17:06:34.0324 Info - LibraryMonitor: Watching directory E:\Movies
2015-10-18 17:06:34.0324 Info - LibraryMonitor: Watching directory F:\TV Shows
2015-10-18 17:06:34.0324 Info - LibraryMonitor: Watching directory G:\TV Shows
2015-10-18 17:06:34.0324 Info - LibraryMonitor: Watching directory H:\Movies
2015-10-18 17:06:34.0324 Info - LibraryMonitor: Watching directory H:\Movies 1080p
2015-10-18 17:06:34.0324 Info - LibraryMonitor: Watching directory H:\Movies Other
2015-10-18 17:06:34.0324 Info - LibraryMonitor: Watching directory C:\Users\media\AppData\Roaming\Emby-Server\data\collections
2015-10-18 17:06:34.0324 Info - LibraryMonitor: Watching directory C:\Users\media\AppData\Roaming\Emby-Server\data\camerauploads
2015-10-18 17:06:34.0324 Info - LibraryMonitor: Watching directory C:\Users\media\AppData\Roaming\Emby-Server\data\playlists
2015-10-18 17:06:34.0324 Error - App: Error
	*** Error Report ***
	Version: 3.0.5768.1
	Command line: C:\Users\media\AppData\Roaming\Emby-Server\System\MediaBrowser.ServerApplication.exe
	Operating system: Microsoft Windows NT 6.1.7601 Service Pack 1
	Processor count: 8
	64-Bit OS: True
	64-Bit Process: False
	Program data path: C:\Users\media\AppData\Roaming\Emby-Server
	Application Path: C:\Users\media\AppData\Roaming\Emby-Server\System\MediaBrowser.ServerApplication.exe
	The 'br' start tag on line 8 position 6 does not match the end tag of 'Overview'. Line 9, position 118.
	System.Xml.XmlException

Well guess I'll go hunting...I'll assume its in "The Musketeers (2014)" some where.

series.xml

Share this post


Link to post
Share on other sites
Nologic

I generally drag and drop into IE or Firefox to check XML's...I've looked through all my Musketeers xml's and so far everything seems fine...so my guess that it was there that things got screwed up...was wrong.

 

Any idea how to pin point the troubled file...or is this one of those times to burn with fire and start anew? :)

Share this post


Link to post
Share on other sites
Luke

well careful with that because the browsers may attempt to recover from the bad xml. the parser we use is very strict. i will adjust the logging to make sure it prints the path to the file.

Share this post


Link to post
Share on other sites
Nologic

Thanks Luke, I gave that web page a try and, it didn't show me anything different than the browsers in this case.

 

However I'll keep what you said about browser in mind for the future.

Share this post


Link to post
Share on other sites
Nologic

Anyone have an idea where I could find the DTD that is used to validate Emby's XML's?

 

I'm trying to make use of XMLlint to hunt down my malformed XML that is causing things to go sideways.

 

Thanks ahead of time. :)

 

*update*

 

While I'd still like to get my hands a hold of Emby's DTD...looks like I might be able to get away with:

xmllint --dropdtd --noout "<PathToXML>\<NameOfXML>.xml" 2>Result.txt

If it's empty, it loosely validates...if it's not...something is wrong with the XML.

 

So now to write a AutoIt script to blast through things.

 

*update 2*

 

Blah...that didn't help me one bit...my script got tripped up on only a few files...and that was only because of Unicode char's in the name:

 

W:\TV Shows\Person of Interest (2011)\Season 02\metadata\02X11 - 2pR.xml
warning: failed to load external entity "file:///W:/TV%20Shows/Person%20of%20Interest%20(2011)/Season%2002/metadata/02X11%20-%202pR.xml"

W:\TV Shows\Hawaii Five-0 (2010)\Season 05\metadata\05X08 - Ka Hana Malu.xml
warning: failed to load external entity "file:///W:/TV%20Shows/Hawaii%20Five-0%20(2010)/Season%2005/metadata/05X08%20-%20Ka%20Hana%20Malu.xml"

W:\TV Shows\Hawaii Five-0 (2010)\Season 05\metadata\05X16 - Nanahu.xml
warning: failed to load external entity "file:///W:/TV%20Shows/Hawaii%20Five-0%20(2010)/Season%2005/metadata/05X16%20-%20Nanahu.xml"

W:\TV Shows\Hawaii Five-0 (2010)\Season 05\metadata\05X20 - 'Ike Hanau.xml
warning: failed to load external entity "file:///W:/TV%20Shows/Hawaii%20Five-0%20(2010)/Season%2005/metadata/05X20%20-%20'Ike%20Hanau.xml"

 

So lacking a DTD, or the logs pointing out what file is screwy...I'm back to trying oddball hacks to figure out something.

 

Here is the code I came up with thus far...which is thus far useless:

$sPathFolder = 'W:\TV Shows\'

$sErrorLog = ''

$aAllFiles = _FileListToArrayRec( $sPathFolder , '*.xml' , 1 , 1 , 0 , 2 )
For $ii = 1 To $aAllFiles[0]
	RunWait( @ComSpec & ' /c xmllint --dropdtd --noout "' & $aAllFiles[$ii] & '" 2>Result.txt' , @ScriptDir & '\Bin\' , @SW_HIDE )
	$sBuffer = FileRead( @ScriptDir & '\Bin\Result.txt' )
	FileDelete( @ScriptDir & '\Bin\Result.txt' )
	If StringLen( $sBuffer ) > 0 Then
		$sErrorLog &= $aAllFiles[$ii] & @CRLF
		$sErrorLog &= $sBuffer & @CRLF
	EndIf
Next
If StringLen( $sErrorLog ) > 0 Then
	$sErrorFile = @ScriptDir & '\[Error Log] ' & @YEAR & '-' & @[member="Mon"] & '-' & @MDAY & ' ' & @HOUR & '.' & @MIN & '.' & @SEC & '.txt'
	FileWrite( $sErrorFile , $sErrorLog )
	ShellExecute( $sErrorFile )
Else
	MsgBox( 0 , 'Finished:' , 'No problems found.' & @LF & 'Bye Bye' )
EndIf

Requires files extracted in a bin folder:

iconv-1.9.2.win32.zip
libxml2-2.7.8.win32.zip
zlib-1.2.5.win32.zip

 

That can be grabbed from:

ftp://ftp.zlatkovic.com/libxml/

 

Edited by Nologic

Share this post


Link to post
Share on other sites
Nologic

Oh hell...the error is coming from the URL

http://www.thetvdb.com/api/GetSeries.php?seriesname=The+Musketeers+(2014)&language=en

<?xml version="1.0" encoding="UTF-8" ?>
<Data>
<Series>
<seriesid>284008</seriesid>
<language>en</language>
<SeriesName>The Three Musketeers (2014)</SeriesName>
<Overview>An adaptation of French novel "The Three Musketeers" - serialized by Alexandre Dumas in March–July 1844 - this drama chronicles the deeds of three Joseon-era heroes: Heo Seung Po, Ahn Min Seo, and Park Dal Hyang.  Now royal warrior guards for Crown Prince So Hyun, can the trio protect the Crown Prince from those who wish to kill him?
<br><br>
Originally scheduled for three seasons, this series was canceled after only one season due to creative differences.</Overview>
<FirstAired>2014-08-17</FirstAired>
<Network>tvN</Network>
<IMDB_ID>tt4135176</IMDB_ID>
<id>284008</id>
</Series>
</Data>

Share this post


Link to post
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
Sign in to follow this  

×
×
  • Create New...