beautifulsoup-文本前面有img标签时,锚标签的过滤器文本不起作用

问题描述

我有以下html内容:

from bs4 import BeautifulSoup
import re

html = """<a href="http://app_url1" >install app xyz</a>
<a href="http://app_url2" ><img src="/path.jpg">install app xyz</a>
<a href="http://app_url3" >install app aaa</a>
<a href="http://app_url4">install app aaa</a>"""
soup = BeautifulSoup(html,"html.parser")
print(soup.findAll("a",text=re.compile("xyz$")))

我要过滤以给定正则表达式模式结尾的锚标记文本(例如此处的xyz)?我希望通过一个正则表达式模式来findAll,而不是所有锚标记的额外迭代。但是我只输出一个锚标签作为

<a href="http://app_url1">install app xyz</a>

另一个在文本前面带有img的锚标记将被忽略

预期输出:

<a href="http://app_url1" >install app xyz</a>
<a href="http://app_url2" ><img src="/path.jpg">install app xyz</a>

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)