使用Python解析/提取表格数据

5 投票
1 回答
11672 浏览
提问于 2025-04-16 21:30
<html> 
<table border="1px"> 
<tr>
<td>yes</td>
<td>no</td>
</tr>
</table>
</html>

有没有其他方法可以获取表格的内容(是,否),除了使用beautifulsoup?

我还是个Python初学者,任何帮助或建议都将非常有用。

谢谢你

1 个回答

12

你可以使用Python自带的HTMLParser模块。

>>> import HTMLParser
>>> data = '''
... <html> 
... <table border="1px"> 
... <tr>
... <td>yes</td>
... <td>no</td>
... </tr>
... </table>
... </html>
... '''
>>> class TableParser(HTMLParser.HTMLParser):
...     def __init__(self):
...         HTMLParser.HTMLParser.__init__(self)
...         self.in_td = False
...     
...     def handle_starttag(self, tag, attrs):
...         if tag == 'td':
...             self.in_td = True
...     
...     def handle_data(self, data):
...         if self.in_td:
...             print data
...     
...     def handle_endtag(self, tag):
...         self.in_td = False
... 
>>> p = TableParser()
>>> p.feed(data)
yes
no

撰写回答