我已经在该网站上阅读了一些答案,这些答案描述了在BeautifulSoup中使用reg ex进行“查找”查询。但是,对于使用正则表达式以及在使用“ select_one”时对多个标签进行查询的答案还不清楚。
具体来说,我有两个标签,如下所示。
'#CommitYear14'
'#CommitYear12'
所以我只需要一个查询来查找与“ #CommitYear”匹配的查询。
我现在的查询是
college_info = beautiful_soup_parsing.select_one(tag)
其中标记为“#CommitYear14”或“#CommitYear12”。我不知道如何同时获得14和12。
答案 0 :(得分:0)
函数select_one()
用于应用CSS选择器,不能与re
一起使用。但是,您可以使用CSS选择器^=
来选择属性值以所选字符串开头的元素(以供CSS选择器look at this参考):
data = '''
<div id="CommitYear12">CommitYear12</div>
<div id="CommitYear14">CommitYear14</div>'''
from bs4 import BeautifulSoup
soup = BeautifulSoup(data, 'lxml')
print(soup.select_one('[id^="CommitYear"]'))
打印:
<div id="CommitYear12">CommitYear12</div>