You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Selenium如何实现BeautifulSoup的prettify()格式化HTML功能?

在Selenium中输出格式化HTML用于调试的方法
  • 结合BeautifulSoup实现
    既然你已经熟悉BeautifulSoup的prettify(),可以直接把Selenium获取的页面源码传给BeautifulSoup处理:

    from bs4 import BeautifulSoup
    from selenium import webdriver
    
    driver = webdriver.Chrome()
    driver.get("目标URL")
    
    # 获取页面源码
    page_source = driver.page_source
    # 用BeautifulSoup格式化
    soup = BeautifulSoup(page_source, "html.parser")
    print(soup.prettify())
    
    driver.quit()
    
  • 使用lxml库格式化
    如果不想依赖BeautifulSoup,也可以用lxml库的etree模块来格式化HTML:

    from lxml import etree
    from selenium import webdriver
    
    driver = webdriver.Chrome()
    driver.get("目标URL")
    
    page_source = driver.page_source
    # 解析HTML并格式化
    tree = etree.HTML(page_source)
    formatted_html = etree.tostring(tree, pretty_print=True, encoding="unicode")
    print(formatted_html)
    
    driver.quit()
    
  • 直接调用浏览器JS获取格式化输出
    还可以通过Selenium执行JavaScript,让浏览器直接返回格式化后的HTML:

    from selenium import webdriver
    
    driver = webdriver.Chrome()
    driver.get("目标URL")
    
    # 执行JS获取格式化的HTML
    formatted_html = driver.execute_script("return new XMLSerializer().serializeToString(document);")
    print(formatted_html)
    
    driver.quit()
    

内容的提问来源于stack exchange,提问作者LLaP

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.14 15:55:20