gpt4 book ai didi

python - 使用curl,如何发布带有文件的表单并流式传输该文件?

转载 作者:行者123 更新时间:2023-12-01 06:12:27 24 4
gpt4 key购买 nike

我需要通过表单上传文件。该表单还有其他字段以及文件。

现在我有:

class FileReader:
def __init__(self, fp):
self.fp = fp
def read_callback(self, size):
return self.fp.read(size)

c = pycurl.Curl()
c.setopt(pycurl.URL, url)
c.setopt(pycurl.UPLOAD, 1)
c.setopt(pycurl.READFUNCTION, FileReader(open(filename, 'rb')).read_callback)
filesize = os.path.getsize(filename)
c.setopt(pycurl.INFILESIZE, filesize)

我想知道如何包含其他表单字段并将文件流式传输在一起?我不知道如何,因为我需要使用 pycurl.UPLOAD 1。

另外,我如何包含文件的表单字段名称?

最佳答案

这是一个基于 source code of a pycurl test 的示例这可能有帮助:

import pycurl

fields = [('field1', 'this is a test using httppost & stuff'),
('field2', (pycurl.FORM_FILE, 'file1.txt', pycurl.FORM_FILE, 'file2.txt')),
('field3', (pycurl.FORM_CONTENTS, 'this is wei\000rd, but null-bytes are okay'))
]

c = pycurl.Curl()
c.setopt(c.URL, 'http://www.example.com')
c.setopt(c.HTTPPOST, fields)
c.perform()
c.close()

关于python - 使用curl,如何发布带有文件的表单并流式传输该文件?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5055089/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com