第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

我無法從 bs4 對象中找到重復(fù)出現(xiàn)的元素

我無法從 bs4 對象中找到重復(fù)出現(xiàn)的元素

桃花長相依 2023-12-04 17:04:03
我遇到的問題讓我發(fā)瘋。我正在嘗試從職業(yè)足球參考網(wǎng)站中提取文本。我需要的信息位于網(wǎng)頁第二部分中td顯示的元素中。qb hurries該信息位于名為 的 td 元素中qb_hurry。這是我到目前為止所擁有的:res = requests.get('https://www.pro-football-reference.com/players/D/DonaAa00.htm')soup = bs4.BeautifulSoup(res.text, 'html.parser')我試過totalQbHurrys = soup.find('div', {'id':'all_detailed_defense'})當我解析美麗的湯對象并打印它時,我可以看到需要提取的信息。但是當我嘗試檢索td我需要的元素時totalQbHurrys = soup.find('div', {'id':'all_detailed_defense'}).find('td', {'data-stat':'qb_hurry'})它返回None,我認為我正在尋找的文本首先作為注釋存在,但我無法獲取我需要的實際 HTML 元素。有人知道成功定位該元素的方法嗎qb_hurry?
查看完整描述

3 回答

?
FFIVE

TA貢獻1797條經(jīng)驗 獲得超6個贊

問題是該字段位于 HTML 注釋標記內(nèi)。


這是一個決議:


import bs4

import requests


res = requests.get('https://www.pro-football-reference.com/players/D/DonaAa00.htm')


soup = bs4.BeautifulSoup(res.text, 'html.parser')


extract = soup.find('div', {'id':'all_detailed_defense'})


for comments in extract.find_all(text=lambda text:isinstance(text, bs4.Comment)):

? ? comments.extract()


soup2 = bs4.BeautifulSoup(comments, 'html.parser')


totalQbHurrys = soup2.find('td', {'data-stat':'qb_hurry'})


print(totalQbHurrys)


查看完整回答
反對 回復(fù) 2023-12-04
?
德瑪西亞99

TA貢獻1770條經(jīng)驗 獲得超3個贊

from selenium import webdriver

from selenium.webdriver.firefox.options import Options

import pandas as pd


options = Options()

options.add_argument('--headless')


driver = webdriver.Firefox(options=options)


driver.get("https://www.pro-football-reference.com/players/D/DonaAa00.htm")


df = pd.read_html(driver.page_source, attrs={

                  'class': 'row_summable sortable stats_table now_sortable'}, header=1)[0]


print(df.loc[1, 'Hrry'])


driver.quit()

輸出:


32


查看完整回答
反對 回復(fù) 2023-12-04
?
紅糖糍粑

TA貢獻1815條經(jīng)驗 獲得超6個贊

您需要的 HTML 位于注釋內(nèi),因此在soup. 您需要首先獲取注釋,然后將其解析為新soup對象。然后您可以從中找到tr和th元素。例如:


from bs4 import BeautifulSoup, Comment

import requests


res = requests.get('https://www.pro-football-reference.com/players/D/DonaAa00.htm')

soup = BeautifulSoup(res.text, 'html.parser')

div = soup.find('div', {'id':'all_detailed_defense'})

comment_html = div.find(string=lambda text: isinstance(text, Comment))

comment_soup = BeautifulSoup(comment_html, 'html.parser')


for tr in comment_soup.find_all('tr'):

    row = [td.text for td in tr.find_all(['td', 'th'])]

    print(row)

給你:


['', 'Games', 'Pass Coverage', 'Pass Rush', 'Tackles']

['Year', 'Age', 'Tm', 'Pos', 'No.', 'G', 'GS', 'Int', 'Tgt', 'Cmp', 'Cmp%', 'Yds', 'Yds/Cmp', 'Yds/Tgt', 'TD', 'Rat', 'DADOT', 'Air', 'YAC', 'Bltz', 'Hrry', 'QBKD', 'Sk', 'Prss', 'Comb', 'MTkl', 'MTkl%']

['2018*+', '27', 'LAR', 'DT', '99', '16', '16', '0', '1', '0', '0.0%', '0', '', '0.0', '0', '39.6', '-2.0', '0', '0', '0', '30', '19', '20.5', '70', '59', '6', '9.2%']

['2019*+', '28', 'LAR', 'DT', '99', '16', '16', '0', '0', '0', '', '0', '', '', '0', '', '', '0', '0', '0', '32', '9', '12.5', '55', '48', '6', '11.1%']



查看完整回答
反對 回復(fù) 2023-12-04
  • 3 回答
  • 0 關(guān)注
  • 158 瀏覽

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動學(xué)習(xí)伙伴

公眾號

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號