【问题标题】:How to replace a number of string with incremental count in python如何在python中用增量计数替换多个字符串
【发布时间】:2023-04-02 18:37:02
【问题描述】:

我在一个字符串中有一些 HTML 代码(用于在浏览器中显示),其中包含任意数量的 svg 图像,例如:

<table>
  <tr>
    <td><img src="http://localhost/images/Store.Tools.svg"></td>
    <td><img src="http://localhost/images/Store.Diapers.svg"></td>
  </tr>
</table>

我想找到所有 HTML 链接并将它们替换为以下内容(以便将它们作为电子邮件附加):

<table>
  <tr>
    <td><cid:image1></td><td><cid:image2></td>
  </tr>
</table>

SVG 文件名可以包含任意数量的点、字符和数字。

在 python 中最好的方法是什么?

【问题讨论】:

  • 可以使用类似于BeautifulSoup的HTML解析器。
  • 这是我的代码,我不是在刮东西。
  • BS 不限于抓取,它也可以用于一般的 HTML 解析。
  • 很公平,我认为它更基本......诀窍是每次找到新的“http”字符串时增加 image[#]。它最初格式化的原因(感谢那些帮助格式化它的人)是因为它都是一行。
  • 检查@alecxe 的答案。那应该这样做。如果它是一个字符串并不重要。只要格式正确,BS 就可以解析它。即使不是,也有 机会 BS 可以修复它。

标签:
python
html
html-parsing