Commit 532e5d01 authored by Rafaël Carré's avatar Rafaël Carré

lua playlist: update lelombrik parser

parent c389095a
......@@ -28,19 +28,26 @@ end
-- Parse function.
function parse()
vidtitle = ""
while true do
line = vlc.readline()
if not line then break end
if string.match( line, "id=\"nom_fichier\">" ) then
vidtitle = string.gsub( line, ".*\"nom_fichier\">([^<]*).*", "%1" )
if not line then
vlc.msg.err("Couldn't extract the video URL from lelombrik")
return { }
end
if string.match( line, "flvplayer.swf" ) then
-- fallback: retrieve the title from the url if we didn't find it
if vidtitle == "" then
vidtitle = string.gsub( vlc.path, ".*/([^.]*).*", "%1" )
if string.match( line, "id=\"nom_fichier\">" ) then
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
return { { path = string.gsub( line, ".*flashvars=\"&file=([^&]*).*", "%1" ); arturl = string.gsub( line, ".*&image=([^&]*).*", "%1" ); title = vidtitle } }
if path and arturl and title then
return { { path = path; arturl = arturl; title = title } }
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