• 设为首页
  • 点击收藏
  • 手机版
    手机扫一扫访问
    迪恩网络手机版
  • 关注官方公众号
    微信扫一扫关注
    迪恩网络公众号

Python xbmc.convertLanguage函数代码示例

原作者: [db:作者] 来自: [db:来源] 收藏 邀请

本文整理汇总了Python中xbmc.convertLanguage函数的典型用法代码示例。如果您正苦于以下问题:Python convertLanguage函数的具体用法?Python convertLanguage怎么用?Python convertLanguage使用的例子?那么恭喜您, 这里精选的函数代码示例或许可以为您提供帮助。



在下文中一共展示了convertLanguage函数的20个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于我们的系统推荐出更棒的Python代码示例。

示例1: _build_subtitle_list

    def _build_subtitle_list(self, search_results, item):
        results = []
        total_downloads = 0

        for result in search_results:
            lang3 = xbmc.convertLanguage(result["language"], xbmc.ISO_639_2)

            if lang3 in item["3let_language"]:
                total_downloads += result["downloads"]
                results.append({
                    'lang_index': item["3let_language"].index(lang3),
                    'filename': result["release"],
                    'language_name': xbmc.convertLanguage(result["language"], xbmc.ENGLISH_NAME),
                    'language_flag': result["language"],
                    'id': result["id"],
                    'rating': result["downloads"],
                    'sync': self._is_synced(item, result["video_file_size"], result["release"]),
                    'hearing_imp': False,
                    'is_preferred': lang3 == item['preferredlanguage']
                })

        # Fix the rating
        if total_downloads:
            for it in results:
                it["rating"] = min(int(round(it["rating"] / float(total_downloads), 1) * 8), 5)

        return sorted(results, key=lambda x: (x['is_preferred'], x['lang_index'], x['sync'], x['rating']), reverse=True)
开发者ID:CaTzil,项目名称:service.subtitles.napisy24pl,代码行数:27,代码来源:NapisyUtils.py


示例2: get_languages

def get_languages(params, lang_format = 2):
    """
    Get the requested languages the user want to search (3 letter format)

    Args:
        params: The passed parameters dict.
        lang_format: 0 to get full language name
            1 to get two letter code (ISO 639-1)
            2 to get three letter code (ISO 639-2/T or ISO 639-2/B) (default)

    Returns:
        An array with the requested languages, e.g. ['scc','eng']
    """
    langs = []  # ['scc','eng']
    for lang in urllib.unquote(params['languages']).decode('utf-8').split(","):
        if lang_format == 0:
            # Full language name
            langs.append(lang)
        elif lang_format == 1:
            # 2 letter format
            langs.append(xbmc.convertLanguage(lang, xbmc.ISO_639_1))
        else:
            # 3 letter format
            langs.append(xbmc.convertLanguage(lang, xbmc.ISO_639_2))
    return langs
开发者ID:iamninja,项目名称:script.service.brokensubs,代码行数:25,代码来源:subtitle.py


示例3: Search

def Search(item):
    d = timeout(set_filehash, args=(item["file_original_path"], item["rar"]), timeout_duration=15)
    md5hash = d.hexdigest()
    t = f(md5hash)
    filename = '.'.join(os.path.basename(item["file_original_path"]).split(".")[:-1])
    helper = NapiProjektHelper(filename, md5hash)
    results = helper.search(item, t)

    for result in results:
        listitem = xbmcgui.ListItem(label=xbmc.convertLanguage(result["language"], xbmc.ENGLISH_NAME),
                                    # language name for the found subtitle
                                    label2=filename,  # file name for the found subtitle
                                    iconImage="5",  # rating for the subtitle, string 0-5
                                    thumbnailImage=xbmc.convertLanguage(result["language"], xbmc.ISO_639_1)
                                    # language flag, ISO_639_1 language + gif extention, e.g - "en.gif"
                                    )
        listitem.setProperty("sync", '{0}'.format("true").lower())  # set to "true" if subtitle is matched by hash,
        # indicates that sub is 100 Comaptible
        listitem.setProperty("hearing_imp",
                             '{0}'.format("false").lower())  # set to "true" if subtitle is for hearing impared

        ## below arguments are optional, it can be used to pass any info needed in download function
        ## anything after "action=download&" will be sent to addon once user clicks listed subtitle to download
        url = "plugin://%s/?action=download&l=%s&f=%s&filename=%s" % (
            __scriptid__, result["language"], md5hash, filename)
        ## add it to list, this can be done as many times as needed for all subtitles found
        xbmcplugin.addDirectoryItem(handle=int(sys.argv[1]), url=url, listitem=listitem, isFolder=False)
