在python中解析.ashx文件

时间:2011-07-11 20:16:14

标签: python parsing ashx

我正在尝试解析python 2.7中的网址“http://www.5min.com/handlers/SitemapHandler.ashx?type=videositemap&page=1”。问题是当我在urlopen中打开url时,它不显示源,它显示奇怪的字符。它可能是编码的。

1 个答案:

答案 0 :(得分:1)

您正在解析网络服务器的响应而不是.ashx文件。在浏览器中打开该URL。这就是当你用urlopen打开它时python会看到的内容。

从打开开始,这些是我收到回复的标题:

Cache-Control:private
Content-Encoding:gzip
Content-Length:1100193
Content-Type:application/xml
Date:Mon, 11 Jul 2011 20:21:40 GMT
Server:Microsoft-IIS/7.5
Set-Cookie:NSC_bobmztjt-5njo-opjq*80=ffffffff4304fd3345525d5f4f58455e445a4a423660;expires=Mon, 11-Jul-2011 20:23:42     GMT;path=/;httponly
X-AspNet-Version:4.0.30319
X-Powered-By:ASP.NET
X-Server:fmv-m09 - www

实际上看起来响应将采用xml格式。因此,您需要使用ElementTree(或您喜欢的其他内容)解析xml。另请注意,服务器正在发送编码为gzip(ZipFile)的响应,它可能会也可能不会这样做,具体取决于urlopen是否允许。如果你看到Urlopen的胡言乱语,请尝试使用python的ZipFile来解压缩响应