コード例 #1
0
 def login_refresh(self):
     try:
         control.setSetting(id='login.tokenrem', value='')
         control.setSetting(id='login.tokenses', value='')
         control.setSetting(id='login.tokencfd', value='')
         payload = {
             'username': control.getSetting("9anime.username"),
             'password': control.getSetting("9anime.password"),
             'remember': 1
         }
         url = self._to_url_login("user/ajax/login")
         p = requests.post(url, data=payload)
         r = p.headers['Set-Cookie']
         remember_me = ''.join(
             re.compile('remember_web_.+?=(.+?);').findall(r))
         session = ''.join(re.compile('session=(.+?);').findall(r))
         cfduid = ''.join(re.compile('__cfduid=(.+?);').findall(r))
         control.setSetting(id='login.tokenrem', value=remember_me)
         control.setSetting(id='login.tokenses', value=session)
         control.setSetting(id='login.tokencfd', value=cfduid)
         control.setSetting(id='login.auth', value='loggedin')
         dialog = xbmcgui.Dialog()
         dialog.ok(control.lang(30200), control.lang(30202))
     except:
         dialog = xbmcgui.Dialog()
         dialog.ok(control.lang(30200), control.lang(30201))
コード例 #2
0
 def _get_watchlist_request(self, url, data=None):
     cookie = {'__cfduid': '%s' %(control.getSetting("login.tokencfd")),'web_theme': 'dark', 'session': '%s' %(control.getSetting("login.tokenses")), 'remember_web_59ba36addc2b2f9401580f014c7f58ea4e30989d': '%s' %(control.getSetting("login.tokenrem"))}
     results = requests.get(url, data, cookies=cookie)
     if results.status_code == 200:
         pass
     elif results.status_code == 503:
         xbmc.executebuiltin('RunPlugin(plugin://plugin.video.9anime/login_refresh)')
         cookie = {'__cfduid': '%s' %(control.getSetting("login.tokencfd")),'web_theme': 'dark', 'session': '%s' %(control.getSetting("login.tokenses")), 'remember_web_59ba36addc2b2f9401580f014c7f58ea4e30989d': '%s' %(control.getSetting("login.tokenrem"))}
         results = requests.get(url, data, cookies=cookie)
     results = results.text
     soup = bs.BeautifulSoup(results, 'html.parser')
     results = soup.find_all('div', attrs={"class":"content "})
     return results
コード例 #3
0
 def bookmark(self, anime_id, folder):
     anime_id = anime_id.split('.')[-1]
     data = {
         "id" : anime_id[:4],
         "folder": folder,
         "random": 1
         }
     cookie = {'__cfduid': '%s' %(control.getSetting("login.tokencfd")),'web_theme': 'dark', 'session': '%s' %(control.getSetting("login.tokenses")), 'remember_web_59ba36addc2b2f9401580f014c7f58ea4e30989d': '%s' %(control.getSetting("login.tokenrem"))}
     url = self._to_url_login("user/ajax/edit-watchlist")
     results = requests.get(url, data, cookies=cookie)
     if results.status_code == 200:
         pass
     elif results.status_code == 503:
         xbmc.executebuiltin('RunPlugin(plugin://plugin.video.9anime/login_refresh)')
         cookie = {'__cfduid': '%s' %(control.getSetting("login.tokencfd")),'web_theme': 'dark', 'session': '%s' %(control.getSetting("login.tokenses")), 'remember_web_59ba36addc2b2f9401580f014c7f58ea4e30989d': '%s' %(control.getSetting("login.tokenrem"))}
         results = requests.get(url, data, cookies=cookie)
     dialog = xbmcgui.Dialog()
     dialog.ok(control.lang(30203), json.loads(results.text)['message'])
コード例 #4
0
 def episode_playing(self, anime_id):
     try:
         anime_id = ' '.join(anime_id)
         anime_id = anime_id.rsplit('.', 1)[-1]
         anime_id = anime_id.rsplit('/', 1)
         data = {'data[%s]' % (anime_id[0]): anime_id[1]}
         cookie = {
             '__cfduid':
             '%s' % (control.getSetting("login.tokencfd")),
             'web_theme':
             'dark',
             'session':
             '%s' % (control.getSetting("login.tokenses")),
             'remember_web_59ba36addc2b2f9401580f014c7f58ea4e30989d':
             '%s' % (control.getSetting("login.tokenrem"))
         }
         url = self._to_url_login("user/ajax/playing")
         results = requests.post(url, data, cookies=cookie)
     except:
         dialog = xbmcgui.Dialog()
         dialog.ok(control.lang(30203), control.lang(30204))
コード例 #5
0
 def is_logged_in(self):
     return control.getSetting("login.auth") != ''
コード例 #6
0
 def _to_url_login(self, url):
     return self._to_url(url).replace(
         'https://',
         'https://%s.' % (control.getSetting("9anime.login_tld")))
コード例 #7
0
def WATCHLIST(payload, params):
    return control.draw_items(WatchlistFlavor.watchlist_request(payload), contentType=control.getSetting("contenttype.menu"))