def loadClasses(username, password): user_data = plugin.get_storage(username, file_format='json') cookies_raw = user_data.get('cookies') did_login = False if cookies_raw is None: plugin.log.info("Logging in") cookies_raw = login(username, password) user_data['cookies'] = cookies_raw did_login = True else: plugin.log.debug("Loading data from store") # plugin.log.debug("Cookies:\n%s" % '\n'.join([str(x) for x in cookies_raw])) opener = getOpenerFromRawCookies(cookies_raw=cookies_raw) try: classes = getClasses(opener) except urllib2.HTTPError, ex: if ex.code not in [403, 401]: raise ex if did_login: raise ex plugin.log.info("Maybe cookies is old? Logging in") cookies_raw = login(username, password) user_data['cookies'] = cookies_raw opener = getOpenerFromRawCookies(cookies_raw=cookies_raw) classes = getClasses(opener)
def loadClasses(username, password): user_data = plugin.get_storage(username, file_format='json') cookies_raw = user_data.get('cookies') did_login = False if cookies_raw is None: plugin.log.info("Logging in") cookies_raw = login(username, password) user_data['cookies'] = cookies_raw did_login = True else: plugin.log.debug("Loading data from store") # plugin.log.debug("Cookies:\n%s" % '\n'.join([str(x) for x in cookies_raw])) opener = getOpenerFromRawCookies(cookies_raw=cookies_raw) try: classes = getClasses(opener) except urllib2.HTTPError, ex: if ex.code != 403: raise ex if did_login: raise ex plugin.log.info("Maybe cookies is old? Logging in") cookies_raw = login(username, password) user_data['cookies'] = cookies_raw opener = getOpenerFromRawCookies(cookies_raw=cookies_raw) classes = getClasses(opener)
def getClassCookies(className, username, password): user_data = plugin.get_storage(username, file_format='json') if user_data is None: return None cookies_raw = user_data.get('cookies') if cookies_raw is None: external_id, public_id, cookies_raw = login(username, password) if cookies_raw is None: return None user_data['cookies'] = cookies_raw user_data['external_id'] = external_id user_data['public_id'] = public_id cj = loadSavedCookies(cookies_raw=cookies_raw) opener = getOpener(cj=cj) plugin.log.debug("Logging in to class: %s" % className) logged_in = login_to_class(className, opener, username, password) if logged_in == False: return None CSRFT_TOKEN_COOKIE_NAME = "csrf_token" cj.clear(domain="class.coursera.org", path="/%s" % className, name=CSRFT_TOKEN_COOKIE_NAME) #cj.clear(domain="class.coursera.org", path="/%s" % className, name="session") cj.clear(domain="www.coursera.org", path="/" , name="maestro_login") cj.clear(domain="www.coursera.org", path="/" , name="sessionid") return saveCJ(cj)
def getClassCookies(className, username, password): user_data = plugin.get_storage(username, file_format='json') if user_data is None: return None cookies_raw = user_data.get('cookies') if cookies_raw is None: cookies_raw = login(username, password) if cookies_raw is None: return None user_data['cookies'] = cookies_raw cj = loadSavedCookies(cookies_raw=cookies_raw) opener = getOpener(cj=cj) plugin.log.debug("Logging in to class: %s" % className) logged_in = login_to_class(className, opener, username, password) if logged_in == False: return None CSRFT_TOKEN_COOKIE_NAME = "csrf_token" cj.clear(domain="class.coursera.org", path="/%s" % className, name=CSRFT_TOKEN_COOKIE_NAME) #cj.clear(domain="class.coursera.org", path="/%s" % className, name="session") # cj.clear(domain="www.coursera.org", path="/" , name="maestro_login") # cj.clear(domain="www.coursera.org", path="/" , name="sessionid") return saveCJ(cj)
def getMyDamnCookies(username, password): user_data = plugin.get_storage(username, file_format='json') cookies_raw = user_data.get('cookies') if cookies_raw is None: plugin.log.info("Logging in") external_id, public_id, cookies_raw = login(username, password) user_data['cookies'] = cookies_raw return cookies_raw
def loadClasses(username, password): user_data = plugin.get_storage(username, file_format='json') cookies_raw = user_data.get('cookies') external_id = user_data.get('external_id') public_id = user_data.get('public_id') did_login = False if cookies_raw is None or external_id is None or public_id is None: plugin.log.info("Logging in") external_id, public_id, cookies_raw = login(username, password) user_data['cookies'] = cookies_raw user_data['external_id'] = external_id user_data['public_id'] = public_id did_login = True else: plugin.log.debug("Loading data from store") plugin.log.debug("external_id=%s, public_id=%s" % (external_id, public_id)) # plugin.log.debug("Cookies:\n%s" % '\n'.join([str(x) for x in cookies_raw])) opener = getOpenerFromRawCookies(cookies_raw=cookies_raw) try: classes = getClasses(public_id, opener) except urllib2.HTTPError, ex: if ex.code != 403: raise ex if did_login: raise ex plugin.log.info("Maybe cookies is old? Logging in") external_id, public_id, cookies_raw = login(username, password) user_data['cookies'] = cookies_raw user_data['external_id'] = external_id user_data['public_id'] = public_id opener = getOpenerFromRawCookies(cookies_raw=cookies_raw) classes = getClasses(public_id, opener)