示例#1
0
class Session:
    def __init__(self):
        self.config = Config.Config()
        self.log = Logger().get_logger()

    def get_session(self, env):
        """
        获取session
        :param env: 环境变量
        :return:
        """
        headers = {
            "User-Agent": "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_13_6) AppleWebKit/537.36 (KHTML, like Gecko)\
                          Chrome/67.0.3396.99 Safari/537.36",
            "Content-Type": "application/x-www-form-urlencoded",
            "Connection": "close"
        }

        if env == "debug":
            login_url = 'http://' + self.config.loginHost_debug
            parm = self.config.loginInfo_debug

            session_debug = requests.session()
            response = session_debug.post(login_url, parm, headers=headers)
            print(response.cookies)
            self.log.debug('cookies: %s' % response.cookies.get_dict())
            return response.cookies.get_dict()

        elif env == "release":
            login_url = 'http://' + self.config.loginHost_release
            parm = self.config.loginInfo_release

            session_release = requests.session()
            response = session_release.post(login_url, parm, headers=headers)
            print(response.cookies)
            self.log.debug('cookies: %s' % response.cookies.get_dict())
            return response.cookies.get_dict()

        else:
            print("get cookies error")
            self.log.error('get cookies error, please checkout!!!')
示例#2
0
class ConfigHttp:

    def __init__(self):
        self.host = localReadConfig.get_http("baseurl")
        self.port = localReadConfig.get_http("port")
        self.timeout = localReadConfig.get_http("timeout")
        self.logger = Logger("httpUtil.py").getlog()

    # defined http get method
    def get(self, url, param=None):
        new_url = self.host + ":" + self.port + "/" + url
        header = {'Content-Type': 'application/json'}
        try:
            if param != None:
                textmod = parse.urlencode(param)
                req = request.Request(url='%s%s%s' % (new_url, '?', textmod), headers=header)
                self.logger.debug('%s%s%s' % (new_url, '?', textmod))
            else:
                req = request.Request(url='%s' % (new_url), headers=header)
                self.logger.debug(new_url)
            res = request.urlopen(req)
            res = res.read()
            hjson = json.loads(res)
            self.logger.debug(json.dumps(hjson, indent=4))
            return hjson
        except TimeoutError:
            self.logger.error("Time out!")
            return None

    # defined http post method
    def post(self, url, param):
        data = json.dumps(param)
        data = bytes(data, "utf-8")
        new_url = self.host + ":" + self.port + "/" + url
        self.logger.info('post data: \n' + json.dumps(param, indent=4))
        try:
            headers = {'Content-Type': 'application/json'}
            req = request.Request(new_url, data, headers)
            response = request.urlopen(req)
            res = response.read()
            hjson = json.loads(res)
            self.logger.debug(json.dumps(hjson, indent=4))
        except Exception as err:
            print(err, "\n")
        return hjson