使用httplib解析Python响应

1 投票
2 回答
3452 浏览
提问于 2025-04-15 18:46

在连接到一个套接字(socket)并使用 .read() 方法获取响应后,我该如何解析输入流并逐行读取呢?

我发现返回的数据没有任何换行符(CRLF)。

<html><head><title>Apache Tomcat/6.0.16 - Error report</title><style><!--H1 {font-family:Tahoma,Arial,sans-serif;color:white;background-color:#525D76;font-size:22px;} H2 {font-family:Tahoma,Arial,sans-serif;color:white;background-color:#525D76;font-size:16px;} H3 {font-family:Tahoma,Arial,sans-serif;color:white;background-color:#525D76;font-size:14px;} BODY {font-family:Tahoma,Arial,sans-serif;color:black;background-color:white;} B {font-family:Tahoma,Arial,sans-serif;color:white;background-color:#525D76;} P {font-family:Tahoma,Arial,sans-serif;background:white;color:black;font-size:12px;}A {color : black;}A.name {color : black;}HR {color : #525D76;}--></style> </head><body><h1>HTTP Status 404 - /index.html</h1><HR size="1" noshade="noshade"><p><b>type</b> Status report</p><p><b>message</b> <u>/index.html</u></p><p><b>description</b> <u>The requested resource (/index.html) is not available.</u></p><HR size="1" noshade="noshade"><h3>Apache Tomcat/6.0.22</h3></body></html>

2 个回答

0

使用一个HTML解析器。Beautiful Soup 看起来是一个很受欢迎的选择。

3

你需要解析HTML。Python有几种解析HTML的方法,其中一种是内置的HTMLParser模块。还有一种,可能更好用的是第三方的BeautifulSoup模块。

关于处理HTML的其他问题,可以在这篇不错的文章中找到解释。你也可以阅读这本(免费的在线)Dive into Python书中的相关章节

撰写回答