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))
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))
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'])