我的读取与BeautifulSoup一些HTML表行这段代码:选择特定<tr>标签与BeautifulSoup
from bs4 import BeautifulSoup
import urllib2
import re
page = urllib2.urlopen('www.something.bla')
soup = BeautifulSoup(page)
rows = soup.findAll('tr', attrs={'class': re.compile('class1.*')})
这是我得到的结果:
<tr class="class1 class2 class3">...</tr>
<tr class="class1 class2 class3">...</tr>
<tr class="class1 class5">...</tr>
<tr class="class1_a class5_a">...</tr>
<tr class="class1 class5">...</tr>
<tr class="class1_a class5_a">...</tr>
<!-- etc. -->
然而,我'想排除(或不首先选择它们)那些具有class1 class2 class3
作为属性的行。
我该怎么做?
感谢您的帮助!
那么'class1_a'可以抓取而不是'class1'吗? – serk 2012-02-12 23:24:24
我应该抓住所有以'class1 *'开头但没有'class2 class3'的人...... – errata 2012-02-12 23:25:58