美化组-修改HTML中的所有链接?

2024-10-03 11:13:52 发布

您现在位置:Python中文网/ 问答频道 /正文

我需要能够修改HTML文档中的每个链接。我知道我需要使用SoupStrainer,但是我对如何实现它不是百分之百的肯定。如果有人能指导我找到一个好的资源或提供一个代码示例,我将非常感激。

谢谢。


Tags: 代码文档示例链接html资源指导soupstrainer
3条回答

也许像这样的方法会奏效?(不幸的是,我面前没有Python解释器)

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)

我尝试了这个方法,并且成功了,避免使用regexp来匹配每个'href'

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

查一下,在bs4 docs

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)

这是Lusid的解决方案,但是由于他面前没有Python解释器,所以他无法对其进行测试,并且出现了一些错误。我只是想公布工作情况。谢谢卢西德!

相关问题 更多 >