URL的webscrape中find和findall的属性错误



我是python的初学者,所以请放心。我正试图在网站上从客户那里获取成功故事的链接。我可以获得所有的链接,但还有一些我不想要或不需要的链接,比如公司facebook或linkedin。我正试着得到我想要的,没有多余的。我可以把它们全部拉上来,但一旦我试图进一步缩小搜索范围,我就会不断收到错误:website=href属性错误,AttributeError:ResultSet对象没有属性"find"。您可能将元素列表视为单个元素。当你打算调用find((时,你调用了find_all((吗?我试过使用.fund,但我得到了完全相同的错误。这是我目前掌握的代码。

from bs4 import BeautifulSoup
from urllib.request import Request, urlopen
import requests
req = Request('https://www.calix.com/about-calix/success-stories.html', headers={'User-Agent': 'Mozilla/5.0'})
webpage = urlopen(req).read()
soup = BeautifulSoup(webpage, "lxml")
#mydivs = soup.findAll("div", {"class": "tabBlock noBackground"})
#print(mydivs)
links =soup.findAll('a', {"link black cta-js"})
#print(links)
website = links.('href')
print(website)

如果您正在寻找公司网站,请尝试以下片段

from bs4 import BeautifulSoup
from urllib.request import Request, urlopen
import requests
req = Request('https://www.calix.com/about-calix/success-stories.html', headers={'User-Agent': 'Mozilla/5.0'})
webpage = urlopen(req).read()
soup = BeautifulSoup(webpage, "lxml")
mydivs = soup.findAll("div", {"class": "tabBlock noBackground"})
# print(mydivs)
links =soup.findAll('a', {"class":"link black cta-js "})
for link in links:
print(link['href']) #prints websites

当findAll返回一个列表时,您需要循环以获取所有链接和你错过的是"link black cta-js "课末尾的一个空格字符

最新更新