簡體   English   中英

如何訪問一個 div 中的特定鏈接?

[英]How to access specific links in one div?

我正在嘗試訪問此 div 中的第二個鏈接(該 div 中有許多鏈接):

[<div class="tabs standard-box"><a class="stats-top-menu-item stats-top-menu-item-link" data-link-tracking-column="[Main content]" data-link-tracking-destination="Click on Overview [subnavigation]" data-link-tracking-page="Matchstats" href="/stats/teams/7865/HAVU">Overview</a><a class="stats-top-menu-item stats-top-menu-item-link selected" data-link-tracking-column="[Main content]" data-link-tracking-destination="Click on Matches [subnavigation]" data-link-tracking-page="Matchstats" href="/stats/teams/matches/7865/HAVU">Matches</a><a class="stats-top-menu-item stats-top-menu-item-link" data-link-tracking-column="[Main content]" data-link-tracking-destination="Click on Maps [subnavigation]" data-link-tracking-page="Matchstats" href="/stats/teams/maps/7865/HAVU">Maps</a><a class="stats-top-menu-item stats-top-menu-item-link" data-link-tracking-column="[Main content]" data-link-tracking-destination="Click on Players [subnavigation]" data-link-tracking-page="Matchstats" href="/stats/teams/players/7865/HAVU">Players</a><a class="stats-top-menu-item stats-top-menu-item-link" data-link-tracking-column="[Main content]" data-link-tracking-destination="Click on Event history [subnavigation]" data-link-tracking-page="Matchstats" href="/stats/teams/events/7865/HAVU">Event history</a><a class="stats-top-menu-item stats-top-menu-item-link" data-link-tracking-column="[Main content]" data-link-tracking-destination="Click on Lineups [subnavigation]" data-link-tracking-page="Matchstats" href="/stats/teams/lineups/7865/HAVU">Lineups</a></div>]

我嘗試了很多方法,但似乎無法訪問它。 嘗試訪問“/stats/teams/matches/7865/HAVU”(我是 python 新手)

teammatch 的 output 是上面的 div。

我嘗試了以下方法:

  • find_all('a')['href']
  • find({'class':'stats-top-menu-item stats-top-menu-item-link')
r = soup.find_all('div',{'class':'tab-content '},{'id':'TODAY'})

for result in r[1:]:
    tournament = result.find_all('div',{'class':'ongoing-event-holder'})
    link = tournament.find('a')['href']

link2 = requests.get('https://www.hltv.org' + link, headers=headers)
soup2 = BeautifulSoup(link2.text,'html.parser')
team = soup2.find_all('div',{'class':'groups'})
for result1 in team:
    team1 = result1.find('div',{'class':'text-ellipsis'})
    link3 = team1.find('a')['href']

link4 = requests.get('https://www.hltv.org' + link3, headers=headers)
x = ('https://www.hltv.org' + link3) + str('#tab-statsBox')
link5 = requests.get(x, headers=headers)
soup3 = BeautifulSoup(link5.text, 'html.parser')
team_stats = soup3.find_all('div',{'class':'moreButton-container'})
for result2 in team_stats:
    teamstatlink = result2.find('a')['href']

link6 = requests.get('https://www.hltv.org' + teamstatlink, headers=headers)
soup4 = BeautifulSoup(link6.text, 'html.parser')
team_matches = soup4.find_all('div',{'class':'stats-top-menu'})
for result3 in team_matches:
    teammatch = result3.find_all('div',{'class':'tabs standard-box'})

這里的目標是將link7分配給'/stats/teams/matches/7865/HAVU'

如果您需要更多信息,請告訴我。

您可以獲取所有<a>元素,並使用get()方法提取 href 屬性。 然后從結果列表中獲取第二個鏈接。 它可以使用列表理解在一行中完成:

link7 = [a.get("href") for a in teammatch[0].find_all("a")][1]

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM