使用Python 3.6.5。
<div class="abcabcd13"></div>
<div class="abcabcd74"></div>
<div class="abcabcd123"></div>
以上是我使用BeautifulSoup 4设法提取的html代码,我设法将它们的列表分配给变量:
x = soup.select('div[class*=abcab]'),
,用于创建<div class="abcabcd13"></div>
等元素列表。我如何只提取类值?提前谢谢。
答案 0 :(得分:0)
这就是我刚刚做到的:
from bs4 import BeautifulSoup
page = """<div class="abcabcd13"></div>
<div class="abcabcd74"></div>
<div class="abcabcd123"></div> """
soup = BeautifulSoup(page, 'lxml')
divs = soup.findAll("div")
classes = []
for y in divs:
classes.append(y["class"])
print(classes)
打印了三个班级。
答案 1 :(得分:0)
您可以尝试使用选择器来获取所需的输出:
from bs4 import BeautifulSoup
page = """\
<div class="abcabcd13"></div>
<div class="abcabcd74"></div>
<div class="abcabcd123"></div>
"""
soup = BeautifulSoup(page, 'lxml')
classlist = [' '.join(item.get('class')) for item in soup.select("[class^='abcabcd']")]
print(classlist)
输出:
['abcabcd13', 'abcabcd74', 'abcabcd123']