如何用Python查询XHTML?

1 投票
2 回答
698 浏览
提问于 2025-04-15 16:33

我在Python中为我的ASP .net网站创建了一个简单的测试工具。

我想在生成的页面中查找一些HTML标签,以便找到特定的值。

在Python中,最好的做法是什么呢?

例如(返回的页面):

<div id="ErrorPanel">An error occurred......</div>

将会在Python的标准输出中显示:

Error: .....

或者

<td id="dob">23/3/1985</td>

将会显示:

Date of birth: 23/3/1985

2 个回答

4

你也可以使用 lxml 这个库。它对 HTML的处理 非常好,而且你可以用 CSS选择器 来查询DOM,这样如果你经常使用像jQuery这样的库,就会觉得特别方便。

4

你想解析的是XML,还是像你问题标题里说的那样,解析HTML呢?如果是后者,我推荐你使用BeautifulSoup这个工具。你可以先下载并安装它。然后,创建一个soup对象来处理HTML后,你就可以很方便地找到某个特定id(或者其他属性)的标签,比如:

errp = soup.find(attrs={'id': 'ErrorPanel'})
if errp is not None:
  print 'Error:', errp.string

对于另一种情况也是类似的(如果你在找不唯一的属性,可以很容易地调整成循环等等)。

撰写回答