BeautifulSoup对象中

BeautifulSoup对象中

我从beautifulSoup对象中提取了一个表,该表的开头是

<html><body><p>{"datasets":{"cf":"</p><table class="fs-table" id="cf-table">\n                    <tbody>\n                        <tr class="thead"><td></td><td>...


尝试将表转换为数据框时,“ \ n”弄乱了我的表

我试过了:

soup = BeautifulSoup(res.content,'lxml')
    cleanSoup = BeautifulSoup(str(soup).replace("\n                    ", ""))
    table = cleanSoup.find_all('table')[0]


但这不起作用..关于如何摆脱\ n的任何想法?
谢谢你

最佳答案

首先用'\ n'分割数据,然后去除空格,然后加入。

from bs4 import BeautifulSoup
htmldata='''<html><body><p>{"datasets":{"cf":"</p>
<table class="fs-table" id="cf-table">\n                    <tbody>\n                        <tr class="thead"><td></td><td>...'''

htmldata="".join(item.strip() for item in htmldata.split("\n"))

soup = BeautifulSoup(htmldata,'lxml')
table = soup.find_all('table')[0]
print(table)


输出:

<table class="fs-table" id="cf-table"><tbody><tr class="thead"><td></td><td>...</td></tr></tbody></table>


希望这可以帮助。

07-26 00:41