2012-01-30 18 views
16

Necesito navegar a un elemento html de un tipo particular. Sin embargo, hay muchos de esos elementos de ese tipo en la página, con muchas clases diferentes.Elemento de extracción sin atributo de clase

Necesito uno que no tiene ningún atributo de clase.

¿Debo buscar uno con class == '', o hay alguna otra manera?

+2

¿Se puede utilizar class = Ninguno? – user557862

Respuesta

29

Uso

soup.findAll(attrs={'class': None}) 

Citando documentos:

Puede utilizar attrs si usted necesita para poner restricciones a los atributos cuyos nombres son palabras reservadas de Python, como clase, para, o de importación; o atributos cuyos nombres son argumentos que no son palabras clave para los métodos de búsqueda de Beautiful Soup: name, recursive, limit, text o attrs.

3

A partir del Beautiful Soup version 4.1.2, puede utilizar el class_ keyword argument.

Para seleccionar un elemento sin un atributo de clase, sólo puede especificar None:

soup.find_all(class_=None) 

Alternativamente, especificando False también funciona:

soup.find_all(class_=False) 
Cuestiones relacionadas