如何解决TypeError get()使用get方法在Python请求中使用2个参数(给定3个)

问题描述 投票:3回答:1

我在Python中使用Request对象时遇到错误。以下是我的代码。

class APIDOC(Document):
    def request_api(self):
        method_type = self.method_type
        api = self.api
        parameters = self.parameters
        session_object = requests.session()
        self.get_login(session_object)
        if method_type == "POST":   
            data = {}
            for param in parameters:
                data[param.key] = param.value
            response = session_object.post(api,data)
            if response.status_code == 200:
                return response.text
            else:
                return "Error while getting response error code:{0}".format(response.status_code)
        elif method_type == "GET":
            data = {}
            for param in parameters:
                data[param.key] = param.value 
            print("____________________________",data)
            response = session_object.get(api,data)
            if response.status_code == 200:
                return response.text
            else:
                return "Error while getting response error code:{0}".format(response.status_code)

在针对python中的请求提供一个文档之后,我发现了下面的“GET”方法

r = requests.get('http://httpbin.org/get', params=payload)

但是在执行相同的操作时我遇到了错误

response = session_object.get(api,data)TypeError:get()只取2个参数(给定3个)

python python-requests
1个回答
3
投票

要使用GET发送参数,您需要按关键字指定它们:

session_object.get(api, params=data)
© www.soinside.com 2019 - 2024. All rights reserved.