如何在Beautiful Soup中为表格数据文本添加分隔符?
解决Beautiful Soup中table.text输出内容粘连的问题
要实现单行输出且每个<td>文本间添加分隔符,直接提取所有<td>的文本内容再用指定符号连接即可,代码如下:
方法示例
空格分隔输出
table = soup.find('table') # 提取所有td的文本,同时去除每个文本前后的空白字符 td_contents = [td.get_text(strip=True) for td in table.find_all('td')] # 用空格连接所有内容并单行输出 print(' '.join(td_contents))
逗号分隔输出
如果需要用逗号作为分隔符,只需修改连接符:
table = soup.find('table') td_contents = [td.get_text(strip=True) for td in table.find_all('td')] print(', '.join(td_contents))
效果说明
这种方式既保留了你偏好的单行输出形式,又能避免原始table.text的内容粘连问题,同时不需要处理第二种方法中列表的括号、引号等额外格式,直接得到干净的分隔后文本,适合后续用于创建新表格。
内容的提问来源于stack exchange,提问作者Holden Chev
相关产品推荐
相关产品推荐

