Python 打印可能包含列表中任何单词的所有链接
如何打印包含单词列表中单词的网页中的所有链接。我使用Beautifulsoup获得了包含“联系人”一词的链接列表,代码如下所示Python 打印可能包含列表中任何单词的所有链接,python,beautifulsoup,Python,Beautifulsoup,如何打印包含单词列表中单词的网页中的所有链接。我使用Beautifulsoup获得了包含“联系人”一词的链接列表,代码如下所示 soup = BeautifulSoup(html_page, "html.parser") for link in soup.findAll('a'): links = link.get('href') if 'contact' in links: print links 但是,我如何打印具有以下条件的链接 keywords = ("
soup = BeautifulSoup(html_page, "html.parser")
for link in soup.findAll('a'):
links = link.get('href')
if 'contact' in links:
print links
但是,我如何打印具有以下条件的链接
keywords = ("contact", "reach", "feedback", "address")
if links contain any words from keywords: ## this is not actual code
print links;
这可能是重复的,虽然我在手机上,所以我很难找到另一个问题来回答你的问题 简而言之,您可能需要的是列表理解和
any
if any( [word in links for word in keywords] )
any
如果列表中至少有一个真值,则返回True(有趣的是,它在功能上基本等同于sum
,因为Python是如何将布尔值转换为整数的)。列表理解为链接中关键字的所有计算生成一个布尔列表
编辑:
由于@COLDSPEED,括号可能会被删除。您可以删除
[
和]