我試圖用 selenium 按下一個按鈕,因為之后我需要檢查網站的完整 html。這是我正在使用的代碼:
driver = webdriver.Chrome()
driver.get('https://www.quattroruote.it/listino/audi/a4-allroad')
time.sleep(10)
html = driver.find_element_by_id('btnallestimenti')
html.click()
但我收到此錯誤: selenium.common.exceptions.ElementNotInteractableException: Message: element not interactable
當頁面打開時,會出現 cookie 和其他內容,有沒有辦法阻止所有這些內容,以便我可以處理 html?
非常感謝!
uj5u.com熱心網友回復:
您可以嘗試接受 cookie 并繼續進行,檢查以下代碼行。
options = Options()
options.add_argument("--disable-notifications")
driver = webdriver.Chrome(options=options,"ChromeDriver_Path")
driver.maximize_window()
driver.get('https://www.quattroruote.it/listino/audi/a4-allroad')
sleep(10)
cookie_btn = driver.find_element_by_xpath("//button[text()='Accetta']")
cookie_btn.click()
sleep(3)
WebDriverWait(driver,10).until(EC.frame_to_be_available_and_switch_to_it((By.ID,"promo-premium-iframe")))
register_btn = driver.find_element_by_xpath("//a[normalize-space()='Accedi o Registrati']")
register_btn.click()
iframe可用所以剛切換到iframe,嘗試進行注冊。
uj5u.com熱心網友回復:
正如您所看到的,“cookies”橫幅本身就是一個 HTML 元素,它包含一個可以單擊的“關閉”(“Chiudi”)按鈕。
如果您檢查頁面源代碼,您會發現與該按鈕相關的代碼:
<button type="button" class="iubenda-cs-close-btn" tabindex="0" role="button" aria-pressed="false" style="font-size:16px!important;">Chiudi</button>
您的腳本需要修改以通過可見文本(使用 XPath)搜索元素并單擊它以關閉橫幅:
close_button = driver.find_element_by_xpath("//*[text()='Chiudi']")
close_button.click()
我可以看到這種橫幅出現了 2 次(一次用于 cookie,一次用于“Informativa”),但是一旦您單擊此橫幅,您就會被重定向到正確的頁面。
當然,您需要測驗您的腳本并將其調整為頁面的行為。
另外,請注意,每次由于開發人員更改頁面而更改頁面時,您的腳本都會中斷,您需要重新調整它。
編輯
在此處發布完整代碼,嘗試使用它并從此處繼續:
import time
from selenium.webdriver import Chrome
driver = Chrome()
driver.get("https://www.quattroruote.it/listino/audi/a4-allroad")
time.sleep(6)
driver.find_element_by_xpath("//button[text()='Accetta']").click()
time.sleep(6)
driver.switch_to.frame("promo-premium-iframe")
driver.find_element_by_xpath("//a[normalize-space()='Non sono interessato']").click()
time.sleep(6)
driver.switch_to.default_content()
driver.find_element_by_id("btnallestimenti").click()
input()
轉載請註明出處,本文鏈接:https://www.uj5u.com/ruanti/317216.html
上一篇:LIbreOffice-如果我發送許多請求,轉換為pdf的無頭檔案就會停止作業
下一篇:HTMLCSS不起作用
