저는 최근에 pycurl을 사용하기 시작했으며 현재 setop pycurl.FORM_FILE을 사용하고 있습니다. 하지만 보내려는 데이터는 문자열에 들어 있으므로 다음 메소드가 읽을 수 있도록 파일을 작성하는 것은 이상한 일입니다.pycurl.FORM_FILE 대신 문자열을 보내거나 스트림 객체를 사용하는 방법이 있습니까?
내 질문은 : pycurl.FORM_FILE 대신 전송할 문자열이나 파일 객체와 같은 스트림 객체를 사용하는 대안이 있습니까?
libcurl의 FORM_STREAM과 유사합니다.
readdata 및 readfunction은 다중 파트 양식의 게시물에는 작동하지 않습니다. 이 같은
뭔가 :
import pycurl
c = pycurl.Curl()
c.setopt(c.URL, 'http://someurl')
c.setopt(c.FORM_FILE, 'myfile.gz')
c.perform()
c.close()
이 될 것입니다 : 사전에
import pycurl
c = pycurl.Curl()
fobj = open('myfile.gz', 'rb')
c.setopt(c.URL, 'http://someurl')
c.setopt(c.FORM_STREAM, fobj)
c.perform()
fobj.close()
c.close()
감사합니다!
팁 주셔서 감사합니다. 예 StringIO를 사용하려고하지만 StringIO 객체는 파일 객체와 같으며 FORM_FILE은 파일을 여는 데 사용하는 파일 이름을 사용합니다. 따라서 StringIO 객체를 인수로 전달할 수 없습니다. –
오, 알았어. – Vor