开发者ID:NEOhidra,项目名称:service.subtitles.napiprojekt,代码行数:27,代码来源:service.py


示例4: _retrive_subtitles

 def _retrive_subtitles(self, page, item):
     ret = []
     total_downloads = 0
     if page is not None:
         found_subtitles = re.findall(
             'downloadsubtitle\.php\?id=(?P<fid>\d*).*?subt_lang.*?title="(?P<language>.*?)".*?subtitle_title.*?title="(?P<title>.*?)">.*?>(?P<downloads>[^ ]+) הורדות',
             page,
         )
         for (subtitle_id, language, title, downloads) in found_subtitles:
             if xbmc.convertLanguage(heb_to_eng(language), xbmc.ISO_639_2) in item["3let_language"]:
                 subtitle_rate = self._calc_rating(title, item["file_original_path"])
                 total_downloads += int(downloads.replace(",", ""))
                 ret.append(
                     {
                         "lang_index": item["3let_language"].index(
                             xbmc.convertLanguage(heb_to_eng(language), xbmc.ISO_639_2)
                         ),
                         "filename": title,
                         "link": subtitle_id,
                         "language_name": xbmc.convertLanguage(heb_to_eng(language), xbmc.ENGLISH_NAME),
                         "language_flag": xbmc.convertLanguage(heb_to_eng(language), xbmc.ISO_639_1),
                         "ID": subtitle_id,
                         "rating": int(downloads.replace(",", "")),
                         "sync": subtitle_rate >= 4,
                         "hearing_imp": 0,
                     }
                 )
     return ret, total_downloads
开发者ID:roeiba,项目名称:xbmc,代码行数:28,代码来源:SUBUtilities.py


示例5: _retrive_subtitles

 def _retrive_subtitles(self, page, item):
     ret = []
     total_downloads = 0
     if page is not None:
         found_subtitles = re.findall(
             "downloadsubtitle\.php\?id=(?P<fid>\d*).*?subt_lang.*?title=\"(?P<language>.*?)\".*?subtitle_title.*?title=\"(?P<title>.*?)\">.*?>(?P<downloads>[^ ]+) הורדות",
             page)
         for (subtitle_id, language, title, downloads) in found_subtitles:
             if xbmc.convertLanguage(heb_to_eng(language), xbmc.ISO_639_2) in item[
                 "3let_language"]:
                 subtitle_rate = self._calc_rating(title, item["file_original_path"])
                 total_downloads += int(downloads.replace(",", ""))
                 ret.append(
                     {'lang_index': item["3let_language"].index(
                         xbmc.convertLanguage(heb_to_eng(language), xbmc.ISO_639_2)),
                      'filename': title,
                      'link': subtitle_id,
                      'language_name': xbmc.convertLanguage(heb_to_eng(language),
                                                            xbmc.ENGLISH_NAME),
                      'language_flag': xbmc.convertLanguage(heb_to_eng(language),
                                                            xbmc.ISO_639_1),
                      'id': subtitle_id,
                      'rating': int(downloads.replace(",", "")),
                      'sync': subtitle_rate >= 3.8,
                      'hearing_imp': 0,
                      'is_preferred':
                          xbmc.convertLanguage(heb_to_eng(language), xbmc.ISO_639_2) == item['preferredlanguage']
                     })
     return ret, total_downloads
开发者ID:avi1951,项目名称:service.subtitles.subtitle,代码行数:29,代码来源:SUBUtilities.py


示例6: main

