如何使用pycurl查看错误信息?

2 投票
1 回答
2137 浏览
提问于 2025-04-16 09:31

我有以下的pycurl代码:

curl = pycurl.Curl()
foo = StringIO()
curl.setopt(pycurl.WRITEFUNCTION, foo.write)
curl.setopt(pycurl.POST, 1)
curl.setopt(pycurl.URL, finalURL)
curl.setopt(pycurl.POSTFIELDS, encodedArgs)
curl.perform()
responseCode = curl.getinfo(pycurl.RESPONSE_CODE)
effectiveURL = curl.getinfo(pycurl.EFFECTIVE_URL)
curl.close()

当我在命令行使用curl命令时,我看到:

HTTP/1.1 200 OK
Server: Apache-Coyote/1.1
Content-Type: text/xml;charset=UTF-8
Content-Length: 216
Date: Thu, 06 Jan 2011 15:49:36 GMT
Some XML Error Here: Something you are trying to do is not permitted.

但是我在使用pycurl时没有看到这个信息。
我该如何在使用pycurl时提取这个警告/错误信息呢?

1 个回答

1

服务器的响应是通过 curl 选项 pycurl.WRITEFUNCTION 来写入的。

在你的情况下,因为你传入了一个 StringIO 对象,所以响应的数据应该在 foo 变量里:你可以用 foo.getvalue() 来获取这些数据。

参考链接:http://pycurl.sourceforge.net/doc/curlobject.html

撰写回答