Python 在字体大小下使用Beauty Soup提取文本

Python 在字体大小下使用Beauty Soup提取文本,python,beautifulsoup,Python,Beautifulsoup,我最近开始学习python,我想从下面的页面中提取文本 <p> <font size=""> some text</font> </p> 一些文本 但无法获取字体大小内的文本 有解决办法吗 编辑:刷新时“某些文本”会发生更改这就是问题所在 from bs4 import BeautifulSoup text = """<p> <font size="10&quo

我最近开始学习python,我想从下面的页面中提取文本

<p>
<font size="">
some text</font>
</p>

一些文本

但无法获取字体大小内的文本 有解决办法吗

编辑:刷新时“某些文本”会发生更改这就是问题所在

from bs4 import BeautifulSoup

text = """<p>
<font size="10">
some text</font>
</p>"""

soup = BeautifulSoup(text, "html.parser")

soup.find("font").text        # some text
soup.find("font").get('size') # 10
从bs4导入美化组
text=“”
一些文本

“”“ soup=BeautifulSoup(文本,“html.parser”) soup.find(“font”).text#一些文本 汤。查找(“字体”)。获取(“大小”)#10
从bs4导入BeautifulSoup作为bs
b=b(“\
\
一些文本\

”) b、 查找(“字体”).attrs[“大小”]
这适用于特定示例,但可能需要根据需要解析的实际html进行裁剪:

from bs4 import BeautifulSoup

html="""<p>
<font size="">
some text</font>
</p>"""

soup = BeautifulSoup(html, 'html.parser')

print(soup.find('p').text)
从bs4导入美化组
html=“”
一些文本

“”“ soup=BeautifulSoup(html,'html.parser') 打印(soup.find('p').text)
我想你可以这样做

import bs4
import re

data = """
<p>
<font size="">some text</font>
</p>
"""
def striphtml(data):
    p = re.compile(r'<.*?>')
    return p.sub('', data)

bs = bs4.BeautifulSoup(data, "html.parser")
text = bs.find_all('font')
print(striphtml(str(text)))
导入bs4
进口稀土
data=”“”

一些文本

""" def striphtml(数据): p=重新编译(r“”) 返回p.sub(“”,数据) bs=bs4.BeautifulSoup(数据,“html.parser”) text=bs.find_all('font') 打印(striphtml(str(text)))

输出:
[some text]

您可以从std库使用。在您的示例中,您希望获取文本“some text”还是实际字体大小“”?我希望获取此文本中的文本,而不是字体大小。我将print(soup.find('p').text)更改为print(soup.find('font').text)并成功。
import bs4
import re

data = """
<p>
<font size="">some text</font>
</p>
"""
def striphtml(data):
    p = re.compile(r'<.*?>')
    return p.sub('', data)

bs = bs4.BeautifulSoup(data, "html.parser")
text = bs.find_all('font')
print(striphtml(str(text)))