Python 通过保持原始标记不变来操作HTML文本

Python 通过保持原始标记不变来操作HTML文本,python,html,python-3.x,beautifulsoup,Python,Html,Python 3.x,Beautifulsoup,HTML数据来自一个API,我只需要操作文本部分,不接触HTML标记等。文本的操作将在另一个API中完成,因此HTML文本需要在处理后提取并插入DOM。在下面的示例中,文本被设置为大写以便进行操作,这是不正确的,因为无法按照原始顺序将文本插入回DOM中 import urllib from bs4 import BeautifulSoup url = "https://www.python.org" html = urllib.request.urlopen(url).read() soup

HTML数据来自一个API,我只需要操作文本部分,不接触HTML标记等。文本的操作将在另一个API中完成,因此HTML文本需要在处理后提取并插入DOM。在下面的示例中,文本被设置为大写以便进行操作,这是不正确的,因为无法按照原始顺序将文本插入回DOM中

import urllib
from bs4 import BeautifulSoup

url = "https://www.python.org"
html = urllib.request.urlopen(url).read()
soup = BeautifulSoup(html)

# remove all script and style elements
for script in soup(["script", "style"]):
    script.extract()    # rip it out

# get text
text = soup.get_text()

text.upper()

在下面的示例中,文本被设置为大写以便进行操作,这是不正确的,因为无法按照原始顺序将文本插入回DOM中。我不太明白。更改大小写与文本/元素的顺序有什么关系?顺便问一下,你的问题是什么?如果很难理解,我只需要在不更改标记的情况下操作HTML文本(当应用大写字母规则时,HTML标记不应为大写)。如前所述,操作发生在API中,因此HTML文本需要提取并放回DOM中-这就是我提到提取文本的原因,我不希望有人建议使用beautifulsoup将所有文本转换为大写的内置方法在下面的示例中,文本是大写的,用于操作,这是不正确的,因为无法按原始顺序将文本插入到DOM中。我不太明白。更改大小写与文本/元素的顺序有什么关系?顺便问一下,你的问题是什么?如果很难理解,我只需要在不更改标记的情况下操作HTML文本(当应用大写字母规则时,HTML标记不应为大写)。如前所述,操作发生在API中,因此HTML文本需要提取并放回DOM中-这就是我提到提取文本的原因,我不希望有人建议使用beautifulsoup将所有文本转换为大写的内置方法