Skip to main content

Beautiful Soup

Beautiful Soup提供了对HTML内容的精细控制,可以实现特定标签的提取、删除和内容清理。

它适用于需要提取特定信息并根据需求清理HTML内容的情况。

例如,我们可以从HTML内容中提取<p>、<li>、<div>和<a>标签中的文本内容:

  • <p>:段落标签。它定义了HTML中的一个段落,并用于将相关的句子和/或短语分组在一起。
  • <li>:列表项标签。它用于有序(<ol>)和无序(<ul>)列表中定义列表中的各个项。
  • <div>:分区标签。它是一个块级元素,用于将其他内联或块级元素分组在一起。
  • <a>:锚点标签。它用于定义超链接。
from langchain.document_loaders import AsyncChromiumLoader  
from langchain.document_transformers import BeautifulSoupTransformer

# 加载HTML
loader = AsyncChromiumLoader(["https://www.wsj.com"])
html = loader.load()

API参考:

# 转换  
bs_transformer = BeautifulSoupTransformer()
docs_transformed = bs_transformer.transform_documents(html,tags_to_extract=["p", "li", "div", "a"])

docs_transformed[0].page_content[0:500]
'保守派法律活动家正在使用帮助废除大学平权行动的许多工具来挑战亚马逊、康卡斯特等公司。1,2099分钟阅读美国股指下跌,政府债券价格上涨,Moody's下调了10家较小的美国银行的信用评级,并表示正在审查6家较大银行的评级。道琼斯工业指数下跌超过150点。3分钟阅读Penn Entertainment的Barstool Sportsbook应用将在今年秋季改名为ESPN Bet。'