正規表現<td.*?>(.*?)<\/td>
は適切に行います。
しかし、HTMLParser モジュールまたはBeautifulSoupを使用することをお勧めしますか?
HTMLParser を使用した別の例を書くのに時間がかかりました。
from HTMLParser import HTMLParser
class TDExtractor(HTMLParser):
def handle_starttag(self, tag, attrs):
if tag == 'td':
self.recording = True
def handle_endtag(self, tag):
if tag == 'td':
self.recording = False
def handle_data(self, data):
if self.recording:
self.data.append(data)
def reset(self):
HTMLParser.reset(self)
self.data = []
self.recording = False
そして実際に:
> tdextractor = TDExtractor()
> tdextractor.feed(some_htmldata)
> print(tdextractor.data) # will print a list with all the td data.