下面是使用BeautifulSoup解析HTML的脚本的一部分。我试图从一个网页,这是后来被使用的链接。 一切似乎都很好地工作,但我只想得到其中的一些链接,而不是所有的,我的意思是我只感兴趣的链接放在第一个表上的网页。我知道我可以手动缩短列表,但这对我来说不太管用。你知道吗
以下是页面的url:https://www.spotrac.com/nba/atlanta-hawks/cap/
有什么办法可以做到吗?你知道吗
from bs4 import BeautifulSoup
from urllib.request import Request, urlopen
import re
req = Request("https://www.spotrac.com/nba/atlanta-hawks/cap/")
html_page = urlopen(req)
soup = BeautifulSoup(html_page, features="html.parser")
links = []
for link in soup.find_all('a'):
links.append(link.get('href'))
players=[]
i=0
while i<len(links):
if "redirect/player" in links[i]:
players.append(links[i])
i+=1
print(players)
您可以在下面调整此代码。你知道吗
结果:
如果这是您需要的,请将此答案标记为已接受。你知道吗
首先对包含第一组名称的表使用
find
,可以缩小范围:通过查看源代码,您需要的数据似乎位于
tbody
。你知道吗我会考虑使用
first-child
css选择器来限制到第一个表;您可以使用descendant combinator
来选择表中的href
属性(您的链接)。你知道吗相关问题 更多 >
编程相关推荐