本文整理汇总了Python中xbmc.makeLegalFilename函数的典型用法代码示例。如果您正苦于以下问题:Python makeLegalFilename函数的具体用法?Python makeLegalFilename怎么用?Python makeLegalFilename使用的例子?那么恭喜您, 这里精选的函数代码示例或许可以为您提供帮助。
在下文中一共展示了makeLegalFilename函数的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Python代码示例。
示例1: CleanExpired
def CleanExpired(self):
#delete files more than an hour old
self.Notification('Hulu Library','Removing Expired Content')
#delete old tv show files
dir = xbmc.makeLegalFilename(TV_SHOWS_PATH)
dirs, trash = xbmcvfs.listdir(dir)
for show in dirs:
show = xbmc.makeLegalFilename(os.path.join(dir, show))
trash, files = xbmcvfs.listdir(show)
for file in files:
path = xbmc.makeLegalFilename(os.path.join(show,file))
if (sys.platform == 'win32'): path = path.replace('smb:','')
if (time.mktime(time.strptime(time.ctime(os.path.getmtime(path)))) < (time.mktime(time.localtime()) - 3600)): xbmcvfs.delete(path)
#delete old movie files
dir = xbmc.makeLegalFilename(MOVIE_PATH)
trash, movies = xbmcvfs.listdir(dir)
for movie in movies:
path = xbmc.makeLegalFilename(os.path.join(dir, movie))
if (sys.platform == 'win32'): path = path.replace('smb:','')
if time.mktime(time.strptime(time.ctime(os.path.getmtime(path)))) < (time.mktime(time.localtime()) - 3600): xbmcvfs.delete(path)
xbmc.log(path)
self.Notification('Hulu Library','Expired Content Removed')
示例2: create_legal_filename
def create_legal_filename(title, year):
filename = title
if year: filename += ' %s' % (year)
filename = re.sub(r'(?!%s)[^\w\-_\.]', '.', filename)
filename = re.sub('\.+', '.', filename)
xbmc.makeLegalFilename(filename)
return filename
示例3: downloadMovie
def downloadMovie(self, url, path, title, extension):
if not os.path.exists(path):
common.log('Path does not exist')
return None
if title == '':
common.log('No title given')
return None
file_path = xbmc.makeLegalFilename(os.path.join(path, title + extension))
file_path = urllib.unquote_plus(file_path)
# Overwrite existing file?
if os.path.isfile(file_path):
self.pDialog = xbmcgui.Dialog()
if not common.ask('File already exists. Overwrite?\n' + os.path.basename(file_path)):
title = common.showOSK(urllib.unquote_plus(title), common.translate(30102))
if not title:
return None
file_path = xbmc.makeLegalFilename(os.path.join(path, title + extension))
file_path = urllib.unquote_plus(file_path)
success = self.__download(url, file_path)
if success:
return file_path
else:
return None
示例4: legal_filename
def legal_filename(filename):
try:
filename = filename.strip()
filename = re.sub(r'(?!%s)[^\w\-_\.]', '.', filename)
filename = re.sub('\.+', '.', filename)
filename = re.sub(re.compile('(CON|PRN|AUX|NUL|COM\d|LPT\d)\.', re.I), '\\1_', filename)
xbmc.makeLegalFilename(filename)
return filename
except:
return filename
示例5: filename_from_title
def filename_from_title(title, video_type):
if video_type == 'tvshow':
filename = '%s S%sE%s.strm'
filename = filename % (title, '%s', '%s')
else:
filename = '%s.strm' % title
filename = re.sub(r'(?!%s)[^\w\-_\. ]', '_', filename)
xbmc.makeLegalFilename(filename)
return filename
示例6: filename_from_title
def filename_from_title(title, video_type, year=None):
if video_type == VIDEO_TYPES.TVSHOW:
filename = '%s S%sE%s.strm'
filename = filename % (title, '%s', '%s')
else:
if year: title = '%s (%s)' % (title, year)
filename = '%s.strm' % title
filename = re.sub(r'(?!%s)[^\w\-_\.]', '.', filename)
filename = re.sub('\.+', '.', filename)
xbmc.makeLegalFilename(filename)
return filename
示例7: copy
def copy(orgfilename, newfilename):
orgfilename = xbmc.makeLegalFilename(orgfilename)
newfilename = xbmc.makeLegalFilename(newfilename)
if VFS_AVAILABLE == True:
xbmcvfs.copy(orgfilename, newfilename)
else:
try:
shutil.copy(orgfilename, newfilename)
except:
return False
return True
示例8: filename_from_title
def filename_from_title(title, video_type, year=None):
if video_type == VIDEO_TYPES.TVSHOW:
filename = '%s S%sE%s'
filename = filename % (title, '%s', '%s')
else:
if year: title = '%s.%s' % (title, year)
filename = title
filename = re.sub(r'(?!%s)[^\w\-_\.]', '.', filename)
filename = re.sub('\.+', '.', filename)
filename = re.sub(re.compile('(CON|PRN|AUX|NUL|COM\d|LPT\d)\.', re.I), '\\1_', filename)
xbmc.makeLegalFilename(filename)
return filename
示例9: filename_from_title
def filename_from_title(title, video_type, year=None):
if video_type == VIDEO_TYPES.TVSHOW:
filename = "%s S%sE%s.strm"
filename = filename % (title, "%s", "%s")
else:
if year:
title = "%s (%s)" % (title, year)
filename = "%s.strm" % title
filename = re.sub(r"(?!%s)[^\w\-_\.]", ".", filename)
filename = re.sub("\.+", ".", filename)
xbmc.makeLegalFilename(filename)
return filename
示例10: writeFiles
def writeFiles(self,fileList,source,dest):
utils.log("Writing files to: " + dest)
self.filesTotal = len(fileList)
self.filesLeft = self.filesTotal
#write each file from source to destination
for aFile in fileList:
if(not self.checkCancel()):
utils.log('Writing file: ' + source + aFile,xbmc.LOGDEBUG)
self.updateProgress(aFile)
if (aFile.startswith("-")):
vfs.mkdir(xbmc.makeLegalFilename(dest + aFile[1:],False))
else:
vfs.copy(xbmc.makeLegalFilename(source + aFile),xbmc.makeLegalFilename(dest + aFile,False))
示例11: _get_legal_filepath
def _get_legal_filepath(self, title, url, id_=0):
# set our default filename and extension
file_, ext = os.path.splitext(os.path.basename(url))
# does user want to use title as filename
file_ = [file_, title][self.m_addon.getSetting("trailer.use.title")]
# set identifier
trailer_id = ""
if (id_ > 0):
trailer_id = " ({id})".format(id="ABCDEFGHIJKLMNOPQRSTUVWXYZ"[id_])
# set our default trailer text
trailer = ["", "-trailer"][self.m_addon.getSetting("trailer.add.trailer")]
# set our default file path (if play_mode is temp, download to cache folder)
if (self.m_addon.getSetting("trailer.play.mode") == 1):
filepath = "special://temp/"
else:
filepath = self.m_addon.getSetting("trailer.save.folder") or "special://temp/"
# do we want to save with movie
if (self.m_addon.getSetting("trailer.save.movie")):
filepath, file_, trailer = self._get_movie_path(
title,
filepath,
file_,
trailer
)
# set final filename
file_ = "{name}{id}{trailer}{ext}".format(
name=os.path.splitext(file_)[0],
id=trailer_id,
trailer=trailer,
ext=ext
)
# FIXME: may need changing for temorary download
# if file already exists add an ID and try again
if (filepath != "special://temp/" and
xbmcvfs.exists(xbmc.makeLegalFilename(xbmc.validatePath(
os.path.join(
xbmc.translatePath(filepath),
file_
)
)).decode("UTF-8"))):
return self._get_legal_filepath(title, url, id_ + 1)
# return final path
return xbmc.makeLegalFilename(xbmc.validatePath(
os.path.join(
xbmc.translatePath(filepath),
file_
)
)).decode("UTF-8")
示例12: createNetworkPlaylist
def createNetworkPlaylist(self, network):
flename = xbmc.makeLegalFilename(GEN_CHAN_LOC + 'Network_' + network + '.xsp')
try:
fle = FileAccess.open(flename, "w")
except:
self.log(LANGUAGE(30034) + ' ' + flename, xbmc.LOGERROR)
return ''
self.writeXSPHeader(fle, "episodes", self.getChannelName(1, network))
network = network.lower()
added = False
fle.write(' <rule field="tvshow" operator="is">\n')
for i in range(len(self.showList)):
if self.showList[i][1].lower() == network:
theshow = self.cleanString(self.showList[i][0])
fle.write(' <value>' + theshow + '</value>\n')
added = True
fle.write(' </rule>\n')
self.writeXSPFooter(fle, 0, "random")
fle.close()
if added == False:
return ''
return flename
示例13: downloadfileGzipped
def downloadfileGzipped(url,pathfichero):
xbmc.output("[downloadtools.py] downloadfileGzipped: url="+url)
nombrefichero = pathfichero
xbmc.output("[downloadtools.py] downloadfileGzipped: nombrefichero="+nombrefichero)
nombrefichero = xbmc.makeLegalFilename(nombrefichero)
xbmc.output("[downloadtools.py] downloadfileGzipped: nombrefichero="+nombrefichero)
patron = "(http://[^/]+)/.+"
matches = re.compile(patron,re.DOTALL).findall(url)
if len(matches):
xbmc.output("[downloadtools.py] URL principal :"+matches[0])
url1= matches[0]
else:
url1 = url
txheaders = {'User-Agent':'Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 6.0; SLCC1; .NET CLR 2.0.50727; Media Center PC 5.0; .NET CLR 3.0.04506)',
'Accept':'text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8',
'Accept-Language':'es-es,es;q=0.8,en-us;q=0.5,en;q=0.3',
'Accept-Encoding':'gzip,deflate',
'Accept-Charset':'ISO-8859-1,utf-8;q=0.7,*;q=0.7',
'Keep-Alive':'115',
'Connection':'keep-alive',
'Referer':url1,
}
txdata = ""
# Crea el diálogo de progreso
progreso = xbmcgui.DialogProgress()
progreso.create( 'Pelisalacarta' , "Descargando file..." , url , nombrefichero )
# Timeout del socket a 60 segundos
socket.setdefaulttimeout(10)
h=urllib2.HTTPHandler(debuglevel=0)
request = urllib2.Request(url, txdata, txheaders)
#if existSize > 0:
# request.add_header('Range', 'bytes=%d-' % (existSize, ))
opener = urllib2.build_opener(h)
urllib2.install_opener(opener)
try:
connexion = opener.open(request)
except urllib2.HTTPError,e:
xbmc.output("[downloadtools.py] downloadfile: error %d (%s) al abrir la url %s" % (e.code,e.msg,url))
#print e.code
#print e.msg
#print e.hdrs
#print e.fp
f.close()
progreso.close()
# El error 416 es que el rango pedido es mayor que el fichero => es que ya está completo
if e.code==416:
return 0
else:
return -2
示例14: getVideoLength
def getVideoLength(self, filename):
filename = xbmc.makeLegalFilename(filename)
self.log("getVideoLength " + filename)
if len(filename) == 0:
self.log("No file name specified")
return 0
self.log("os name is " + os.name)
if os.path.exists(filename) == False:
if filename[0:6].lower() == 'smb://':
filename = self.handleSMB(filename)
else:
self.log("Unable to open the file")
return 0
base, ext = os.path.splitext(filename)
ext = ext.lower()
if ext in self.AVIExts:
self.parser = AVIParser.AVIParser()
elif ext in self.MP4Exts:
self.parser = MP4Parser.MP4Parser()
elif ext in self.MKVExts:
self.parser = MKVParser.MKVParser()
elif ext in self.FLVExts:
self.parser = FLVParser.FLVParser()
else:
self.log("No parser found for extension " + ext)
return 0
return self.parser.determineLength(filename)
示例15: delDirContent
def delDirContent(self, r_path):
"""
Delete the content of a directory ( file and sub direstories)
but not the directory itself
path: directory path
"""
# print "delDirContent"
# print path
result = True
path = xbmc.makeLegalFilename(r_path)
if os.path.isdir(path):
dirItems = os.listdir(path)
for item in dirItems:
itemFullPath = os.path.join(path, item)
try:
if os.path.isfile(itemFullPath):
# Fichier
os.remove(itemFullPath)
elif os.path.isdir(itemFullPath):
# Repertoire
self.deleteDir(itemFullPath)
except:
result = False
print "delDirContent: Exception la suppression du contenu du reperoire: %s" % path
print_exc()
else:
print "delDirContent: %s n'est pas un repertoire" % path
result = False
return result