本文整理汇总了Python中resources.lib.modules.control.keyboard函数的典型用法代码示例。如果您正苦于以下问题:Python keyboard函数的具体用法?Python keyboard怎么用?Python keyboard使用的例子?那么恭喜您, 这里精选的函数代码示例或许可以为您提供帮助。
在下文中一共展示了keyboard函数的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Python代码示例。
示例1: search
def search(self, query=None):
if query is None:
keydialog = control.keyboard('', "Enter Search")
keydialog.doModal()
self.query = keydialog.getText() if keydialog.isConfirmed() else None
else:
self.query = query
if self.query is None or self.query is '': return
result = client.request("https://www.masterani.me/api/anime/filter?search=%s&order=relevance_desc&page=1&detailed=1" % self.query)
try:
result = json.loads(result)
result = result['data']
except:
xbmcgui.Dialog().notification("Masterani Redux", "No results for \"%s\"." % self.query)
print result
if len(result) is 0:
return
items = masterani.extract_data_from_filter_list(result)
#self.worker()
self.add_directory(items)
示例2: search
def search(self, query=None):
if query is None:
keydialog = control.keyboard('', "Enter Search")
keydialog.doModal()
self.query = keydialog.getText() if keydialog.isConfirmed() else None
else:
self.query = query
if self.query is None or self.query is '':
return
if query is None:
control.execute("Container.Update(%s?action=search&query=%s, false)" % (sys.argv[0], self.query))
return
result = client.request("http://www.masterani.me/api/anime/search?search=%s&sb=true" % self.query)
result = json.loads(result)
print result
if len(result) is 0:
return
for i in result:
self.list.append({'anime_id': i['id'], 'status': 1})
self.worker()
self.add_directory(self.list)
示例3: search
def search(self, query=None):
try:
if control.infoLabel('Container.PluginName') == '':
return control.dialog.ok('Exodus', control.lang(30518).encode('utf-8'), '', '')
if not control.infoLabel('ListItem.Title') == '':
self.query = control.window.getProperty('%s.movie.search' % control.addonInfo('id'))
elif query == None:
t = control.lang(30201).encode('utf-8')
k = control.keyboard('', t) ; k.doModal()
self.query = k.getText() if k.isConfirmed() else None
else:
self.query = query
if (self.query == None or self.query == ''): return
control.window.setProperty('%s.movie.search' % control.addonInfo('id'), self.query)
url = self.search_link % urllib.quote_plus(self.query)
self.list = cache.get(self.trakt_list, 0, url)
self.worker()
self.movieDirectory(self.list)
return self.list
except:
return
示例4: person
def person(self):
t = control.lang(32010).encode('utf-8')
k = control.keyboard('', t) ; k.doModal()
q = k.getText().strip() if k.isConfirmed() else None
if not q: return
url = self.persons_link + urllib.quote_plus(q)
self.persons(url)
示例5: search_new
def search_new(self):
t = control.lang(32010).encode('utf-8')
k = control.keyboard('', t) ; k.doModal()
q = k.getText().strip() if k.isConfirmed() else None
if not q: return
search_history = control.setting('moviesearch')
if q not in search_history.split('\n'):
control.setSetting('moviesearch', q + '\n' + search_history)
url = self.search_link + urllib.quote_plus(q)
self.get(url)
示例6: ACsearch
def ACsearch(url, image, fanart):
keyboard = control.keyboard('', control.lang(30702).encode('utf-8'))
keyboard.setHeading('CARTOON SEARCH')
keyboard.doModal()
if not keyboard.isConfirmed(): return
search = keyboard.getText()
search = re.sub(r'\W+|\s+','+', search)
if search == '': return
url = 'http://www.animedreaming.tv/search.php?searchquery='+search
url = url.encode('utf-8')
ACcat(url, image, fanart)
示例7: search
def search(self):
try:
control.idle()
k = control.keyboard('', 'Zoeken') ; k.doModal()
q = k.getText() if k.isConfirmed() else None
if (q == None or q == ''): return
url = self.search_link % (urllib.quote_plus(q))
url = '%s?action=search_results&url=%s' % (sys.argv[0], urllib.quote_plus(url))
control.execute('Container.Update(%s)' % url)
except:
return
示例8: ACsearch
def ACsearch(url, image, fanart):
keyboard = control.keyboard('', control.lang(30702).encode('utf-8'))
keyboard.setHeading('CARTOON SEARCH')
keyboard.doModal()
if not keyboard.isConfirmed(): return
search = keyboard.getText()
search = re.sub(r'\W+|\s+','-', search)
if search == '': return
url = 'http://cartoons8.co/search/?s='+search
url = url.encode('utf-8')
ACcat(url, image, fanart)
示例9: person
def person(self):
try:
control.idle()
t = control.lang(32010).encode('utf-8')
k = control.keyboard('', t) ; k.doModal()
q = k.getText() if k.isConfirmed() else None
if (q == None or q == ''): return
url = self.persons_link + urllib.quote_plus(q)
url = '%s?action=moviePersons&url=%s' % (sys.argv[0], urllib.quote_plus(url))
control.execute('Container.Update(%s)' % url)
except:
return
示例10: listAdd
def listAdd(successNotification = True):
t = control.lang(32520).encode('utf-8')
k = control.keyboard('', t) ; k.doModal()
new = k.getText() if k.isConfirmed() else None
if (new == None or new == ''): return
result = getTrakt('/users/me/lists', post = {"name" : new, "privacy" : "private"})
try:
slug = json.loads(result)['ids']['slug']
if successNotification:
interface.Dialog.notification(title = 32515, message = 33661, icon = interface.Dialog.IconSuccess)
return slug
except:
interface.Dialog.notification(title = 32515, message = 33584, icon = interface.Dialog.IconError)
return None
示例11: anime
def anime(self, url):
try:
if url == self.animesearch_link:
k = control.keyboard('', '') ; k.setHeading(control.infoLabel('ListItem.Label')) ; k.doModal()
if k.getText() == '' or not k.isConfirmed(): return
url = self.animesearch_link % urllib.quote_plus(k.getText())
self.list = cache.get(self.anime_list, 0, url)
for i in self.list: i.update({'action': 'phtoons.animestreams'})
for i in self.list: i.update({'fanart': self.anime_fanart})
self.addDirectory(self.list)
return self.list
except:
pass
示例12: search_new
def search_new(self):
t = control.lang(32010).encode('utf-8')
k = control.keyboard('', t) ; k.doModal()
q = k.getText().strip() if k.isConfirmed() else None
if not q: return
if (q == None or q == ''): return
try: from sqlite3 import dbapi2 as database
except: from pysqlite2 import dbapi2 as database
dbcon = database.connect(control.searchFile)
dbcur = dbcon.cursor()
dbcur.execute("INSERT INTO movies VALUES (?,?)", (None,q))
dbcon.commit()
dbcur.close()
url = self.search_link + urllib.quote_plus(q)
self.get(url)
示例13: cartoons
def cartoons(self, url):
try:
if url == self.cartoonsearch_link:
k = control.keyboard('', '') ; k.setHeading(control.infoLabel('ListItem.Label')) ; k.doModal()
if k.getText() == '' or not k.isConfirmed(): return
url = self.cartoonsearch_link % urllib.quote_plus(k.getText().split()[0])
self.list = cache.get(self.cartoon_list, 0, url)
for i in self.list: i.update({'nextaction': 'phtoons.cartoons', 'nexticon': self.cartoons_image % (random.randint(1,10)), 'nextfanart': self.cartoons_fanart})
for i in self.list: i.update({'action': 'phtoons.cartoonstreams'})
for i in self.list: i.update({'fanart': self.cartoons_fanart})
self.addDirectory(self.list)
return self.list
except:
pass
示例14: manager
def manager(name, imdb, tvdb, content):
try:
user = re.sub('[^a-z0-9]', '-', control.setting('trakt.user').strip().lower())
post = {"movies": [{"ids": {"imdb": imdb}}]} if content == 'movie' else {"shows": [{"ids": {"tvdb": tvdb}}]}
items = [(control.lang(30472).encode('utf-8'), '/sync/collection')]
items += [(control.lang(30473).encode('utf-8'), '/sync/collection/remove')]
items += [(control.lang(30474).encode('utf-8'), '/sync/watchlist')]
items += [(control.lang(30475).encode('utf-8'), '/sync/watchlist/remove')]
items += [(control.lang(30476).encode('utf-8'), '/users/%s/lists/%s/items' % (user, '%s'))]
result = getTrakt('/users/%s/lists' % user)
result = json.loads(result)
lists = [(i['name'], i['ids']['slug']) for i in result]
lists = [lists[i//2] for i in range(len(lists)*2)]
for i in range(0, len(lists), 2):
lists[i] = ((control.lang(30477) + ' ' + lists[i][0]).encode('utf-8'), '/users/%s/lists/%s/items' % (user, lists[i][1]))
for i in range(1, len(lists), 2):
lists[i] = ((control.lang(30478) + ' ' + lists[i][0]).encode('utf-8'), '/users/%s/lists/%s/items/remove' % (user, lists[i][1]))
items += lists
select = control.selectDialog([i[0] for i in items], control.lang(30471).encode('utf-8'))
if select == -1:
return
elif select == 4:
t = control.lang(30476).encode('utf-8')
k = control.keyboard('', t) ; k.doModal()
new = k.getText() if k.isConfirmed() else None
if (new == None or new == ''): return
url = '/users/%s/lists' % user
result = getTrakt('/users/%s/lists' % user, post={"name": new, "privacy": "private"})
try: slug = json.loads(result)['ids']['slug']
except: return control.infoDialog('Failed', heading=name)
result = getTrakt(items[select][1] % slug, post=post)
else:
result = getTrakt(items[select][1], post=post)
info = 'Successful' if not result == None else 'Failed'
control.infoDialog(info, heading=name)
except:
return
示例15: person
def person(self, query=None):
try:
if query == None:
t = control.lang(30201).encode('utf-8')
k = control.keyboard('', t) ; k.doModal()
self.query = k.getText() if k.isConfirmed() else None
else:
self.query = query
if (self.query == None or self.query == ''): return
url = self.persons_link % urllib.quote_plus(self.query)
self.list = cache.get(self.imdb_person_list, 0, url)
for i in range(0, len(self.list)): self.list[i].update({'action': 'movies'})
self.addDirectory(self.list)
return self.list
except:
return