我正在尝试从一个设计糟糕的设计网页中提取一些文本,经过长时间的研究和学习python,我接近实现它,但网页设计很差,找不到正确的正则表达式来做到这一点。
所以我们在这里完成了我所取得的成就。 http://coj.uci.cu/24h/status.xhtml?username=Diego1149&abb=1006在这个网页的源代码中,我希望获得所接受问题的第一个实例的整行。所以我想到了这个
exprespatFinderTitle = re.compile('<table id="submission" class="volume">.*(<tr class=.*>.*<label class="AC">.*Accepted.*</label>.*</tr>).*</table>')
但这样做的结果是直到表的最后<tr>
为止。有人可以帮我解决这个问题吗?
我正在使用Python 2.7 whit BeautifulSoup和urllib
答案 0 :(得分:0)
坚持BeautitfulSoup独自;正则表达式不是用于HTML解析的工具:
table = soup.find('table', id='submission')
accepted = table.tbody.find('label', class_='AC')
if accepted:
row = accepted.parent.parent # row with accepted column