使用解析器替换所有IMG元素的SRC
我正在寻找一种不使用正则表达式替换所有IMG标签中SRC属性的方法。(想要使用默认Python安装中随附的任何现成的HTML解析器)我需要将源代码减少到:
<img src="cid:imagename">
我正在尝试替换所有src标记以指向HTML电子邮件的附件的cid,因此我还需要更改任何来源,因此它只是文件名而没有路径或扩展名。
-
Python标准库中有一个HTML解析器,但是它不是很有用,并且自Python
2.6起已弃用。使用BeautifulSoup进行这种事情真的很容易:from BeautifulSoup import BeautifulSoup from os.path import basename, splitext soup = BeautifulSoup(my_html_string) for img in soup.findAll('img'): img['src'] = 'cid:' + splitext(basename(img['src']))[0] my_html_string = str(soup)