python - 如何从 CSV 文件中替换 python 中字符串的一部分?
问题描述
我使用 Selenium 和 Web 驱动程序来抓取一些信息并输出 CSV 文件。
然后,我想使用读取的 CSV 文件来捕获 HTML 代码并删除部分字符串。
我尝试使用替换方法将其删除,但失败了。
以下是一个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 将第一个参数中传递给它的字符串替换为第二个参数中传递给它的字符串。第三个参数是您要搜索的字符串。块引号之间的 .* 表示选择除换行符之外的任意数量的未指定字符。flags=re.DOTALL 将强制 . 包括换行符。
推荐阅读
- angular - HTTP 服务调用绑定到 HTML 元素
- node.js - AWS NodeJS Lambda 函数中的缓存内存
- github - !git push:-- 致命:无法读取“https://github.com”的用户名:没有这样的设备或地址||google colaboratory
- javascript - 是否可以使用摊牌解析 Markdown 文件中的标题?
- android - 离子图标不能与 Android 上的离子日期时间一起点击
- javascript - 如何在画布中创建撤消功能?
- fluentd - fluentd:多个过滤器和匹配的一个来源
- javascript - 如何在 for 循环中使用变量递增或递减?
- powershell - 避免在 GitHub 存储库中复制粘贴代码的最佳方法是什么
- extjs - EXTJS-Combobox(组合框列表选项未显示?)