-- Parse function.
function parse()
- vidtitle = ""
while true do
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
- 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
- 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" )
- 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