tutorial - web scraping python
Selector de clase mĂșltiple Beautifulsoup (2)
Puede usar selectores de CSS en su lugar, que es probablemente la mejor solución aquí.
soup.select("div.classname1.classname2")
También puedes usar una función.
def interesting_tags(tag):
if tag.name == "div":
classes = tag.get("class", [])
return "A" in classes and "B" in classes
soup.find_all(interesting_tags)
Quiero seleccionar todos los divs que tienen tanto A como B como atributos de clase.
La siguiente selección
soup.findAll(''div'', class_=[''A'', ''B''])
sin embargo, selecciona todos los div que tienen A o B en sus atributos de clase. Las clases pueden tener muchos otros atributos (C, D, etc.) en cualquier orden, pero quiero seleccionar solo aquellos que tienen A y B.
Use los css selectors
lugar:
soup.select(''div.A.B'')