用Python写一个爬虫,用BeautifulSoup解析html。
其中一个地方需要抓取下面两类标签:
<dd class="ab " >blabla1</dd>
<dd class="ab cd" >blabla2</dd>
第一类class的值的末尾有一个空格。
第二类class的值中间有一个空格,而且开头部分和第一类相同。
在css中,class的值不应该有空格,所以第一类会忽略空格,第二类会被当做多值属性。参考官方文档多值属性。
所以在处理时也不需再考虑class值中的空格。
传入参数时用列表过滤器是最方便的,如下:
soup.find_all("dd", class_= ["ab", "cd"])