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

midi

开发平台:

Unix_Linux

  1. --[[
  2.  Gets an artwork from images.google.com
  3.  $Id$
  4.  Copyright © 2007 the VideoLAN team
  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. -- Replace non alphanumeric char by +
  18. function get_query( title )
  19.     -- If we have a .EXT remove the extension.
  20.     str = string.gsub( title, "(.*)%....$", "%1" )
  21.     return string.gsub( str, "([^%w ])",
  22.          function (c) return string.format ("%%%02X", string.byte(c)) end)
  23. end
  24. -- Return the artwork
  25. function fetch_art()
  26.     if vlc.artist and vlc.album then
  27.         title = vlc.artist.." "..vlc.album
  28.     elseif vlc.title and vlc.artist then
  29.         title = vlc.artist.." "..vlc.title
  30.     elseif vlc.title then
  31.         title = vlc.title
  32.     elseif vlc.name then
  33.         title = vlc.name
  34.     else
  35.         return nil
  36.     end
  37.     fd = vlc.stream( "http://images.google.com/images?q=" .. get_query( title ) )
  38.     page = fd:read( 65653 )
  39.     fd = nil
  40.     _, _, arturl = string.find( page, "imgurl=([^&]+)" )
  41.     return arturl
  42. end