Python爬虫中去掉HTML文档中的<script>标签及其内容

编程记录 · 2023-08-19

如果您想在Python爬虫中去掉HTML文档中的<script>标签及其内容,您可以使用BeautifulSoup库来解析HTML,并使用decompose()方法来删除指定的标签。

以下是一个示例代码:

from bs4 import BeautifulSoup

# 假设您已经从网络上抓取了HTML文档,并保存在html变量中
html = """
<html>
<head>
    <title>示例页面</title>
</head>
<body>
    <h1>欢迎使用示例页面</h1>
    <p>这是一个示例页面。</p>
    <script>
        console.log('这是一个脚本');
    </script>
    <div>
        <script>
            console.log('这是另一个脚本');
        </script>
        <p>这是一个div容器。</p>
    </div>
</body>
</html>
"""

# 使用BeautifulSoup解析HTML
soup = BeautifulSoup(html, 'html.parser')

# 找到所有的<script>标签并删除
scripts = soup.find_all('script')
for script in scripts:
    script.decompose()

# 打印处理后的HTML内容
print(soup.prettify())

在上述示例中,我们使用BeautifulSoup库来解析HTML文档。然后,我们使用find_all('script')方法找到所有的<script>标签,并使用decompose()方法来删除这些标签及其内容。

最后,我们使用prettify()方法将处理后的HTML内容以缩进格式打印出来。

请注意,这只是一个简单的示例,如果您的HTML文档中有嵌套的<script>标签或其他复杂的结构,您可能需要根据实际情况来编写更复杂的代码来处理。

希望这个答案对您有所帮助!如果您有任何其他问题,请随时提问。

Theme Jasmine by Kent Liao
辽ICP备2021009421号-2