如何从 CSV 文件中替换 python 中的字符串的一部分?

How to replace a part of a string in python from CSV file?

我使用了 Selenium 和网络驱动程序来抓取一些信息并输出了一个 CSV 文件。

然后,我想使用读取 CSV 文件来捕获 HTML 代码并删除一部分字符串。

我尝试使用replace方法删除它,但是失败了。

下面是一个html例子:

<div class="ContentGrid">
    香港一年GDP 都3千幾億大美金
    <br>
    2成都6百幾
    <br>
    <br>
    <br>
</div>

<div class="ContentGrid">
    <blockquote>
        <div style="color: #0000A0;">
            <blockquote>
                <div style="color: #0000A0;">
                    藍店送聖誕卡比施生有乜下場
                    <img data-icons="???" src="/faces/wonder2.gif" alt="???">
                </div>
            </blockquote>
            <br>何只聖誕卡,直情要送埋聖誕樹賀一賀佢
            <img data-icons="#hehe#" src="/faces/hehe.gif" alt="#hehe#">
        </div>
    </blockquote>
    <br>
    施生只對聖誕卡有感覺。
    <br>
    <br>
    <br>
</div>

我有很多div class="ContentGrid"。但是,并非每个 div class="ContentGrid" 都有 <blockquote>...</blockquote>。所以我需要删除 <blockquote>...</blockquote>

的所有内容

以下是我的预期结果:

<div class="ContentGrid">
    香港一年GDP 都3千幾億大美金
    <br>
    2成都6百幾
    <br>
    <br>
    <br>
</div>

<div class="ContentGrid">

    <br>
    施生只對聖誕卡有感覺。
    <br>
    <br>
    <br>
</div>

这个怎么样?

import re

html = """
blah blah blah
    <blockquote>
        blah blah blah
    </blockquote>
blah blah blah
"""

new_html = re.sub("<blockquote>.*</blockquote>", "", html, flags=re.DOTALL)

print(new_html)

re.sub 将第一个参数中传递给它的字符串替换为第二个参数中传递给它的字符串。第三个参数是要搜索的字符串。块引号之间的 .* 表示 select 除换行符外的任意数量的未指定字符。 flags=re.DOTALL 将强制 .包括换行符。