我不熟悉編碼并嘗試使用 Python 學習 Selenium。我希望單擊下載按鈕,但出現錯誤“'Str' object not callable”。使用 Python 3.10 和 Selenium 4.1.3
這是我的代碼:
import os
from selenium import webdriver
from selenium.webdriver.common.by import By
os.environ['PATH'] = r"C:\SeleniumDrivers"
driver = webdriver.Chrome()
driver.get("https://www.python.org/downloads")
driver.implicitly_wait(10)
my_element = driver.find_element(By.XPATH("//a[contains(@href,'Download Python 3.10.4')]"))
my_element.click()
uj5u.com熱心網友回復:
我假設您想單擊“下載 Python”`。如果是,則此代碼可以完成作業,
my_element = driver.find_element(by = By.XPATH, value = "//*[@id='touchnav-wrapper']/header/div/div[2]/div/div[3]/p/a")
my_element.click()
您的代碼有兩個問題 -
你這樣做了
By.XPATH("//a[contains(@href,'Download Python 3.10.4')]")。這里By.XPATH實際上不是一個函式,而只是一個值為“XPATH”的變數,所以你不能在其中傳遞引數。這就是為什么你得到'str' object is not callable錯誤。對于 XPATH,您需要使用類似這樣的東西driver.find_element(by = By.XPATH, value = <XPATH>)。即使您在上面所做的事情是正確的,您傳遞的 XPATH 也是不正確的。正確的 XPATH 是
my_element = driver.find_element(by = By.XPATH, value = "//*[@id='touchnav-wrapper']/header/div/div[2]/div/div[3]/p/a").
轉載請註明出處,本文鏈接:https://www.uj5u.com/houduan/465597.html
上一篇:SeleniumJava4.1.3java.lang.NoClassDefFoundError:org/openqa/selenium/WebDriver
