请帮助从字符串中制作,例如:
<a href="http://testsite.com" class="className">link_text_part1 <em>another_text</em> link_text_part2</a>
字符串如:
link_text_part1 another_text link_text_part2
在 Python 中使用正则表达式
!note testsite.com 更改
所以你想删除<a>
和<em>
标签?可以这样做:
>>> s = '<a href="http://testsite.com" class="className">link_text_part1 <em>another_text</em> link_text_part2</a>'
>>> re.sub("</?(a|em).*?>", "", s)
'link_text_part1 another_text link_text_part2'
在英语中,这会搜索:
并用空字符串替换它们。
然而,正如 Kos 所说,使用正则表达式解析 HTML 具有很高的风险和脆弱性,除非您知道您正在解析的 HTML 的格式永远不会改变。
string = re.sub('<[^>]+>', '', string)
通常强烈不推荐使用正则表达式解析 HTML,即使对于简单的情况也是如此。您永远不会知道什么时候遇到了一些会混淆您的正则表达式的 HTML 代码。
轻量级 HTML 解析器通常是更可靠和更优雅的解决方案。
顺便提一句。这有助于:
from scrapy.utils.markup import remove_tags
...
bbb=remove_tags(aaa)