我正在尝试使用不同的css类来抓取一个页面,如下所示:
class="mod result idx0 people"
class="mod result idx1 people"
class="mod result idx2 people"
class="mod result idx3 people"
class="mod result idx4 people"
我正在使用bs4
和html5lib
与Python2.7
现在,当我为上面的第一个元素执行此操作时,我得到了积极的结果。
soup.find(class_="mod result idx0 people")
但是,我想对所有课程都这样做。
所以我正在尝试所有这些,但我仍然得到一个空列表[]
。我做错了什么?
soup.find_all(class_="mod result")
soup.find_all(class_=re.compile("mod result"))
soup.find_all("li",{"class":re.compile("mod result")})
soup.find_all("li",attrs={"class":re.compile("mod result")})
soup.find_all({"class":re.compile("mod result")})
他们都没有工作: - (
答案 0 :(得分:1)
根据(Beautiful Soup documentation - Search by CSS class),如果要搜索与两个或更多CSS类匹配的标记,则应使用CSS选择器。
soup.select('.mod.result')