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

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

Selenium 按類和標(biāo)簽查找方法顯示不存在任何元素

Selenium 按類和標(biāo)簽查找方法顯示不存在任何元素

慕碼人8056858 2022-05-19 15:41:11
我正在嘗試從我的 Netflix 帳戶中推斷出 Selenium 的偏好。使用 find_elements_by_class_name 我設(shè)法登錄,選擇個(gè)人資料,打開帳戶頁面并將列表從視圖更改為評分,但我不知道如何從表中選擇電影,因?yàn)樯鲜龉δ軟]有顯示任何結(jié)果當(dāng)用于他們的類或標(biāo)簽名稱時(shí)。這是我到目前為止編寫的代碼,我只遇到了最后一行的問題:from selenium.webdriver.chrome.options import Optionsfrom selenium.webdriver.common.keys import Keysfrom selenium import webdriverch = Options()ch.add_argument("--disable-extensions")ch.add_argument("--disable-gpu")ch.add_argument("--incognito")browser = webdriver.Chrome(options = ch)browser.get("https://www.netflix.com/login")username = browser.find_element_by_id("id_userLoginId")password = browser.find_element_by_id("id_password")username.send_keys(input('Insert e-mail: '))password.send_keys(getpass(prompt = "Insert password: "))password.send_keys(Keys.ENTER)profiles = browser.find_elements_by_class_name("profile-name")print(profiles)profiles[0].click()browser.get("https://www.netflix.com/viewingactivity")browser.find_element_by_class_name("choice.icon.rating").click()print(browser.find_elements_by_class_name("retableRow"))我所指的 Hmtl 代碼是(抱歉格式很糟糕):<ul class="structural retable stdHeight"><li class="retableRow"><div class="col date nowrap">05/09/19</div><div class="col title"><a href="/title/70099111">Watchmen</a></div><div class="col rating nowrap"><div class="thumbs-component thumbs thumbs-horizontal rated rated-up" data-uia="thumbs-container"><div class="nf-svg-button-wrapper thumb-container thumb-up-container " data-uia=""><a role="link" data-rating="0" tabindex="0" class="nf-svg-button simpleround" aria-label="Già valutato: pollice alzato (fai clic per rimuovere la valutazione)"><svg data-rating="0" class="svg-icon svg-icon-thumb-up-filled" focusable="true"><use filter="" xlink:href="#thumb-up-filled"></use></svg></a></div><div class="nf-svg-button-wrapper thumb-container thumb-down-container " data-它應(yīng)該打印“retableRow”類的所有元素的列表,但它會打印一個(gè)空列表。我已經(jīng)嘗試使用具有相似結(jié)果的類“col.title”,并使用標(biāo)簽“l(fā)i”給了我完全不同的元素,我不感興趣。我做錯(cuò)了什么?
查看完整描述

1 回答

?
喵喔喔

TA貢獻(xiàn)1735條經(jīng)驗(yàn) 獲得超5個(gè)贊

您正在嘗試查找尚不存在的元素。頁面可能是通過 ajax 調(diào)用或其他方式更新的。


browser.find_element_by_class_name("choice.icon.rating").click()

time.sleep(1)

print(browser.find_elements_by_class_name("retableRow"))

達(dá)達(dá)姆。等待它。


更優(yōu)雅的方法是等待元素存在,然后開始解析。例子:


from selenium.webdriver.support import expected_conditions as EC

from selenium.webdriver.support.wait import WebDriverWait

from selenium.webdriver.common.by import By


def wait_for_elem_by_xpath(xp):

    elem = WebDriverWait(browser, 20).until(EC.presence_of_element_located((By.XPATH, xp)))

    return elem


這樣,將示例代碼中的最后一行替換為:


your_list = wait_for_elem_by_xpath('//*[@class="retableRow"]')

print(your_list)

它會起作用。


查看完整回答
反對 回復(fù) 2022-05-19
  • 1 回答
  • 0 關(guān)注
  • 124 瀏覽
慕課專欄
更多

添加回答

舉報(bào)

0/150
提交
取消
微信客服

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

幫助反饋 APP下載

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

公眾號

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