Beautiful Soup
Beautiful Soup 是一个用于解析 HTML 和 XML 文档的 Python 软件包(包括解析格式不正确的标记,例如未闭合的标签,因此得名“标签汤”)。它为解析后的页面创建解析树,可用于从 HTML 中提取数据,这对于网络抓取非常有用。
Beautiful Soup
对 HTML 内容提供细粒度控制,支持特定标签的提取、删除和内容清理。
它适用于需要提取特定信息并根据需要清理 HTML 内容的场景。
例如,我们可以从 HTML 内容中抓取 <p>, <li>, <div>, 和 <a>
标签内的文本内容
-
<p>
: 段落标签。它在 HTML 中定义一个段落,用于将相关的句子和/或短语组合在一起。 -
<li>
: 列表项标签。它用于有序列表 (<ol>
) 和无序列表 (<ul>
) 以定义列表中的单个项目。 -
<div>
: 分区标签。它是一个块级元素,用于对其他行内或块级元素进行分组。 -
<a>
: 锚点标签。它用于定义超链接。
from langchain_community.document_loaders import AsyncChromiumLoader
from langchain_community.document_transformers import BeautifulSoupTransformer
# Load HTML
loader = AsyncChromiumLoader(["https://www.wsj.com"])
html = loader.load()
# Transform
bs_transformer = BeautifulSoupTransformer()
docs_transformed = bs_transformer.transform_documents(
html, tags_to_extract=["p", "li", "div", "a"]
)
docs_transformed[0].page_content[0:500]
'Conservative legal activists are challenging Amazon, Comcast and others using many of the same tools that helped kill affirmative-action programs in colleges.1,2099 min read U.S. stock indexes fell and government-bond prices climbed, after Moody’s lowered credit ratings for 10 smaller U.S. banks and said it was reviewing ratings for six larger ones. The Dow industrials dropped more than 150 points.3 min read Penn Entertainment’s Barstool Sportsbook app will be rebranded as ESPN Bet this fall as '