Включить несколько имен классов в findAll в BeautifulSoup4 [дубликат]
На этот вопрос уже есть ответ здесь:
У меня есть строка кода в скрипте python, как показано ниже
for summaries in soup.findAll('div',{'class':'cb-lv-scrs-col cb-font-12 cb-text-complete'}):
#do something with summaries
Однако я хочу, чтобы резюме также включали элементы из div
элементов с другим классом, называемым cb-scag-mtch-status cb-text-inprogress
Я попробовал ниже, как указано здесь - BeautifulSoup findAll () задано несколько классов?
for summaries in soup.findAll('div',{'class':['cb-lv-scrs-col cb-font-12 cb-text-complete','cb-scag-mtch-status cb-text-inprogress']}):
#do something with summaries
Но это не работает. В чем проблема и как ее решить?
1 ответ:
Я бы сделал простой CSS селектор:
soup.select('div[class="cb-lv-scrs-col cb-font-12 cb-text-complete"],div[class="cb-scag-mtch-status cb-text-inprogress"]')
Но, я сомневаюсь, что вам действительно нужно или нужно проверять все классы, присутствующие на элементе, не будет ли этого достаточно:
soup.select('div.cb-text-complete,div.cb-text-inprogress')