def main():
    """Main entry point of the script when it is invoked by XBMC."""

    # Get parameters from XBMC and launch actions
    params = get_params()

    if params['action'] == 'search':
        item = {}
        item['temp']               = False
        item['rar']                = False
        item['year']               = xbmc.getInfoLabel("VideoPlayer.Year")
        item['season']             = str(xbmc.getInfoLabel("VideoPlayer.Season"))
        item['episode']            = str(xbmc.getInfoLabel("VideoPlayer.Episode"))
        item['tvshow']             = normalizeString(xbmc.getInfoLabel("VideoPlayer.TVshowtitle"))
        # Try to get original title
        item['title']              = normalizeString(xbmc.getInfoLabel("VideoPlayer.OriginalTitle"))
        # Full path of a playing file
        item['file_original_path'] = urllib.unquote(xbmc.Player().getPlayingFile().decode('utf-8'))
        item['3let_language']      = []
        item['2let_language']      = []

        for lang in urllib.unquote(params['languages']).decode('utf-8').split(","):
            item['3let_language'].append(xbmc.convertLanguage(lang, xbmc.ISO_639_2))
            item['2let_language'].append(xbmc.convertLanguage(lang, xbmc.ISO_639_1))

        if not item['title']:
            # No original title, get just Title
            item['title'] = normalizeString(xbmc.getInfoLabel("VideoPlayer.Title"))

        if "s" in item['episode'].lower():
            # Check if season is "Special"
            item['season'] = "0"
            item['episode'] = item['episode'][-1:]

        if "http" in item['file_original_path']:
            item['temp'] = True

        elif "rar://" in item['file_original_path']:
            item['rar'] = True
            item['file_original_path'] = os.path.dirname(item['file_original_path'][6:])

        elif "stack://" in item['file_original_path']:
            stackPath = item['file_original_path'].split(" , ")
            item['file_original_path'] = stackPath[0][8:]

        Search(item)

    elif params['action'] == 'download':
        # We pickup all our arguments sent from def Search()
        subs = Download(params["id"], params["filename"])
        # We can return more than one subtitle for multi CD versions, for now
        # we are still working out how to handle that in XBMC core
        for sub in subs:
            listitem = xbmcgui.ListItem(label=sub)
            xbmcplugin.addDirectoryItem(handle=int(sys.argv[1]), url=sub,
                                        listitem=listitem, isFolder=False)

    # Send end of directory to XBMC
    xbmcplugin.endOfDirectory(int(sys.argv[1]))
开发者ID:mikellgonzalez,项目名称:service.subtitles.subdivx,代码行数:59,代码来源:service.py


示例7: search

def search():
    log( __name__, "action 'search' called")
    item = {}
    item['temp']               = False
    item['rar']                = False
    item['year']               = xbmc.getInfoLabel("VideoPlayer.Year")                           # Year
    item['season']             = str(xbmc.getInfoLabel("VideoPlayer.Season"))                    # Season
    item['episode']            = str(xbmc.getInfoLabel("VideoPlayer.Episode"))                   # Episode
    item['tvshow']             = normalizeString(xbmc.getInfoLabel("VideoPlayer.TVshowtitle"))   # Show
    item['title']              = normalizeString(xbmc.getInfoLabel("VideoPlayer.OriginalTitle")) # try to get original title
    item['file_original_path'] = urllib.unquote(xbmc.Player().getPlayingFile().decode('utf-8'))  # Full path of a playing file
    item['3let_language']      = []                                                              # ['scc','eng']
    for lang in urllib.unquote(params['languages']).decode('utf-8').split(","):
        item['3let_language'].append(xbmc.convertLanguage(lang,xbmc.ISO_639_2))
    if item['title'] == "":
        log( __name__, "VideoPlayer.OriginalTitle not found")
        item['title']  = normalizeString(xbmc.getInfoLabel("VideoPlayer.Title"))      # no original title, get just Title
    if item['episode'].lower().find("s") > -1:                                        # Check if season is "Special"
        item['season'] = "0"
        item['episode'] = item['episode'][-1:]
    if ( item['file_original_path'].find("http") > -1 ):
        item['temp'] = True
    elif ( item['file_original_path'].find("rar://") > -1 ):
        item['rar']  = True
        item['file_original_path'] = os.path.dirname(item['file_original_path'][6:])
    log( __name__, item)
    search_subtitles( item['file_original_path'], item['title'], item['tvshow'], item['year'], item['season'], item['episode'], item['3let_language'])
开发者ID:mr-blobby,项目名称:service.subtitles.bierdopje,代码行数:27,代码来源:service.py


示例8: search_by_language

def search_by_language(string, language):
  results     = []
  html_parser = HTMLParser.HTMLParser()

  if language in SUBTITLE_LANGUAGES:
    log('Searching for %s subtitles: %s' % (language, string))

    # Language specific stuff
    search_url    = SUBTITLE_LANGUAGES[language]['search_url']
    regex_pattern = SUBTITLE_LANGUAGES[language]['regex_pattern']
    priority      = SUBTITLE_LANGUAGES[language]['priority']

    # Get content
    content = get_content_from_url(search_url % urllib.quote(string.encode('latin')))

    # Parse results
    pattern = re.compile(regex_pattern)
    matches = pattern.finditer(content)

    # Loop through all matches
    for match in matches:
      results.append({
        'name'          : html_parser.unescape(match.group(2)).decode('latin'),
        'language'      : language,
        'language_code' : xbmc.convertLanguage(language, xbmc.ISO_639_1),
        'download_url'  : match.group(1),
        'priority'      : priority
      })
  else:
    log('Unsupported language: %s' % language)

  return results
开发者ID:luiangel,项目名称:Halowrepo,代码行数:32,代码来源:service.py


示例9: onPlayBackStarted

    def onPlayBackStarted(self):
        check_for_specific = (__addon__.getSetting('check_for_specific').lower() == 'true')
        specific_language = (__addon__.getSetting('selected_language'))
        specific_language = xbmc.convertLanguage(specific_language, xbmc.ISO_639_2)

        if self.run:
            movieFullPath = xbmc.Player().getPlayingFile()
            Debug("movieFullPath '%s'" % movieFullPath)
            xbmc.sleep(1000)
            availableLangs = xbmc.Player().getAvailableSubtitleStreams()
            Debug("availableLangs '%s'" % availableLangs)
            totalTime = xbmc.Player().getTotalTime()
            Debug("totalTime '%s'" % totalTime)
            videoclipAlbum = ''			
            if getSettingAsBool('ExcludeVideoClip'):
                videoclipAlbum = xbmc.InfoTagMusic.getAlbum()
                Debug("videoclipAlbum '%s'" % videoclipAlbum)
			
            if (xbmc.Player().isPlayingVideo() and totalTime > ExcludeTime and (not videoclipAlbum) and ((not xbmc.getCondVisibility("VideoPlayer.HasSubtitles")) or (check_for_specific and not specific_language in availableLangs)) and all(movieFullPath.find (v) <= -1 for v in ignore_words) and (isExcluded(movieFullPath)) ):
                self.run = False
                xbmc.sleep(1000)
                Debug('Started: AutoSearching for Subs')
                xbmc.executebuiltin('XBMC.ActivateWindow(SubtitleSearch)')
            else:
                Debug('Started: Subs found or Excluded')
                self.run = False
开发者ID:Mafarricos,项目名称:service.autosubs,代码行数:26,代码来源:default.py


示例10: search

def search(info, languages):
    """Add subtitles to the list using information gathered with get_info and get_languages"""
    logging.debug("---TUCAN---")
    logging.debug(info)
    url = addictedutils.build_show_url(
        addictedutils.get_show_id(info['tvshow']),
        info['season'],
        addictedutils.build_language_code_string(languages))
    logging.debug(url)
    subs = addictedutils.subs_array(url, info)
    #logging.debug(subs)
    for sub in subs:
        sub_name = sub['showTitle'] + " " + sub['season'] + "x" + sub['episode'] + " " + sub['version']
        sub_params = {
            "action": "download-addicted",
            "link": sub['link'],
            "name": sub_name
        }
        append_subtitle(
            sub_name,
            sub['lang'],
            xbmc.convertLanguage(sub['lang'], xbmc.ISO_639_2),
            sub_params,
            sub['sync'],
            sub['himp'])
开发者ID:iamninja,项目名称:script.service.brokensubs,代码行数:25,代码来源:subtitle.py


示例11: search

    def search(self, item, t, langs):

        fulllang = xbmc.convertLanguage(item['preferredlanguage'], xbmc.ENGLISH_NAME)
        if fulllang == "Persian": fulllang = "Farsi/Persian"
        #xbmc.executebuiltin("Notification(Title," + item['mansearchstr'] + ")")
        QueryString = self.filename;

        if item['mansearch']:
            QueryString = item['mansearchstr'];

        addon = xbmcaddon.Addon();

        if len(QueryString) < 6:
            xbmc.executebuiltin("Notification(" + addon.getLocalizedString(32003) + "," + addon.getLocalizedString(32002) + ")")
            return

        url = "http://www.subtitool.com/api/?query=" + QueryString + "&Lang=" + langs
        subs = urllib.urlopen(url).read()
        DOMTree = minidom.parseString(subs)
        if DOMTree.getElementsByTagName('Subtitle').length == 0:
           try:
            url = "http://www.subtitool.com/api/?query=" + QueryString + "&Lang=" + langs + "&OR=1"
            subs = urllib.urlopen(url).read()
            DOMTree = minidom.parseString(subs)
           except Exception, e:
                log("Subtitool","Not Found OR")

           try:
            url = "http://www.subtitool.com/api/?query=" + QueryString + "&Lang=" + langs
            subs = urllib.urlopen(url).read()
            DOMTree = minidom.parseString(subs)
           except Exception, e:
                log("Subtitool","Not Found")
开发者ID:KianMax,项目名称:service.subtitles.subtitool,代码行数:33,代码来源:SubTiTool.py


示例12: get_language

def get_language(abbrev):    
    try:
        lang_string = (key for key,value in LANGUAGES.items() if value == abbrev).next()
    except:
        lang_string = xbmc.convertLanguage(abbrev, xbmc.ENGLISH_NAME)
    if not lang_string:
        lang_string = 'n/a'
    return lang_string
开发者ID:mani49ers559,项目名称:PseudoTV_Live,代码行数:8,代码来源:language.py


示例13: search

	def search(self,item):

		if item['mansearch']:
			title = item['mansearchstr']
			dialog = xbmcgui.Dialog()
			item['season'] = dialog.numeric(0, self._t(32111), item['season'])
			item['episode'] = dialog.numeric(0, self._t(32112), item['episode'])
		else:
			title = self.normalize_input_title(item['tvshow'])
			if self.addon.getSetting("ignore_articles") == "true" and re.match(r'^The ',title,re.IGNORECASE):
				log(__name__, "Ignoring The in Title")
				title = re.sub(r'(?i)^The ',"", title)

		if not title or not item['season'] or not item['episode']:
			xbmc.executebuiltin("XBMC.Notification(%s,%s,5000,%s)" % (
						self.addon.getAddonInfo('name'), self._t(32110),
						os.path.join(xbmc.translatePath(self.addon.getAddonInfo('path')).decode("utf-8"),'icon.png')
			))
			log(__name__, ["Input validation error", title, item['season'], item['episode']])
			return results_with_stats(None, self.addon, title, item)

		tvshow_url = self.search_show_url(title)
		if tvshow_url == None: return results_with_stats(None, self.addon, title, item)

		file_size = get_file_size(item['file_original_path'], item['rar'])
		log(__name__, "File size: %s" % file_size)

		found_season_subtitles = self.search_season_subtitles(tvshow_url,item['season'])
		log(__name__, ["Season filter", found_season_subtitles])

		episode_subtitle_list = self.filter_episode_from_season_subtitles(found_season_subtitles,item['season'],item['episode'])
		log(__name__, ["Episode filter", episode_subtitle_list])
		if episode_subtitle_list == None: return results_with_stats(None, self.addon, title, item)

		lang_filetred_episode_subtitle_list = self.filter_subtitles_by_language(item['3let_language'], episode_subtitle_list)
		log(__name__, ["Language filter", lang_filetred_episode_subtitle_list])
		if lang_filetred_episode_subtitle_list == None: return results_with_stats(None, self.addon, title, item)

		max_down_count = self.detect_max_download_stats(lang_filetred_episode_subtitle_list)

		result_subtitles = []
		for episode_subtitle in lang_filetred_episode_subtitle_list['versions']:

			print_out_filename = episode_subtitle['rip'] + " by " + episode_subtitle['author']
			if episode_subtitle['notes']: print_out_filename += " (" + episode_subtitle['notes'] + ")"

			result_subtitles.append({
				'filename': HTMLParser.HTMLParser().unescape(print_out_filename),
				'link': episode_subtitle['link'],
				'lang': episode_subtitle['lang'],
				'rating': str(episode_subtitle['down_count']*5/max_down_count) if max_down_count > 0 else "0",
				'sync': (episode_subtitle['file_size'] == file_size and file_size > 0),
				'lang_flag': xbmc.convertLanguage(episode_subtitle['lang'],xbmc.ISO_639_1),
			})

		log(__name__,["Search result", result_subtitles])

		return results_with_stats(result_subtitles, self.addon, title, item)
开发者ID:beam,项目名称:service.subtitles.serialzone.cz,代码行数:58,代码来源:SerialZoneClient.py


示例14: display_movie

def display_movie(title, movieurl):
    divpname = re.search(r"/title/(.*.)", movieurl).group(1)
    log('MOVIE ID: %s' % divpname)
    (req, page) = load_url(movieurl)
    subtitles_list = []

    tb = page.find(id='subtable')
    links = tb.findAll('a', class_='download-btn')
    for link in links:
        addr = link['href']
        s_tr = link.find_parent('tr')
        tr_id = re.sub('row_id', '', s_tr['id'])
        s_tr2 = page.find('tr', id="row_id_alt%s" % tr_id)
        s_tr3 = page.find('tr', id="row_id_note%s" % tr_id)
        lantext = s_tr.find('img')['src']
        if lantext:
            if "en.png" in lantext:
                language = "English"
                lan_short = "en"
            elif "tr.png" in lantext:
                language = "Turkish"
                lan_short = "tr"
            else:
                raise ValueError("unsupported language: %s" % lantext)
            filename = u"%s.%s" % (title, lan_short)
            dtd = s_tr3.find('td').text
            description = dtd[dtd.index(' :') + 2:dtd.index(' - ')]
            log('description and filename:'),
            log(description)
            log(filename)
            l_item = xbmcgui.ListItem(
                label=language,  # language name for the found subtitle
                label2=description,  # file name for the found subtitle
                iconImage="0",  # rating for the subtitle, string 0-5
                thumbnailImage=xbmc.convertLanguage(language, xbmc.ISO_639_1)
            )

            # set to "true" if subtitle is for hearing impared
            l_item.setProperty("hearing_imp", '{0}'.format("false").lower())

            subtitles_list.append(l_item)

            url = "plugin://%s/?action=download&link=%s&lang=%s&description=%s&season=%s" % (
                __scriptid__,
                addr,
                lan_short,
                normalize_filename(filename),
                ""
            )

            xbmcplugin.addDirectoryItem(
                handle=int(sys.argv[1]),
                url=url,
                listitem=l_item,
                isFolder=False
            )
    log("PlanetDP: found %d subtitles from %s" % (len(subtitles_list), len(links)))
开发者ID:korayal,项目名称:service.subtitles.divxplanet,代码行数:57,代码来源:service.py


示例15: get_abbrev

def get_abbrev(lang_string):
    try:
        language_abbrev = xbmc.convertLanguage(lang_string, xbmc.ISO_639_1)
    except:
        language_abbrev = REAL_SETTINGS.getSetting('limit_preferred_language')
    if language_abbrev in LANGUAGES:
        return LANGUAGES[language_abbrev]
    else:
        language_abbrev = 'en' ### Default to English if conversion fails
    return language_abbrev
开发者ID:mani49ers559,项目名称:PseudoTV_Live,代码行数:10,代码来源:language.py


示例16: get_languages_dict

def get_languages_dict(languages_param):
    langs = {}
    for lang in languages_param.split(','):
        if lang == "Portuguese (Brazil)":
            langs["pob"] = lang
        elif lang == "Greek":
            langs["ell"] = lang
        else:
            langs[xbmc.convertLanguage(lang, xbmc.ISO_639_2)] = lang
    return langs
开发者ID:realgam3,项目名称:service.subtitles.bsplayer,代码行数:10,代码来源:utils.py


示例17: get

def get(name, imdb, season, episode):
    try:
        langs = []
        try: langs.append(langDict[control.setting('sublang1')])
        except: pass
        try: langs.append(langDict[control.setting('sublang2')])
        except: pass

        try: subLang = xbmc.Player().getSubtitles()
        except: subLang = ''
        if subLang == langs[0]: raise Exception()

        server = xmlrpclib.Server('http://api.opensubtitles.org/xml-rpc', verbose=0)
        token = server.LogIn('', '', 'en', 'XBMC_Subtitles_v1')['token']

        sublanguageid = ','.join(langs) ; imdbid = re.sub('[^0-9]', '', imdb)

        if not (season == '' or episode == ''):
            result = server.SearchSubtitles(token, [{'sublanguageid': sublanguageid, 'imdbid': imdbid, 'season': season, 'episode': episode}])['data']
            fmt = ['hdtv']
        else:
            result = server.SearchSubtitles(token, [{'sublanguageid': sublanguageid, 'imdbid': imdbid}])['data']
            try: vidPath = xbmc.Player().getPlayingFile()
            except: vidPath = ''
            fmt = re.split('\.|\(|\)|\[|\]|\s|\-', vidPath)
            fmt = [i.lower() for i in fmt]
            fmt = [i for i in fmt if i in quality]

        filter = []
        result = [i for i in result if i['SubSumCD'] == '1']

        for lang in langs:
            filter += [i for i in result if i['SubLanguageID'] == lang and any(x in i['MovieReleaseName'].lower() for x in fmt)]
            filter += [i for i in result if i['SubLanguageID'] == lang and any(x in i['MovieReleaseName'].lower() for x in quality)]
            filter += [i for i in result if i['SubLanguageID'] == lang]

        try: lang = xbmc.convertLanguage(filter[0]['SubLanguageID'], xbmc.ISO_639_1)
        except: lang = filter[0]['SubLanguageID']

        content = [filter[0]['IDSubtitleFile'],]
        content = server.DownloadSubtitles(token, content)
        content = base64.b64decode(content['data'][0]['data'])
        content = zlib.decompressobj(16+zlib.MAX_WBITS).decompress(content)

        subtitle = xbmc.translatePath('special://temp/')
        subtitle = os.path.join(subtitle, 'TemporarySubs.%s.srt' % lang)
        
        file = control.openFile(subtitle, 'w')
        file.write(str(content))
        file.close()

        xbmc.sleep(1000)
        xbmc.Player().setSubtitles(subtitle)
    except:
        pass
开发者ID:Mendim,项目名称:tdbaddon,代码行数:55,代码来源:subtitles.py


示例18: create_subs_list

def create_subs_list(subs):
  for sub in subs:
    filename = "[" + str(sub["version"].encode('utf8')) + "]" + str(sub["showTitle"].encode('utf8')) + " - " + str(sub["episodeTitle"].encode('utf8')) + " " + "S" + str(sub["season"]) + "E" + str(format(int(sub["episode"]), "02d"))
    listitem = xbmcgui.ListItem(label = sub["lang"],
    							label2	= filename,
    							iconImage = "",
    							thumbnailImage = xbmc.convertLanguage(sub['lang'], xbmc.ISO_639_1))
    listitem.setProperty("hearing_imp", sub["hi"])
    url = u'plugin://' + __scriptid__ + u'/?action=download&link=' + sub["link"] + u'&filename=' + filename.decode('utf8')
    # url = u'plugin://%s/?action=download&link=%s&filename=%s' % (__scriptid__.encode('utf8'), sub["link"].encode('utf8'), str(filename.encode('utf8')))
    xbmcplugin.addDirectoryItem(handle=int(sys.argv[1]),url=url,listitem=listitem,isFolder=False)
开发者ID:iamninja,项目名称:script.service.brokensubs,代码行数:11,代码来源:addon_old.py


示例19: convert

def convert(item):
    ret = {'filename': item['fnev'], 'name': item['nev'].strip(), 'language_hun': item['language'], 'id': item['felirat'],
           'uploader': item['feltolto'].strip(), 'hearing': False, 'language_eng': lang_hun2eng(item['language'])}

    score = int(item['pontos_talalat'], 2)
    ret['score'] = score
    ret['rating'] = str(score * 5 / 7)
    ret['sync'] = score >= 6
    ret['flag'] = xbmc.convertLanguage(ret['language_eng'], xbmc.ISO_639_1)
    ret['seasonpack'] = item['evadpakk'] == '1'

    return ret
开发者ID:noba3,项目名称:KoTos,代码行数:12,代码来源:service.py


示例20: getsubtitles

def getsubtitles(name, tag, season, episode,lang1=None,lang2=None):
	quality = ['bluray', 'hdrip', 'brrip', 'bdrip', 'dvdrip', 'webrip', 'hdtv']
	langDict = {'Afrikaans': 'afr', 'Albanian': 'alb', 'Arabic': 'ara', 'Armenian': 'arm', 'Basque': 'baq', 'Bengali': 'ben', 'Bosnian': 'bos', 'Breton': 'bre', 'Bulgarian': 'bul', 'Burmese': 'bur', 'Catalan': 'cat', 'Chinese': 'chi', 'Croatian': 'hrv', 'Czech': 'cze', 'Danish': 'dan', 'Dutch': 'dut', 'English': 'eng', 'Esperanto': 'epo', 'Estonian': 'est', 'Finnish': 'fin', 'French': 'fre', 'Galician': 'glg', 'Georgian': 'geo', 'German': 'ger', 'Greek': 'ell', 'Hebrew': 'heb', 'Hindi': 'hin', 'Hungarian': 'hun', 'Icelandic': 'ice', 'Indonesian': 'ind', 'Italian': 'ita', 'Japanese': 'jpn', 'Kazakh': 'kaz', 'Khmer': 'khm', 'Korean': 'kor', 'Latvian': 'lav', 'Lithuanian': 'lit', 'Luxembourgish': 'ltz', 'Macedonian': 'mac', 'Malay': 'may', 'Malayalam': 'mal', 'Manipuri': 'mni', 'Mongolian': 'mon', 'Montenegrin': 'mne', 'Norwegian': 'nor', 'Occitan': 'oci', 'Persian': 'per', 'Polish': 'pol', 'Portuguese': 'por,pob', 'Portuguese(Brazil)': 'pob,por', 'Romanian': 'rum', 'Russian': 'rus', 'Serbian': 'scc', 'Sinhalese': 'sin', 'Slovak': 'slo', 'Slovenian': 'slv', 'Spanish': 'spa', 'Swahili': 'swa', 'Swedish': 'swe', 'Syriac': 'syr', 'Tagalog': 'tgl', 'Tamil': 'tam', 'Telugu': 'tel', 'Thai': 'tha', 'Turkish': 'tur', 'Ukrainian': 'ukr', 'Urdu': 'urd'}
	print '##name',name
	print '##tag',tag	
	langs = []
	try: langs.append(langDict[lang1])
	except: pass
	try: langs.append(langDict[lang2])
	except: pass
	langs = ','.join(langs)

	import xmlrpclib
	counterloop = 0
	result = []
	while not result and counterloop <=5 :
		try:
			server = xmlrpclib.Server('http://api.opensubtitles.org/xml-rpc', verbose=0)
			token = server.LogIn('', '', 'en', 'XBMC_Subtitles_v1')['token']
			if not (season == '' or episode == ''): result = server.SearchSubtitles(token, [{'query': name, 'sublanguageid': langs, 'season': season, 'episode': episode}])['data']
			else: result = server.SearchSubtitles(token, [{'query': name, 'sublanguageid': langs }])['data']
			result = [i for i in result if i['SubSumCD'] == '1']
		except: pass
		counterloop = counterloop + 1
		print '##counterloop',counterloop
	#print '#all',result
	
	subtitles = []
	for lang in langs.split(','):
		filter = [i for i in result if lang == i['SubLanguageID']]
		if filter == []: continue
		print tag
		subtitles += [i for i in filter if tag.lower() in i['MovieReleaseName'].lower()]	
		print '#tagresult',subtitles
		for q in quality: subtitles += [i for i in filter if q in i['MovieReleaseName'].lower()]
		subtitles += [i for i in filter if not any(x in i['MovieReleaseName'].lower() for x in quality)]
		try: lang = xbmc.convertLanguage(lang, xbmc.ISO_639_1)
		except: pass
		break
		
	import zlib, base64
	content = [subtitles[0]["IDSubtitleFile"],]
	content = server.DownloadSubtitles(token, content)
	content = base64.b64decode(content['data'][0]['data'])
	content = zlib.decompressobj(16+zlib.MAX_WBITS).decompress(content)

	subtitle = xbmc.translatePath('special://temp/')
	subtitle = os.path.join(subtitle, 'TemporarySubs.%s.srt' % lang)
	file = open(subtitle, 'wb')
	file.write(content)
	file.close()

	return subtitle
开发者ID:Mafarricos,项目名称:xbmctorrent,代码行数:53,代码来源:subtitles.py



注:本文中的xbmc.convertLanguage函数示例由纯净天空整理自Github/MSDocs等源码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。


鲜花

握手

雷人

路过

鸡蛋
该文章已有0人参与评论

请发表评论

全部评论

专题导读
上一篇:
Python xbmc.executeJSONRPC函数代码示例发布时间:2022-05-26
下一篇:
Python tools.TestRuntime类代码示例发布时间:2022-05-26
热门推荐
阅读排行榜

扫描微信二维码

查看手机版网站

随时了解更新最新资讯

139-2527-9053

在线客服(服务时间 9:00~18:00)

在线QQ客服
地址:深圳市南山区西丽大学城创智工业园
电邮:jeky_zhao#qq.com
移动电话:139-2527-9053

Powered by 互联科技 X3.4© 2001-2213 极客世界.|Sitemap