在POST请求python中发送图像

pkln4tw6  于 2023-05-21  发布在  Python
关注(0)|答案(1)|浏览(122)

我想给某个网站发一个带图片的信息。(在网站上,这看起来像是与卖家的常规聊天。)
来自开发人员工具的请求如下所示:

我尝试在代码中重复它,但得到的是“400”响应。
我的代码:

p.s.:make_request只是请求的 Package 器。request(...)
任何猜测,以什么可以改变,以获得网站接受我的请求?

gmxoilav

gmxoilav1#

我终于解决了。事实证明,这需要打开大脑并阅读“请求”文档。

def send_photo_message(self, conversation_id, file_name='data\\photo.jpg', message='dws'):

    headers = self.refresh_token()

    image = open(file_name, "rb")

    url = f'https://gateway.kleinanzeigen.de/messagebox/api/users/130369537/conversations/{conversation_id}'

    params = {
        'warnPhoneNumber': 'true',
        'warnEmail': 'true',
        'warnBankDetails': 'true',
    }

    files = [
        ('attachment', (f'attachment-0-{time.time()}.jpg', image, 'image/jpeg')),
        ('message', ('blob', json.dumps({'message': message}), 'application/json'))
    ]

    response = self.make_request('post', url, headers=headers, params=params, files=files)

    image.close()

    pass

    return response

相关问题