使用 Python 从 Varied HTML 中提取文本
Extract Text from Varied HTML using Python
假设您有一个像这样的 HTML 块:
<div class="container">
<div class="sub-container">
<a href="example.com">Blue</a>
</div>
Black
</br>
<div class="sub-container">
<a href="example.com">Yellow</a>
</div>
<div class="sub-container">
<a href="example.com">Pink</a>
</div>
Orange
</br>
</div>
你的方法是什么,使用 python,从这个 HTML 块中提取颜色?
要使用正则表达式提取 html 中的标签,您可能想试试这个:
<(\w+)[\s\w\d=\-+\.]*>(.*)</\s*>
然后使用组 2 查找该标签内的所有内容。您还可以将正则表达式的开头更改为:
<(a) (etc...)
而且只会匹配一个标签。
您可以使用 .text
从样本 html 中获取所有颜色。
例如:
from bs4 import BeautifulSoup
s = """<div class="container">
<div class="sub-container">
<a href="example.com">Blue</a>
</div>
Black
</br>
<div class="sub-container">
<a href="example.com">Yellow</a>
</div>
<div class="sub-container">
<a href="example.com">Pink</a>
</div>
Orange
</br>
</div>"""
soup = BeautifulSoup(s, "html.parser")
print(soup.text.strip().replace(" ", ""))
输出:
Blue
Black
Yellow
Pink
Orange
假设您有一个像这样的 HTML 块:
<div class="container">
<div class="sub-container">
<a href="example.com">Blue</a>
</div>
Black
</br>
<div class="sub-container">
<a href="example.com">Yellow</a>
</div>
<div class="sub-container">
<a href="example.com">Pink</a>
</div>
Orange
</br>
</div>
你的方法是什么,使用 python,从这个 HTML 块中提取颜色?
要使用正则表达式提取 html 中的标签,您可能想试试这个:
<(\w+)[\s\w\d=\-+\.]*>(.*)</\s*>
然后使用组 2 查找该标签内的所有内容。您还可以将正则表达式的开头更改为:
<(a) (etc...)
而且只会匹配一个标签。
您可以使用 .text
从样本 html 中获取所有颜色。
例如:
from bs4 import BeautifulSoup
s = """<div class="container">
<div class="sub-container">
<a href="example.com">Blue</a>
</div>
Black
</br>
<div class="sub-container">
<a href="example.com">Yellow</a>
</div>
<div class="sub-container">
<a href="example.com">Pink</a>
</div>
Orange
</br>
</div>"""
soup = BeautifulSoup(s, "html.parser")
print(soup.text.strip().replace(" ", ""))
输出:
Blue
Black
Yellow
Pink
Orange