france2.lua
上传用户:kjfoods
上传日期:2020-07-06
资源大小:29949k
文件大小:2k
源码类别:

midi

开发平台:

Unix_Linux

  1. --[[
  2.  $Id$
  3.  Copyright © 2008 the VideoLAN team
  4.  Authors: Antoine Cellerier <dionoea at videolan dot org>
  5.  This program is free software; you can redistribute it and/or modify
  6.  it under the terms of the GNU General Public License as published by
  7.  the Free Software Foundation; either version 2 of the License, or
  8.  (at your option) any later version.
  9.  This program is distributed in the hope that it will be useful,
  10.  but WITHOUT ANY WARRANTY; without even the implied warranty of
  11.  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
  12.  GNU General Public License for more details.
  13.  You should have received a copy of the GNU General Public License
  14.  along with this program; if not, write to the Free Software
  15.  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston MA 02110-1301, USA.
  16. --]]
  17. -- Probe function.
  18. function probe()
  19.     return vlc.access == "http"
  20.         and string.match( vlc.path, "jt.france2.fr/player/" )
  21. end
  22. -- Parse function.
  23. function parse()
  24.     p = {}
  25.     while true do
  26.         -- Try to find the video's title
  27.         line = vlc.readline()
  28.         if not line then break end
  29.         if string.match( line, "class="editiondate"" ) then
  30.             _,_,editiondate = string.find( line, "<h1>(.-)</h1>" )
  31.         end
  32.         if string.match( line, "mms.*%.wmv" ) then
  33.             _,_,video = string.find( line, "mms(.-%.wmv)" )
  34.             video = "mmsh"..video
  35.             table.insert( p, { path = video; name = editiondate } )
  36.         end
  37.         if string.match( line, "class="subjecttimer"" ) then
  38.             oldtime = time
  39.             _,_,time = string.find( line, "href="(.-)"" )
  40.             if oldtime then
  41.                 table.insert( p, { path = video; name = name; duration = time - oldtime; options = { ':start-time='..tostring(oldtime); ':stop-time='..tostring(time) } } )
  42.             end
  43.             name = vlc.strings.resolve_xml_special_chars( string.gsub( line, "^.*>(.*)<..*$", "%1" ) )
  44.         end
  45.     end
  46.     if oldtime then
  47.         table.insert( p, { path = video; name = name; options = { ':start-time='..tostring(time) } } )
  48.     end
  49.     return p
  50. end