本文整理汇总了Python中xbmc.getCleanMovieTitle函数的典型用法代码示例。如果您正苦于以下问题:Python getCleanMovieTitle函数的具体用法?Python getCleanMovieTitle怎么用?Python getCleanMovieTitle使用的例子?那么恭喜您, 这里精选的函数代码示例或许可以为您提供帮助。
在下文中一共展示了getCleanMovieTitle函数的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Python代码示例。
示例1: search_subtitles
def search_subtitles( file_original_path, title, tvshow, year, season, episode, set_temp, rar, lang1, lang2, lang3, stack ): #standard input
subtitles_list = []
msg = ""
searchstring_notclean = ""
searchstring = ""
global israr
israr = os.path.abspath(file_original_path)
israr = os.path.split(israr)
israr = israr[0].split(os.sep)
israr = string.split(israr[-1], '.')
israr = string.lower(israr[-1])
if len(tvshow) == 0:
if 'rar' in israr and searchstring is not None:
if 'cd1' in string.lower(title) or 'cd2' in string.lower(title) or 'cd3' in string.lower(title):
dirsearch = os.path.abspath(file_original_path)
dirsearch = os.path.split(dirsearch)
dirsearch = dirsearch[0].split(os.sep)
if len(dirsearch) > 1:
searchstring_notclean = dirsearch[-3]
searchstring = xbmc.getCleanMovieTitle(dirsearch[-3])
searchstring = searchstring[0]
else:
searchstring = title
else:
searchstring = title
elif 'cd1' in string.lower(title) or 'cd2' in string.lower(title) or 'cd3' in string.lower(title):
dirsearch = os.path.abspath(file_original_path)
dirsearch = os.path.split(dirsearch)
dirsearch = dirsearch[0].split(os.sep)
if len(dirsearch) > 1:
searchstring_notclean = dirsearch[-2]
searchstring = xbmc.getCleanMovieTitle(dirsearch[-2])
searchstring = searchstring[0]
else:
#We are at the root of the drive!!! so there's no dir to lookup only file#
title = os.path.split(file_original_path)
searchstring = title[-1]
else:
if title == "":
title = os.path.split(file_original_path)
searchstring = title[-1]
else:
searchstring = title
if len(tvshow) > 0:
searchstring = "%s S%#02dE%#02d" % (tvshow, int(season), int(episode))
log( __name__ ,"%s Search string = %s" % (debug_pretext, searchstring))
hasLang = languageTranslate(lang1,0,2) + " " + languageTranslate(lang2,0,2) + " " + languageTranslate(lang3,0,2)
if re.search('pt', hasLang) or re.search('en', hasLang) or re.search('es', hasLang) or re.search('pb', hasLang):
msgnote(debug_pretext,__language__(30153), 6000)
getallsubs(searchstring, languageTranslate(lang1,0,2), lang1, file_original_path, subtitles_list, searchstring_notclean)
getallsubs(searchstring, languageTranslate(lang2,0,2), lang2, file_original_path, subtitles_list, searchstring_notclean)
getallsubs(searchstring, languageTranslate(lang3,0,2), lang3, file_original_path, subtitles_list, searchstring_notclean)
else:
msg = "Won't work, LegendasDivx.com is only for PT, PTBR, ES or EN subtitles."
return subtitles_list, "", msg #standard output
示例2: search_subtitles
def search_subtitles( file_original_path, title, tvshow, year, season, episode, set_temp, rar, lang1, lang2, lang3, stack ): #standard input
subtitles_list = []
msg = ""
searchstring_notclean = ""
searchstring = ""
global israr
israr = os.path.abspath(file_original_path)
israr = os.path.split(israr)
israr = israr[0].split(os.sep)
israr = string.split(israr[-1], '.')
israr = string.lower(israr[-1])
if len(tvshow) == 0:
if 'rar' in israr and searchstring is not None:
if 'cd1' in string.lower(title) or 'cd2' in string.lower(title) or 'cd3' in string.lower(title):
dirsearch = os.path.abspath(file_original_path)
dirsearch = os.path.split(dirsearch)
dirsearch = dirsearch[0].split(os.sep)
if len(dirsearch) > 1:
searchstring_notclean = dirsearch[-3]
searchstring = xbmc.getCleanMovieTitle(dirsearch[-3])
searchstring = searchstring[0]
else:
searchstring = title
else:
searchstring = title
elif 'cd1' in string.lower(title) or 'cd2' in string.lower(title) or 'cd3' in string.lower(title):
dirsearch = os.path.abspath(file_original_path)
dirsearch = os.path.split(dirsearch)
dirsearch = dirsearch[0].split(os.sep)
if len(dirsearch) > 1:
searchstring_notclean = dirsearch[-2]
searchstring = xbmc.getCleanMovieTitle(dirsearch[-2])
searchstring = searchstring[0]
else:
#We are at the root of the drive!!! so there's no dir to lookup only file#
title = os.path.split(file_original_path)
searchstring = title[-1]
else:
if title == "":
title = os.path.split(file_original_path)
searchstring = title[-1]
else:
searchstring = title
if len(tvshow) > 0:
searchstring = "%s S%#02dE%#02d" % (tvshow, int(season), int(episode))
log( __name__ ,"%s Search string = %s" % (debug_pretext, searchstring))
portuguese = 0
if string.lower(lang1) == "portuguese": portuguese = 1
elif string.lower(lang2) == "portuguese": portuguese = 2
elif string.lower(lang3) == "portuguese": portuguese = 3
getallsubs(searchstring, "pt", "Portuguese", file_original_path, subtitles_list, searchstring_notclean)
if portuguese == 0:
msg = "Won't work, LegendasDivx is only for Portuguese subtitles!"
return subtitles_list, "", msg #standard output
示例3: search_filename
def search_filename(filename, languages):
title, year = xbmc.getCleanMovieTitle(filename)
log(__name__, "clean title: \"%s\" (%s)" % (title, year))
try:
yearval = int(year)
except ValueError:
yearval = 0
if title and yearval > 1900:
search_string = title + "+" + year
search_argenteam_api(search_string)
else:
match = re.search(
r'\WS(?P<season>\d\d)E(?P<episode>\d\d)',
title,
flags=re.IGNORECASE
)
if match is not None:
tvshow = string.strip(title[:match.start('season')-1])
season = string.lstrip(match.group('season'), '0')
episode = string.lstrip(match.group('episode'), '0')
search_string = "%s S%#02dE%#02d" % (
tvshow,
int(season),
int(episode)
)
search_argenteam_api(search_string)
else:
search_argenteam_api(filename)
示例4: searchsubtitles
def searchsubtitles( self, item):
if ( self.osdb_token ) :
searchlist = []
if len(item['tvshow']) > 0:
OS_search_string = ("%s S%.2dE%.2d" % (item['tvshow'],
int(item['season']),
int(item['episode']),)
).replace(" ","+")
else:
if str(item['year']) == "":
item['title'], item['year'] = xbmc.getCleanMovieTitle( item['title'] )
OS_search_string = item['title'].replace(" ","+")
log( __name__ , "Search String [ %s ]" % (OS_search_string,))
if not item['temp']:
try:
size, hash = hashFile(item['file_original_path'], item['rar'])
log( __name__ ,"OpenSubtitles module hash [%s] and size [%s]" % (hash, size,))
searchlist.append({'sublanguageid' :",".join(item['3let_language']),
'moviehash' :hash,
'moviebytesize':str(size)
})
except:
pass
searchlist.append({'sublanguageid':",".join(item['3let_language']),
'query' :OS_search_string
})
search = self.server.SearchSubtitles( self.osdb_token, searchlist )
if search["data"]:
return search["data"]
示例5: searchsubtitles
def searchsubtitles( self, item):
if ( self.osdb_token ) :
searchlist = []
if item['mansearch']:
searchlist = [{'sublanguageid':",".join(item['3let_language']),
'query' :urllib.unquote(item['mansearchstr'])
}]
search = self.server.SearchSubtitles( self.osdb_token, searchlist )
if search["data"]:
return search["data"]
else:
return None
if len(item['tvshow']) > 0:
OS_search_string = ("%s S%.2dE%.2d" % (item['tvshow'],
int(item['season']),
int(item['episode']),)
).replace(" ","+")
else:
if str(item['year']) == "" and xbmc.Player().isPlaying():
item['title'], item['year'] = xbmc.getCleanMovieTitle( item['title'] )
OS_search_string = item['title'].replace(" ","+")
log( __name__ , "Search String [ %s ]" % (OS_search_string,))
if not item['temp']:
try:
size, hash = hashFile(item['file_original_path'], item['rar'])
log( __name__ ,"OpenSubtitles module hash [%s] and size [%s]" % (hash, size,))
searchlist.append({'sublanguageid' :",".join(item['3let_language']),
'moviehash' :hash,
'moviebytesize':str(size)
})
except:
pass
if xbmc.Player().isPlaying():
imdb = str(xbmc.Player().getVideoInfoTag().getIMDBNumber().replace('tt',''))
else:
imdb = str(xbmc.getInfoLabel("ListItem.IMDBNumber").replace('tt',''))
if ((not item['tvshow']) and imdb != ""):
searchlist.append({'sublanguageid' :",".join(item['3let_language']),
'imdbid' :imdb
})
searchlist.append({'sublanguageid':",".join(item['3let_language']),
'query' :OS_search_string
})
else:
searchlist = [{'sublanguageid':",".join(item['3let_language']),
'query' :OS_search_string
}]
search = self.server.SearchSubtitles( self.osdb_token, searchlist )
if search["data"]:
return search["data"]
示例6: search_filename
def search_filename(filename, languages):
title, year = xbmc.getCleanMovieTitle(filename)
log(__name__, "clean title: \"%s\" (%s)" % (title, year))
try:
yearval = int(year)
except ValueError:
yearval = 0
if title and yearval > 1900:
query_Film(title, year, item['3let_language'], filename)
示例7: search_movie
def search_movie(title, year, languages, filename):
title = string.strip(title)
log(__name__, "Search movie = %s" % title)
res = search_manual(title, languages, filename)
for result in res:
rtitle, ryear = xbmc.getCleanMovieTitle(result['filename'])
rtitle, ryear = rtitle.strip().lower(), ryear.strip().lower()
log(__name__, "Got cleaned movie result of %s (%s) '%s'" % (rtitle, ryear, result['filename']))
if (rtitle, ryear) == (title, year):
yield result
示例8: keyboard
def keyboard(self, parent):
dir, self.year = xbmc.getCleanMovieTitle(os.path.split(os.path.split(self.file_original_path)[0])[1])
if self.rar:
tmp_dir = os.path.split(os.path.split(os.path.split(self.file_original_path)[0])[0])[1]
dir, self.year = xbmc.getCleanMovieTitle( tmp_dir )
if not parent:
kb = xbmc.Keyboard("%s ()" % (dir,), _( 751 ), False)
text = self.file_name
kb.doModal()
if (kb.isConfirmed()): text, self.year = xbmc.getCleanMovieTitle(kb.getText())
self.title = text
else:
self.title = dir
log( __name__ ,"Manual/Keyboard Entry: Title:[%s], Year: [%s]" % (self.title, self.year,))
if self.year != "" :
self.file_name = "%s (%s)" % (self.file_name, str(self.year),)
else:
self.file_name = self.title
self.tvshow = ""
self.Search_Subtitles()
示例9: searchsubtitles
def searchsubtitles(self, item):
#print ("searchsubtitles 1")
if item['mansearch']:
searchParams = {'m' : urllib.unquote(item['mansearchstr']),
'l' : '0',
'c' : '',
'y' : '0',
'a' : '',
'd' : '',
'u' : '',
'g' : '',
't' : 'Submit'}
print ("manual search: %s" % searchParams)
elif len(item['tvshow']) > 0:
searchParams = {'m' : ("%s %.2dx%.2d" % (item['tvshow'],
int(item['season']),
int(item['episode']))),
'l' : '0',
'c' : '',
'y' : '0',
'a' : '',
'd' : '',
'u' : '',
'g' : '',
't' : 'Submit'}
print ("tvshow search: %s" % searchParams)
else:
if str(item['year']) == "":
item['title'], item['year'] = xbmc.getCleanMovieTitle(item['title'])
if str(item['year']) == "":
item['year'] = '0'
searchParams = {'m' : item['title'],
'l' : '0',
'c' : '',
'y' : '0',
'a' : '',
'd' : '',
'u' : '',
'g' : '',
't' : 'Submit'}
print ("title search: %s" % searchParams)
log( __name__ , "Search Parameters [ %s ]" % (str(searchParams)))
result = self.handleSearch(searchParams)
return result
示例10: keyboard
def keyboard(self, parent):
dir, self.year = xbmc.getCleanMovieTitle(self.file_original_path, self.parsearch)
if not parent:
if self.man_search_str != "":
srchstr = self.man_search_str
else:
srchstr = "%s (%s)" % (dir,self.year,)
kb = xbmc.Keyboard(srchstr, _( 751 ), False)
text = self.file_name
kb.doModal()
if (kb.isConfirmed()): text, self.year = xbmc.getCleanMovieTitle(kb.getText())
self.title = text
self.man_search_str = text
else:
self.title = dir
log( __name__ ,"Manual/Keyboard Entry: Title:[%s], Year: [%s]" % (self.title, self.year,))
if self.year != "" :
self.file_name = "%s (%s)" % (self.file_name, str(self.year),)
else:
self.file_name = self.title
self.tvshow = ""
self.next = list(self.service_list)
self.Search_Subtitles()
示例11: build_search_string
def build_search_string(item):
if item['mansearch']:
search_string = urllib.unquote(item['mansearchstr'])
elif len(item['tvshow']) > 0:
search_string = ("%s S%.2dE%.2d" % (item['tvshow'],
int(item['season']),
int(item['episode']),)
).replace(" ","+")
else:
if str(item['year']) == "":
item['title'], item['year'] = xbmc.getCleanMovieTitle( item['title'] )
search_string = item['title'].replace(" ","+")
log( __name__ , "Search String [ %s ]" % (search_string,))
return search_string
示例12: clean_movie_title
def clean_movie_title(item, use_dir):
debuglog("getCleanMovieTitle: %s" % use_dir)
infos = xbmc.getCleanMovieTitle(item['file_original_path'], use_dir)
if not 'year' in item or not item['year']:
item['year'] = infos[1]
title_pattern = r'^(?P<title>.+)S(?P<season>\d+)E(?P<episode>\d+).*$'
title_match = re.search(title_pattern, infos[0], re.IGNORECASE)
if title_match:
item['tvshow'] = title_match.group('title').strip()
item['season'] = title_match.group('season')
item['episode'] = title_match.group('episode')
return infos, (title_match is not None)
示例13: search_filename
def search_filename(filename, languages):
title, year = xbmc.getCleanMovieTitle(filename)
log(__name__, "clean title: \"%s\" (%s)" % (title, year))
try:
yearval = int(year)
except ValueError:
yearval = 0
match = re.search(r'\WS(?P<season>\d\d)E(?P<episode>\d\d)', filename, flags=re.IGNORECASE)
if match is not None:
tvshow = string.strip(title[:match.start('season') - 1])
season = string.lstrip(match.group('season'), '0')
episode = string.lstrip(match.group('episode'), '0')
search_tvshow(tvshow, season, episode, languages, filename)
elif title and yearval > 1900:
search_movie(title, year, languages, filename)
else:
search_manual(filename, languages, filename)
示例14: Search
def Search( item ):
convertASS = (__addon__.getSetting("convertASS") == "true")
xbmc.log("Search GomTV with a file name, "+item['file_original_path'].encode('cp949', 'ignore'), level=xbmc.LOGDEBUG)
video_hash = hashFileMD5( item['file_original_path'], buff_size=1024*1024 )
if video_hash is None:
xbmc.log(u"Fail to access movie flie, "+item['file_original_path'].encode('cp949', 'ignore'), level=xbmc.LOGERROR)
return
q_url = "http://gom.gomtv.com/jmdb/search.html?key=%s" %video_hash
subtitles_list = SearchSubtitles( q_url )
if not subtitles_list:
xbmc.log("No result with hash, "+video_hash, level=xbmc.LOGNOTICE)
if item['tvshow']:
search_string = ("%s S%.2dE%.2d" %
(item['tvshow'], int(item['season']), int(item['episode']))).replace(" ","+")
else:
if str(item['year']) == "":
item['title'], item['year'] = xbmc.getCleanMovieTitle( item['title'] )
# use English title if available
query = ENG_TITLE_PTN.match(item['title'])
srch_title = query.group(2).strip() if query else item['title']
search_string = srch_title.replace(" ","+")
q_url = "http://gom.gomtv.com/main/index.html?ch=subtitles&pt=l&menu=subtitles&lang=0&sValue=%s" %search_string
subtitles_list = SearchSubtitles( q_url )
xbmc.log("Found %d subtitles in GomTV" %len(subtitles_list), level=xbmc.LOGINFO)
for sub in subtitles_list:
listitem = xbmcgui.ListItem(
label=sub['language_name'],
label2=sub['filename'],
iconImage=sub['rating'],
thumbnailImage=sub['language_flag'],
)
listitem.setProperty("sync", 'true' if sub["sync"] else 'false')
listitem.setProperty("hearing_imp", 'true' if sub.get("hearing_imp", False) else 'false')
url = "plugin://%s/?action=download&link=%s&ID=%s&filename=%s&format=%s" % (__scriptid__,
urllib.quote(sub["link"]),
sub["ID"],
sub["filename"],
'ass' if convertASS else sub["format"]
)
xbmcplugin.addDirectoryItem(handle=int(sys.argv[1]), url=url, listitem=listitem, isFolder=False)
示例15: search_subtitles
def search_subtitles( file_original_path, title, tvshow, year, season, episode, set_temp, rar, lang1, lang2, lang3, stack ): #standard input
ok = False
msg = ""
hash_search = False
osdb_server = OSDBServer()
subtitles_list = []
if len(tvshow) > 0: # TvShow
OS_search_string = ("%s S%.2dE%.2d" % (tvshow, int(season), int(episode),)).replace(" ","+")
else: # Movie or not in Library
if str(year) == "": # Not in Library
title, year = xbmc.getCleanMovieTitle( title )
else: # Movie in Library
year = year
title = title
OS_search_string = title.replace(" ","+")
log( __name__ , "Search String [ %s ]" % (OS_search_string,))
if set_temp :
hash_search = False
file_size = "000000000"
hashTry = "000000000000"
else:
try:
try:
file_size, hashTry = xbmc.subHashAndFileSize(file_original_path)
log( __name__ ,"xbmc module hash and size")
except:
hashTry = timeout(set_filehash, args=(file_original_path, rar), timeout_duration=5)
file_size = str(os.path.getsize( file_original_path ))
hash_search = True
except:
file_size = ""
hashTry = ""
hash_search = False
log( __name__ ,"File Size [%s]" % file_size)
log( __name__ ,"File Hash [%s]" % hashTry)
log( __name__ ,"Search by hash and name %s" % (os.path.basename( file_original_path ),))
subtitles_list, msg = osdb_server.searchsubtitles( OS_search_string, lang1, lang2, lang3, hash_search, hashTry, file_size )
return subtitles_list, "", msg #standard output