查找包含搜索词和Beautiful Soup的链接

时间:2016-02-28 10:43:39

标签: python beautifulsoup

我想在页面中找到并打印包含单词" love"的链接列表。

页面示例

<a href="http://example/foto-fujifilm/">i like love with you</a>
<a href="http://example/foto-fujifilm/">i don't like love</a>
<a href="http://example/foto-fujifilm/">love is my problem</a>
<a href="http://example/foto-fujifilm/">i don't now</a>

这是我的代码

from bs4 import BeautifulSoup
import requests

url = raw_input("Enter a website to extract the URL's from: ")

r  = requests.get("http://" +url)

data = r.text

soup = BeautifulSoup(data,'lxml')

for a in soup.find_all('a', string="*love*"):
    print "Found the URL:", a['href']

如何使用通配符字符串在文本中搜索爱情?

1 个答案:

答案 0 :(得分:2)

美丽的汤也接受正则表达式......

import re

for a in soup.find_all('a', string=re.compile('love')):
    print('Found the URL:', a['href'])

和功能。

for a in soup.find_all('a', string=lambda s: 'love' in s):
    print('Found the URL:', a['href'])

<强> 编辑:

对于不区分大小写的搜索:

re.compile('love', re.IGNORECASE)

lambda s: 'love' in s.lower()