2013-06-21 4 views
0

У меня есть несколько общих вопросов о BeautifulSoup:Как правильно использовать beautifulsoup?

  1. , когда я хочу использовать метод FindAll и найти, когда class="pie" в HTML-коде, как бы мне это делать? Класс уже является методом (я думаю, это то, что он называется) в python. Это дает мне ошибку, когда я пытаюсь. Однако, когда я пытаюсь пример вроде align="center", он отлично работает
  2. очень похожий вопрос, если я хочу найти определенный тип метатега; как для ex <div class="pies"...>, как бы я это сделал? findAll("dir class="pies"")?

Заранее благодарен!

ответ

1

class является ключевым словом в Python, так что вы не можете сделать:

soup.find_all('div', class='pie') 

Добавить подчеркивание в конце аргумента ключевого слова, и он будет работать:

soup.find_all('div', class_='pie') 
+0

спасибо !!!!!!! Оно работает – jped

1

Другим способом для этого нужно указать свойства в словаре в качестве второго аргумента. Например:

soup.findAll('div', {'class': 'content'}) 
soup.find('div', {'id': 'content'}) 
soup.find('meta', { 'property': 'og:image'}) 

В вашем случае, вы можете просто сделать

soup.findAll('div', { 'class': 'pie'})