Python 是否可以使用BeautifulSoup在中编辑内联代码?

Python 是否可以使用BeautifulSoup在中编辑内联代码?,python,beautifulsoup,Python,Beautifulsoup,我知道可以使用beautifulsoup编辑文本,是否可以编辑href链接?我想能够说,并使用beautifulsoup将其更改为。我不知道我将如何使用beautifulsoup来做到这一点?非常感谢您的帮助。与您的另一个问题一样:使用BeautifulSoup,您将内容解析为一组表示文档的分层嵌套对象,然后在将这些对象序列化回不同的文本之前更改这些对象。您没有直接编辑文本 标记的href=“…”部分表示一个属性。要访问BeautifulSoup中每个元素的属性,请使用el[name]。因此,要

我知道可以使用beautifulsoup编辑文本,是否可以编辑href链接?我想能够说
,并使用beautifulsoup将其更改为
。我不知道我将如何使用beautifulsoup来做到这一点?非常感谢您的帮助。

与您的另一个问题一样:使用BeautifulSoup,您将内容解析为一组表示文档的分层嵌套对象,然后在将这些对象序列化回不同的文本之前更改这些对象。您没有直接编辑文本

标记的
href=“…”
部分表示一个属性。要访问BeautifulSoup中每个元素的属性,请使用
el[name]
。因此,要在
a href
属性中将根URL更改为绝对URL,只需执行以下操作:

for link in soup.findAll('a'):
    if link['href'].startswith('/'):
        link['href']= 'http://www.foobarinc.com'+link['href']

与您的另一个问题一样:使用BeautifulSoup,您将内容解析为一组表示文档的分层嵌套对象,然后在将这些对象序列化回不同的文本之前更改这些对象。您没有直接编辑文本

标记的
href=“…”
部分表示一个属性。要访问BeautifulSoup中每个元素的属性,请使用
el[name]
。因此,要在
a href
属性中将根URL更改为绝对URL,只需执行以下操作:

for link in soup.findAll('a'):
    if link['href'].startswith('/'):
        link['href']= 'http://www.foobarinc.com'+link['href']

尽管OP在对bobince的评论中说了什么,但下面的代码工作得很好:

from BeautifulSoup import BeautifulSoup

ht = '''
  <a href="/foo/bar/">Hello world</a>
'''
soup = BeautifulSoup(ht)

for link in soup.findAll('a'):
    if link['href'].startswith('/'):
        link['href']= 'http://www.foobarinc.com'+link['href']
print soup
从美化组导入美化组
ht='''
'''
汤=美汤(ht)
对于soup.findAll('a')中的链接:
如果链接['href'].startswith('/'):
链接['href']='http://www.foobarinc.com'+链接['href']
印花汤
散发

<a href="http://www.foobarinc.com/foo/bar/">Hello world</a>

如所愿。因此,与其含糊其辞地宣称


我也尝试过类似的事情, 但是一直没有人回来。我 找不到字典的列表 与标记匹配的。我试过这个, 它返回keyrerror:href


(???),OP最好尝试修改我刚刚发布的代码,让它越来越接近他自己的代码,直到奇怪的错误
[none]返回
,并且
KeyError:href
(???)出现:在那个时候,让它们出现的最后一次更改应该会让OP犯了什么错误——如果不是的话,像我一样发布准确的数据和代码,以及准确的复制和粘贴回溯(含糊不清的个人解释!-),我打赌我们能够提供帮助!)

不管OP在对bobince的评论中怎么说,下面的代码工作得很好:

from BeautifulSoup import BeautifulSoup

ht = '''
  <a href="/foo/bar/">Hello world</a>
'''
soup = BeautifulSoup(ht)

for link in soup.findAll('a'):
    if link['href'].startswith('/'):
        link['href']= 'http://www.foobarinc.com'+link['href']
print soup
从美化组导入美化组
ht='''
'''
汤=美汤(ht)
对于soup.findAll('a')中的链接:
如果链接['href'].startswith('/'):
链接['href']='http://www.foobarinc.com'+链接['href']
印花汤
散发

<a href="http://www.foobarinc.com/foo/bar/">Hello world</a>

如所愿。因此,与其含糊其辞地宣称


我也尝试过类似的事情, 但是一直没有人回来。我 找不到字典的列表 与标记匹配的。我试过这个, 它返回keyrerror:href


(???),OP最好尝试修改我刚刚发布的代码,让它越来越接近他自己的代码,直到奇怪的错误
[none]返回
,并且
KeyError:href
(???)出现:在那个时候,让它们出现的最后一次更改应该会让OP犯了什么错误——如果不是的话,像我一样发布准确的数据和代码,以及准确的复制和粘贴回溯(含糊不清的个人解释!-),我打赌我们能够提供帮助!)

你需要用“代码”按钮(101010)突出显示你的锚定标签,这样我们才能看到它们。你需要用“代码”按钮(101010)突出显示你的锚定标签,这样我们才能看到它们。我尝试过类似的事情,但一直没有得到返回。我找不到与标记匹配的词典列表。我尝试了这个,它返回了keyrerror:href。另外,非常感谢bobince。我也尝试过类似的事情,但一直没有得到回报。我找不到与标记匹配的词典列表。我尝试了这个,它返回了keyrerror:href。另外,非常感谢bobince。