繁体   English   中英

如何使用BeautifulSoup在python中用字符串替换HTML内容?

[英]How do I replace HTML content with a string in python using BeautifulSoup?

>>> from bs4 import BeautifulSoup
>>> sample = '''\
... <section id="about" class="about-section">
...     <div class="container">
...         <div class="row">
...             <div class="col-lg-12">
...                 <h1>About Section</h1>
... 
...                 <p class = "test-message-one"> Hey </p>
... 
...             </div>
...         </div>
...     </div>
... </section>
... '''
>>> soup = BeautifulSoup(sample)
>>> test = soup.find_all(class_='test-message-one')
>>> print(test)

退货

[<p class="test-message-one"> Hey </p>]

如何用python中保存的字符串替换内容“ Hey”?

我需要用保存的变量覆盖HTML-但我在BS4中了解的大多数文档仅显示了如何更改类的名称,而不是内容本身。

可以说我在python中有这个字符串:

>>> replace=('Testing...123')

我如何获得将其写回HTML的信息:

  >>> from bs4 import BeautifulSoup
    >>> sample = '''\
    ... <section id="about" class="about-section">
    ...     <div class="container">
    ...         <div class="row">
    ...             <div class="col-lg-12">
    ...                 <h1>About Section</h1>
    ... 
    ...                 <p class = "test-message-one"> Testing...123 </p>
    ... 
    ...             </div>
    ...         </div>
    ...     </div>
    ... </section>
    ... '''

你可以这样

for i in soup.find_all(class_='test-message-one'):
    i.string = var
print soup

其中var是存储替换字符串的变量。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM