【发布时间】:2011-08-26 17:00:26
【问题描述】:
这是我要解析的 html。
<TD>Serial Number</TD><TD>AB12345678</TD>
我正在尝试使用正则表达式来解析数据。我听说过 BeautifulSoup,但页面上有大约 50 个这样的项目,它们都使用相同的表参数,并且没有一个具有 ID 号。它们与唯一标识符最接近的是单元格中的数据,位于我需要的数据之前。
serialNumber = re.search("Serial Number</td><td>\n(.*?)</td>", source)
Source 只是使用 urllib 抓取的页面的源代码。在第二个和序列号之间的 html 中有一个新行,但我不确定这是否重要。
【问题讨论】:
-
Regex 传统上是解析 HTML 的不明智的解决方案。您真的应该使用 BeautifulSoup,当且仅当(条件)下降到表中并获取数据。否则,继续下一张桌子。你可以尝试scrapy 并用它来编写一个蜘蛛,它通常包含类似于正则表达式的东西
标签: python regex html-parsing beautifulsoup urllib