Example #1
0
 def GetSessionTokens(self):
     cookies = []
     try: # parsing may sometimes fail
         for cookie in self.Cookies_list:
             cookies.append(Cookie.from_string(cookie).to_dict())
     except:
         pass
     return json.dumps(cookies)
Example #2
0
 def GetSessionTokens(self):
     cookies = []
     try:  # parsing may sometimes fail
         for cookie in self.Cookies_list:
             cookies.append(Cookie.from_string(cookie).to_dict())
     except:
         pass
     return json.dumps(cookies)
Example #3
0
    def setCookies(self, headers, encode=False):
        def next_token_is_not_semi(s):
            for i in xrange(len(s)):
                if s[i] == ';':
                    return False
                if s[i] == '=':
                    return True
            return True

        def parse_one_cookie(set_cookie_str):
            state = 0
            for i in xrange(len(set_cookies_str)):
                if state == 0 and set_cookies_str[i] == '=':
                    state = 1
                elif state == 1 and set_cookies_str[i] == ';':
                    state = 0
                if state == 0 and set_cookies_str[i] == ',':
                    return set_cookies_str[:i], set_cookies_str[i + 1:].strip()
                if state == 1 and set_cookies_str[
                        i] == ',' and next_token_is_not_semi(
                            set_cookies_str[i + 1:]):
                    return set_cookies_str[:i], set_cookies_str[i + 1:].strip()
                else:
                    continue
            return set_cookie_str, ""

        for header in headers:
            if header[0].lower() == 'set-cookie':
                #logger.debug(str(header))
                #set_cookies = header[1].split('; Path=/; ')
                set_cookies_str = header[1]
                #print set_cookies_str
                while len(set_cookies_str) > 0:
                    (one_cookie_str,
                     set_cookies_str) = parse_one_cookie(set_cookies_str)
                    #print one_cookie_str
                    #print set_cookies_str
                    cookie = Cookie.from_string(one_cookie_str)
                    #print "cookie.name=%s,cookie.value=%s"%(cookie.name, cookie.value)
                    #self.cookies[cookie.name] = cookie.value
                    if encode:
                        self.cookies[cookie.name] = urllib.quote(
                            cookie.value.encode('utf8'))
                    else:
                        self.cookies[cookie.name] = cookie.value.encode('utf8')
                #for set_cookie in set_cookies:
                #    cookie = Cookie.from_string(set_cookie)
                #    self.cookies[cookie.name] = cookie.value
        ks = self.cookies.keys()
        cookie_list = []
        for k in ks:
            cookie_list.append(k + '=' + self.cookies[k])
        self.headers['Cookie'] = string.join(cookie_list, '; ')
        logger.debug(str(self.headers))
Example #4
0
    def get_session_tokens(self):
        """Get a JSON blob of all captured cookies

        :return:
        :rtype:
        """
        cookies = []
        try:  # parsing may sometimes fail
            for cookie in self.cookies_list:
                cookies.append(Cookie.from_string(cookie).to_dict())
        except InvalidCookieError:
            logging.debug("Cannot not parse the cookies")
        return cookies
Example #5
0
def get_token(client, login="******", password="******"):
    data = {
        "login": login,
        "password": password,
        "id_application": current_app.config["ID_APPLICATION_GEONATURE"],
    }
    response = client.post(url_for("auth.login"),
                           data=json.dumps(data),
                           headers=headers)
    try:
        token = Cookie.from_string(response.headers["Set-Cookie"])
        return token.value
    except Exception:
        raise Exception("Invalid login {}, {}".format(login, password))
Example #6
0
def get_token(client, login="******", password="******"):
    data = {
        "login": login,
        "password": password,
        "id_application": current_app.config["ID_APPLICATION_GEONATURE"],
    }
    response = client.post(
        url_for("auth.login"), data=json.dumps(data), headers=headers
    )
    try:
        token = Cookie.from_string(response.headers["Set-Cookie"])
        return token.value
    except Exception:
        raise Exception("Invalid login {}, {}".format(login, password))
Example #7
0
def get_token(client, login="******", password="******"):  # noqa: S107
    data = {
        'login': login,
        'password': password,
        'id_application': APP_ID,
        'with_cruved': True
    }
    response = client.post(url_for('auth.login'),
                           data=json.dumps(data),
                           headers=headers)
    try:
        token = Cookie.from_string(response.headers['Set-Cookie'])
        return token.value
    except Exception:
        raise Exception('Invalid login {}, {}'.format(login, password))