Commit 2d22656e authored by Rafaël Carré's avatar Rafaël Carré Committed by Rémi Duraffort

lua playlist: update lelombrik parser

(cherry picked from commit 532e5d01)
Signed-off-by: default avatarRémi Duraffort <ivoire@videolan.org>
parent 21c130af
...@@ -28,19 +28,26 @@ end ...@@ -28,19 +28,26 @@ end
-- Parse function. -- Parse function.
function parse() function parse()
vidtitle = ""
while true do while true do
line = vlc.readline() line = vlc.readline()
if not line then break end if not line then
vlc.msg.err("Couldn't extract the video URL from lelombrik")
return { }
end
if string.match( line, "id=\"nom_fichier\">" ) then if string.match( line, "id=\"nom_fichier\">" ) then
vidtitle = string.gsub( line, ".*\"nom_fichier\">([^<]*).*", "%1" ) title = string.gsub( line, ".*\"nom_fichier\">([^<]*).*", "%1" )
elseif string.match( line, "'file'" ) then
_,_,path = string.find( line, "'file', *'([^']*)")
elseif string.match( line, "flashvars=" ) then
path = string.gsub( line, "flashvars=.*&file=([^&]*).*", "%1" )
arturl = string.gsub( line, "flashvars=.*&image=([^&]*).*", "%1" )
elseif string.match( line, "'image'" ) then
_,_,arturl = string.find( line, "'image', *'([^']*)")
end end
if string.match( line, "flvplayer.swf" ) then
-- fallback: retrieve the title from the url if we didn't find it if path and arturl and title then
if vidtitle == "" then return { { path = path; arturl = arturl; title = title } }
vidtitle = string.gsub( vlc.path, ".*/([^.]*).*", "%1" )
end
return { { path = string.gsub( line, ".*flashvars=\"&file=([^&]*).*", "%1" ); arturl = string.gsub( line, ".*&image=([^&]*).*", "%1" ); title = vidtitle } }
end end
end end
end end
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment