本文整理汇总了Python中resources.lib.modules.control.openFile函数的典型用法代码示例。如果您正苦于以下问题:Python openFile函数的具体用法?Python openFile怎么用?Python openFile使用的例子?那么恭喜您, 这里精选的函数代码示例或许可以为您提供帮助。
在下文中一共展示了openFile函数的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Python代码示例。
示例1: addView
def addView(content):
try:
skin = control.skin
skinPath = control.skinPath
xml = os.path.join(skinPath,'addon.xml')
file = control.openFile(xml)
read = file.read().replace('\n','')
file.close()
try: src = re.compile('defaultresolution="(.+?)"').findall(read)[0]
except: src = re.compile('<res.+?folder="(.+?)"').findall(read)[0]
src = os.path.join(skinPath, src)
src = os.path.join(src, 'MyVideoNav.xml')
file = control.openFile(src)
read = file.read().replace('\n','')
file.close()
views = re.compile('<views>(.+?)</views>').findall(read)[0]
views = [int(x) for x in views.split(',')]
for view in views:
label = control.infoLabel('Control.GetLabel(%s)' % (view))
if not (label == '' or label == None): break
record = (skin, content, str(view))
control.makeFile(control.dataPath)
dbcon = database.connect(control.viewsFile)
dbcur = dbcon.cursor()
dbcur.execute("CREATE TABLE IF NOT EXISTS views (""skin TEXT, ""view_type TEXT, ""view_id TEXT, ""UNIQUE(skin, view_type)"");")
dbcur.execute("DELETE FROM views WHERE skin = '%s' AND view_type = '%s'" % (record[0], record[1]))
dbcur.execute("INSERT INTO views Values (?, ?, ?)", record)
dbcon.commit()
viewName = control.infoLabel('Container.Viewmode')
control.infoDialog(control.lang(30491).encode('utf-8'), heading=viewName)
except:
return
示例2: strmFile
def strmFile(self, i):
try:
name, title, year, imdb, tmdb = i["title"], i["title"], i["year"], i["imdb"]
sysname, systitle = urllib.quote_plus(name), urllib.quote_plus(title)
transname = name.translate(None, '\/:*?"<>|').strip(".")
content = "%s?action=play&name=%s&title=%s&year=%s&imdb=%s" % (sys.argv[0], sysname, systitle, year, imdb)
control.makeFile(self.library_folder)
folder = os.path.join(self.library_folder, transname)
control.makeFile(folder)
try:
if not "ftp://" in folder:
raise Exception()
from ftplib import FTP
ftparg = re.compile("ftp://(.+?):(.+?)@(.+?):?(\d+)?/(.+/?)").findall(folder)
ftp = FTP(ftparg[0][2], ftparg[0][0], ftparg[0][1])
try:
ftp.cwd(ftparg[0][4])
except:
ftp.mkd(ftparg[0][4])
ftp.quit()
except:
pass
stream = os.path.join(folder, transname + ".strm")
file = control.openFile(stream, "w")
file.write(str(content))
file.close()
except:
pass
示例3: developer
def developer(self):
try:
url = os.path.join(control.dataPath, 'testings.xml')
f = control.openFile(url) ; result = f.read() ; f.close()
self.list = self.phoenix_list('', result=result)
self.addDirectory(self.list)
return self.list
except:
pass
示例4: developer
def developer(self):
try:
url = os.path.join(control.dataPath, 'testings.xml')
f = control.openFile(url) ; result = f.read() ; f.close()
self.list = self.streamhub_list('', result=result)
for i in self.list: i.update({'content': 'videos'})
self.addDirectory(self.list)
return self.list
except:
pass
示例5: setSettings
def setSettings():
try:
control.makeFile(control.dataPath)
settingsFile = control.settingsFile
file = control.openFile(settingsFile) ; read = file.read().splitlines() ; file.close()
write = unicode( '<settings>' + '\n', 'UTF-8' )
for line in read:
if len(re.findall('<settings>', line)) > 0: continue
elif len(re.findall('</settings>', line)) > 0: continue
write += unicode(line.rstrip() + '\n', 'UTF-8')
if not 'id="droid"' in write: write += unicode(' <setting id="droid" value="false" />' + '\n', 'UTF-8')
write += unicode('</settings>' + '\n', 'UTF-8')
file = control.openFile(settingsFile, 'w') ; file.write(str(write)) ; file.close()
except:
return
示例6: write_file
def write_file(path, content):
try:
path = xbmc.makeLegalFilename(path)
if not isinstance(content, basestring):
content = str(content)
file = control.openFile(path, 'w')
file.write(str(content))
file.close()
except Exception as e:
pass
示例7: add
def add(result, title):
link = result['file'].encode('utf-8')
name = os.path.basename(link)
try: videoQuality = int(result['streamdetails']['video'][0]['width'])
except: videoQuality = -1
threshold = 20 # Some videos are a bit smaller.
if videoQuality >= 8192 - threshold: videoQuality = 'HD8K'
elif videoQuality >= 6144 - threshold: videoQuality = 'HD6K'
elif videoQuality >= 3840 - threshold: videoQuality = 'HD4K'
elif videoQuality >= 2048 - threshold: videoQuality = 'HD2K'
elif videoQuality >= 1920 - threshold: videoQuality = 'HD1080'
elif videoQuality >= 1280 - threshold: videoQuality = 'HD720'
else: videoQuality = 'SD'
try: videoCodec = result['streamdetails']['video'][0]['codec']
except: videoCodec = None
try: video3D = len(result['streamdetails']['video'][0]['stereomode']) > 0
except: video3D = None
try: audioChannels = result['streamdetails']['audio'][0]['channels']
except: audioChannels = None
try: audioCodec = result['streamdetails']['audio'][0]['codec']
except: audioCodec = None
try: subtitle = len(result['streamdetails']['subtitle']) > 0
except: subtitle = None
try:
file = control.openFile(link)
size = file.size()
file.close()
except:
size = None
try:
meta = metadata.Metadata(name = name, title = title, link = link, size = size)
meta.setVideoQuality(videoQuality)
meta.setVideoCodec(videoCodec)
meta.setVideo3D(video3D)
meta.setAudioChannels(audioChannels)
meta.setAudioCodec(audioCodec)
meta.setSubtitlesSoft(subtitle)
except:
pass
sources.append({'source': '0', 'quality': meta.videoQuality(), 'language' : self.language[0], 'url': link, 'file' : name, 'local': True, 'direct': True, 'debridonly': False, 'info' : meta.information()})
示例8: addView
def addView(content):
try:
skin = control.skin
skinPath = control.kodiSkinPath
xml = os.path.join(skinPath,'addon.xml')
file = control.openFile(xml)
read = file.read().replace('\n','')
file.close()
try: src = re.compile('defaultresolution="(.+?)"').findall(read)[0]
except: src = re.compile('<res.+?folder="(.+?)"').findall(read)[0]
src = os.path.join(skinPath, src)
src = os.path.join(src, 'MyVideoNav.xml')
file = control.openFile(src)
read = file.read().replace('\n','')
file.close()
views = re.compile('<views>(.+?)</views>').findall(read)[0]
views = [int(x) for x in views.split(',')]
for view in views:
label = control.infoLabel('Control.GetLabel(%s)' % (view))
if not (label == '' or label == None): break
record = (skin, content, str(view))
control.makeFile(control.dataPath)
dbcon = database.connect(control.viewsFile)
dbcur = dbcon.cursor()
dbcur.execute("CREATE TABLE IF NOT EXISTS views (""skin TEXT, ""view_type TEXT, ""view_id TEXT, ""UNIQUE(skin, view_type)"");")
dbcur.execute("DELETE FROM views WHERE skin = '%s' AND view_type = '%s'" % (record[0], record[1]))
dbcur.execute("INSERT INTO views Values (?, ?, ?)", record)
dbcon.commit()
viewName = control.infoLabel('Container.Viewmode')
skinName = control.addon(skin).getAddonInfo('name')
skinIcon = control.addon(skin).getAddonInfo('icon')
interface.Dialog.notification(title = 33586, message = interface.Translation.string(33587) + ': ' + str(viewName), icon = interface.Dialog.IconSuccess)
except:
return
示例9: getDirectory
def getDirectory(url):
f = control.openFile(url)
result = f.read()
f.close()
result = str(result).replace('\r','').replace('\n','').replace('\t','').replace(' ','')
fanart = '0'
content = 'movies'
items = re.compile('<item>(.+?)</item>').findall(result)
try: sort = re.findall('<sort>(.+?)</sort>', result)[0]
except: sort = ''
if sort == 'yes': items = sorted(items)
totalItems = len(items)
for item in items:
try:
data = {}
try: name = re.findall('<title>(.+?)</title>', item)[0]
except: continue
url = re.findall('<link>(.+?)</link>', item)[0]
try: image = image2 = re.findall('<thumbnail>(.+?)</thumbnail>', item)[0]
except: image = image2 = '0'
try: fanart2 = re.findall('<fanart>(.+?)</fanart>', item)[0]
except: fanart2 = fanart
try:
title = cleantitle(name).encode('utf-8')
data = {'title': title}
title, year = re.compile('(.+?)[(](\d{4})[)]').findall(name)[0]
title = cleantitle(title).encode('utf-8')
data = {'title': title, 'year': year}
except:
pass
addDirectoryItem(name, url, 'phResolveUrl', image, image2, fanart2, content, data, totalItems=totalItems, isFolder=False)
except:
pass
endDirectory(content, True)
示例10: resolve
def resolve(self, url):
try:
content = [
'#EXTM3U',
'#EXT-X-MEDIA:TYPE=AUDIO,GROUP-ID="{audio_group}",DEFAULT=YES,AUTOSELECT=YES,NAME="Stream 1",URI="{audio_stream}"',
'',
'#EXT-X-STREAM-INF:PROGRAM-ID=1,BANDWIDTH={bandwidth},NAME="{stream_name}",AUDIO="{audio_group}"',
'{video_stream}']
url = urlparse.parse_qs(url)
url = dict([(key, url[key][0]) if url[key] else (key, '') for key in url])
url = ('\n'.join(content)).format(**url)
path = os.path.join(control.dataPath, 'torbase.m3u8')
control.makeFile(control.dataPath) ; control.deleteFile(path)
file = control.openFile(path, 'w') ; file.write(url) ; file.close()
return path
except:
return
示例11: get
def get(name, imdb, season, episode):
try:
langs = []
try:
try: langs = langDict[control.setting('subtitles.lang.1')].split(',')
except: langs.append(langDict[control.setting('subtitles.lang.1')])
except: pass
try:
try: langs = langs + langDict[control.setting('subtitles.lang.2')].split(',')
except: langs.append(langDict[control.setting('subtitles.lang.2')])
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 = str(zlib.decompressobj(16+zlib.MAX_WBITS).decompress(content))
subtitle = xbmc.translatePath('special://temp/')
subtitle = os.path.join(subtitle, 'TemporarySubs.%s.srt' % lang)
codepage = codePageDict.get(lang, '')
if codepage and control.setting('subtitles.utf') == 'true':
try:
content_encoded = codecs.decode(content, codepage)
content = codecs.encode(content_encoded, 'utf-8')
except:
pass
file = control.openFile(subtitle, 'w')
file.write(str(content))
file.close()
xbmc.sleep(1000)
xbmc.Player().setSubtitles(subtitle)
except:
pass
示例12: process
def process(self, url, direct=True):
try:
if not any(i in url for i in ['.jpg', '.png', '.gif']): raise Exception()
ext = url.split('?')[0].split('&')[0].split('|')[0].rsplit('.')[-1].replace('/', '').lower()
if not ext in ['jpg', 'png', 'gif']: raise Exception()
try:
i = os.path.join(control.dataPath,'img')
control.deleteFile(i)
f = control.openFile(i, 'w')
f.write(client.request(url))
f.close()
control.execute('ShowPicture("%s")' % i)
return False
except:
return
except:
pass
try:
r, x = re.findall('(.+?)\|regex=(.+?)$', url)[0]
x = regex.fetch(x)
r += urllib.unquote_plus(x)
if not '</regex>' in r: raise Exception()
u = regex.resolve(r)
if not u == None: url = u
except:
pass
try:
if not url.startswith('rtmp'): raise Exception()
if len(re.compile('\s*timeout=(\d*)').findall(url)) == 0: url += ' timeout=10'
return url
except:
pass
try:
if not any(i in url for i in ['.m3u8', '.f4m', '.ts']): raise Exception()
ext = url.split('?')[0].split('&')[0].split('|')[0].rsplit('.')[-1].replace('/', '').lower()
if not ext in ['m3u8', 'f4m', 'ts']: raise Exception()
return url
except:
pass
try:
preset = re.findall('<preset>(.+?)</preset>', url)[0]
if not 'search' in preset: raise Exception()
title, year, imdb = re.findall('<title>(.+?)</title>', url)[0], re.findall('<year>(.+?)</year>', url)[0], re.findall('<imdb>(.+?)</imdb>', url)[0]
try: tvdb, tvshowtitle, premiered, season, episode = re.findall('<tvdb>(.+?)</tvdb>', url)[0], re.findall('<tvshowtitle>(.+?)</tvshowtitle>', url)[0], re.findall('<premiered>(.+?)</premiered>', url)[0], re.findall('<season>(.+?)</season>', url)[0], re.findall('<episode>(.+?)</episode>', url)[0]
except: tvdb = tvshowtitle = premiered = season = episode = None
direct = False
quality = 'HD' if not preset == 'searchsd' else 'SD'
from resources.sources import sources
u = sources().getSources(title, year, imdb, tvdb, season, episode, tvshowtitle, premiered, quality)
if not u == None: return u
except:
pass
try:
from resources.sources import sources
u = sources().getURISource(url)
if not u == False: direct = False
if u == None or u == False: raise Exception()
return u
except:
pass
try:
if not '.google.com' in url: raise Exception()
from resources.lib.modules import directstream
u = directstream.google(url)[0]['url']
return u
except:
pass
try:
if not 'filmon.com/' in url: raise Exception()
from resources.lib.modules import filmon
u = filmon.resolve(url)
return u
except:
pass
try:
if not 'uptostream/' in url: raise Exception()
from resources.lib.modules import filmon
u = url.replace('uptostream','uptobox')
return u
except:
pass
#.........这里部分代码省略.........
示例13: process
def process(self, url, direct=True):
try:
if not any(i in url for i in ['.jpg', '.png', '.gif']): raise Exception()
ext = url.split('?')[0].split('&')[0].split('|')[0].rsplit('.')[-1].replace('/', '').lower()
if not ext in ['jpg', 'png', 'gif']: raise Exception()
try:
i = os.path.join(control.dataPath,'img')
control.deleteFile(i)
f = control.openFile(i, 'w')
f.write(client.request(url))
f.close()
control.execute('ShowPicture("%s")' % i)
return False
except:
return
except:
pass
try:
r, x = re.findall('(.+?)\|regex=(.+?)$', url)[0]
x = regex.fetch(x)
r += urllib.unquote_plus(x)
if not '</regex>' in r: raise Exception()
u = regex.resolve(r)
if not u == None: url = u
except:
pass
try:
if not url.startswith('rtmp'): raise Exception()
if len(re.compile('\s*timeout=(\d*)').findall(url)) == 0: url += ' timeout=10'
return url
except:
pass
try:
if not any(i in url for i in ['.m3u8', '.f4m', '.ts']): raise Exception()
ext = url.split('?')[0].split('&')[0].split('|')[0].rsplit('.')[-1].replace('/', '').lower()
if not ext in ['m3u8', 'f4m', 'ts']: raise Exception()
return url
except:
pass
try:
preset = re.findall('<preset>(.+?)</preset>', url)[0]
if not 'search' in preset: raise Exception()
title, year, imdb = re.findall('<title>(.+?)</title>', url)[0], re.findall('<year>(.+?)</year>', url)[0], re.findall('<imdb>(.+?)</imdb>', url)[0]
try: tvdb, tvshowtitle, premiered, season, episode = re.findall('<tvdb>(.+?)</tvdb>', url)[0], re.findall('<tvshowtitle>(.+?)</tvshowtitle>', url)[0], re.findall('<premiered>(.+?)</premiered>', url)[0], re.findall('<season>(.+?)</season>', url)[0], re.findall('<episode>(.+?)</episode>', url)[0]
except: tvdb = tvshowtitle = premiered = season = episode = None
direct = False
quality = 'HD' if not preset == 'searchsd' else 'SD'
from resources.lib.modules import sources
u = sources.sources().getSources(title, year, imdb, tvdb, season, episode, tvshowtitle, premiered, quality)
if not u == None: return u
except:
pass
try:
from resources.lib.modules import sources
u = sources.sources().getURISource(url)
if not u == False: direct = False
if u == None or u == False: raise Exception()
return u
except:
pass
try:
if not '.google.com' in url: raise Exception()
from resources.lib.modules import directstream
u = directstream.google(url)[0]['url']
return u
except:
pass
try:
if not 'filmon.com/' in url: raise Exception()
from resources.lib.modules import filmon
u = filmon.resolve(url)
return u
except:
pass
try:
try: headers = dict(urlparse.parse_qsl(url.rsplit('|', 1)[1]))
except: headers = dict('')
if not url.startswith('http'): raise Exception()
result = client.request(url.split('|')[0], headers=headers, output='headers', timeout='20')
if 'Content-Type' in result and not 'html' in result['Content-Type']: raise Exception()
#.........这里部分代码省略.........
示例14: update
def update(self, query=None, info="true"):
if not query == None:
control.idle()
try:
items = []
season, episode = [], []
show = [os.path.join(self.library_folder, i) for i in control.listDir(self.library_folder)[0]]
for s in show:
try:
season += [os.path.join(s, i) for i in control.listDir(s)[0]]
except:
pass
for s in season:
try:
episode.append([os.path.join(s, i) for i in control.listDir(s)[1] if i.endswith(".strm")][-1])
except:
pass
for file in episode:
try:
file = control.openFile(file)
read = file.read()
read = read.encode("utf-8")
file.close()
if not read.startswith(sys.argv[0]):
raise Exception()
params = dict(urlparse.parse_qsl(read.replace("?", "")))
try:
tvshowtitle = params["tvshowtitle"]
except:
tvshowtitle = None
try:
tvshowtitle = params["show"]
except:
pass
if tvshowtitle == None or tvshowtitle == "":
raise Exception()
year, imdb, tvdb = params["year"], params["imdb"], params["tvdb"]
imdb = "tt" + re.sub("[^0-9]", "", str(imdb))
try:
tmdb = params["tmdb"]
except:
tmdb = "0"
try:
tvrage = params["tvrage"]
except:
tvrage = "0"
items.append(
{
"tvshowtitle": tvshowtitle,
"year": year,
"imdb": imdb,
"tmdb": tmdb,
"tvdb": tvdb,
"tvrage": tvrage,
}
)
except:
pass
items = [i for x, i in enumerate(items) if i not in items[x + 1 :]]
if len(items) == 0:
raise Exception()
except:
return
try:
lib = control.jsonrpc(
'{"jsonrpc": "2.0", "method": "VideoLibrary.GetTVShows", "params": {"properties" : ["imdbnumber", "title", "year"]}, "id": 1}'
)
lib = unicode(lib, "utf-8", errors="ignore")
lib = json.loads(lib)["result"]["tvshows"]
except:
return
if (
info == "true"
and not control.condVisibility("Window.IsVisible(infodialog)")
and not control.condVisibility("Player.HasVideo")
):
control.infoDialog(control.lang(30422).encode("utf-8"), time=10000000)
self.infoDialog = True
try:
control.makeFile(control.dataPath)
dbcon = database.connect(control.libcacheFile)
dbcur = dbcon.cursor()
dbcur.execute("CREATE TABLE IF NOT EXISTS tvshows (" "id TEXT, " "items TEXT, " "UNIQUE(id)" ");")
except:
return
#.........这里部分代码省略.........
示例15: process
def process(self, url, direct=True):
try:
if not any(i in url for i in ['.jpg', '.png', '.gif']): raise Exception()
ext = url.split('?')[0].split('&')[0].split('|')[0].rsplit('.')[-1].replace('/', '').lower()
if not ext in ['jpg', 'png', 'gif']: raise Exception()
try:
dialog = None
dialog = control.progressDialog
dialog.create(control.addonInfo('name'), control.lang(30732).encode('utf-8'))
dialog.update(0)
i = os.path.join(control.dataPath,'img')
control.deleteFile(i)
f = control.openFile(i, 'w')
f.write(client.request(url))
f.close()
dialog.close()
control.execute('ShowPicture("%s")' % i)
return True
except:
return
except:
pass
try:
dialog = None
dialog = control.progressDialog
dialog.create(control.addonInfo('name'), control.lang(30726).encode('utf-8'))
dialog.update(0)
except:
pass
try:
if not '</regex>' in url: raise Exception()
from resources.lib.modules import regex
u = regex.resolve(url)
if not u == None: url = u
except:
pass
try:
if not url.startswith('rtmp'): raise Exception()
if len(re.compile('\s*timeout=(\d*)').findall(url)) == 0: url += ' timeout=10'
try: dialog.close()
except: pass
return url
except:
pass
try:
if not any(i in url for i in ['.m3u8', '.f4m', '.ts']): raise Exception()
ext = url.split('?')[0].split('&')[0].split('|')[0].rsplit('.')[-1].replace('/', '').lower()
if not ext in ['m3u8', 'f4m', 'ts']: raise Exception()
try: dialog.close()
except: pass
return url
except:
pass
try:
preset = re.findall('<preset>(.+?)</preset>', url)[0]
title, year, imdb = re.findall('<title>(.+?)</title>', url)[0], re.findall('<year>(.+?)</year>', url)[0], re.findall('<imdb>(.+?)</imdb>', url)[0]
try: tvdb, tvshowtitle, premiered, season, episode = re.findall('<tvdb>(.+?)</tvdb>', url)[0], re.findall('<tvshowtitle>(.+?)</tvshowtitle>', url)[0], re.findall('<premiered>(.+?)</premiered>', url)[0], re.findall('<season>(.+?)</season>', url)[0], re.findall('<episode>(.+?)</episode>', url)[0]
except: tvdb = tvshowtitle = premiered = season = episode = None
direct = False
presetDict = ['primewire_mv_tv', 'watchfree_mv_tv', 'movie25_mv', 'watchseries_tv', 'afdah_mv', 'dtmovies_mv', 'dizibox_tv', 'dizigold_tv', 'miradetodo_mv', 'onemovies_mv_tv', 'onlinedizi_tv', 'pelispedia_mv_tv', 'pubfilm_mv_tv', 'putlocker_mv_tv', 'rainierland_mv', 'sezonlukdizi_tv', 'tunemovie_mv', 'xmovies_mv']
if preset == 'searchsd': presetDict = ['primewire_mv_tv', 'watchfree_mv_tv', 'movie25_mv', 'watchseries_tv']
from resources.lib.sources import sources
try: dialog.update(0, control.lang(30726).encode('utf-8'), control.lang(30731).encode('utf-8'))
except: pass
u = sources().getSources(title, year, imdb, tvdb, season, episode, tvshowtitle, premiered, presetDict=presetDict, progress=False, timeout=20)
try: dialog.update(50, control.lang(30726).encode('utf-8'), control.lang(30731).encode('utf-8'))
except: pass
u = sources().sourcesDirect(u, progress=False)
if not u == None:
try: dialog.close()
except: pass
return u
except:
pass
try:
from resources.lib.sources import sources
u = sources().getURISource(url)
if not u == False: direct = False
if u == None or u == False or u == []: raise Exception()
try: dialog.update(50, control.lang(30726).encode('utf-8'), control.lang(30731).encode('utf-8'))
#.........这里部分代码省略.........