gpt4 book ai didi

python - 如何在 Python 中从包含整个响应的字符串中获取 http 响应的主体?

转载 作者:可可西里 更新时间:2023-11-01 16:47:29 25 4
gpt4 key购买 nike

我得到了作为字符串的整个 HTTP 响应,但我只想提取正文。

我不想使用外部库或重新实现 header 解析。

Content-Type: text/xml
Content-Length: 129

<?xml version='1.0'?>
<methodResponse>
<params>
<param>
<value><boolean>0</boolean></value>
</param>
</params>
</methodResponse>
</code>

更新:如果不是很明显,我确实从 URL 以外的其他来源获取数据,因此任何尝试使用需要 URL 的东西都是无用的。

我仍然从像对象 data = stream.read() 这样的流中读取数据,所以可以使用流的解决方案也是可以接受的。

第二次更新,是的,这是一个 XMLRPC 响应,但我正在使用不同的传输方式,所以我不能使用 httplib 来解析它,主要是因为 httplib 已损坏并且不接受字符串或用于解析的流。

第三次更新,双换行符可以是\r\n\r\n\n\n,具体取决于服务器。

所以要明确一点:输入是一个应该包含 XMLRPC 响应的 HTTP 响应,输出必须是响应。它不必解析 XML,但必须能够从响应中正确提取 XML。

最佳答案

基于 Michal 解决方案,但此解决方案包括基本修复:

def strip_http_headers(http_reply):
p = http_reply.find('\r\n\r\n')
if p >= 0:
return http_reply[p+4:]
return http_reply

关于python - 如何在 Python 中从包含整个响应的字符串中获取 http 响应的主体?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8474745/

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