gpt4 book ai didi

python - 如何解析在 标签下包含 和 标签的行的 HTML 表格?

转载 作者:行者123 更新时间:2023-11-27 23:35:45 25 4
gpt4 key购买 nike

我似乎找不到这个问题的答案,所以我很困惑。我正在使用 Beautifulsoup 和以行标签 <th> 开头的表格解析 HTML 表格然后是数据 <td> .我正在解析数据然后将其写入 CSV 文件,但我无法为以 <th> 开头的每一行包含“行标题”标签。

这是我目前得到的,它完成了大部分工作,除了 <th>。行标签 <th> :

headers = [header.text.strip() for header in table.find_all('th',{'scope' :'col'})]

rows = []

for row in table.find_all('tr'):
rows.append([val.text.encode('utf8').rstrip() for val in row.find_all('td')])
with open('filename.csv', 'wb') as f:
writer = csv.writer(f)
writer.writerow(headers)
writer.writerows(row for row in rows if row)

有没有办法将其附加到 rows还有吗?非常感谢任何帮助。

最佳答案

BeautifulSoup find_all 函数可以获取一个列表,因此要获取第 th,您可以按如下方式修改脚本:

headers = [header.text.strip() for header in table.find_all('th',{'scope' :'col'})]
rows = []

for row in table.find_all('tr'):
rows.append([val.text.encode('utf8').rstrip() for val in row.find_all(['td', 'th'])])

with open('filename.csv', 'wb') as f:
writer = csv.writer(f)
writer.writerow(headers)
writer.writerows(row for row in rows if row)

关于python - 如何解析在 <tr> 标签下包含 <th> 和 <td> 标签的行的 HTML 表格?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33888369/

25 4 0
文章推荐: javascript - 文本区域内容随 javascript 中的选择选项 onchange 发生变化
文章推荐: C++ 库链接问题
文章推荐: c++ - 对功能库 std::bind 中的语法感到困惑
文章推荐: html - 如何仅使用 CSS 设置