tengo este código que recupera un texto de una página utilizando BeautifulSoupPython argumentos hermosa sopa
soup= BeautifulSoup(html)
body = soup.find('div' , {'id':'body'})
print body
Me gustaría hacer esto como una función reutilizable que lleva en algunos htmlText y las etiquetas para que coincida con ella como la tras
def parse(html, atrs):
soup= BeautifulSoup(html)
body = soup.find(atrs)
return body
Pero si hago una llamada como ésta
parse(htmlpage, ('div' , {'id':'body'}")) or like
parse(htmlpage, ['div' , {'id':'body'}"])
consigo únicamente el elemento div, el atributo del cuerpo parece ser ignorado.
¿Hay alguna manera de arreglar esto?
Gracias por su respuesta, funcionó. No sabía que se podían descomprimir listas usando *, pensé que solo los dicts funcionaban así usando * \ *. – scott
@scott: lea el artículo Marcado vinculado en su respuesta –
@EliBendersky ¡Genial! ¿Pero alguna idea de cómo podríamos descomprimir una sola clave de diccionario (como "clase" en 'del tag [" clase "]')? http://stackoverflow.com/questions/41792761/calling-and-using-an-attribute-stored-in-variable-using-beautifulsoup-4 – JinSnow