with tutorial scraping scrap page examples beautifulsoup4 python beautifulsoup

python - tutorial - BeautifulSoup-¿modificando todos los enlaces en una pieza de HTML?



web scraping python (3)

Necesito poder modificar cada enlace en un documento HTML. Sé que necesito usar SoupStrainer pero no estoy 100% seguro de cómo implementarlo. Si alguien pudiera dirigirme a un buen recurso o proporcionar un ejemplo de código, sería muy apreciado.

Gracias.


from BeautifulSoup import BeautifulSoup soup = BeautifulSoup(''<p>Blah blah blah <a href="http://google.com">Google</a></p>'') for a in soup.findAll(''a''): a[''href''] = a[''href''].replace("google", "mysite") print str(soup)

Esta es la solución de Lusid, pero como no tenía un intérprete de Python frente a él, no pudo probarlo y tuvo algunos errores. Solo quería publicar las condiciones de trabajo. ¡Gracias Lusid!


Intenté esto y funcionó, es más fácil evitar el uso de expresiones regulares para hacer coincidir cada ''href'' :

from bs4 import BeautifulSoup as bs soup = bs(htmltext) for a in soup.findAll(''a''): a[''href''] = "mysite"

Compruébalo, en documentos bs4 .


Tal vez algo así podría funcionar? (No tengo un intérprete de Python en frente de mí, desafortunadamente)

from BeautifulSoup import BeautifulSoup soup = BeautifulSoup(''<p>Blah blah blah <a href="http://google.com">Google</a></p>'') for a in soup.findAll(''a''): a[''href''] = a[''href''].replace("google", "mysite") result = str(soup)