栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 面试经验 > 面试问答

AttributeError:“列表”对象使用Selenium和Python没有属性“单击”

面试问答 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

AttributeError:“列表”对象使用Selenium和Python没有属性“单击”

我仍然建议您通过 XPATH* 使用 linkText 。原因xpath:是绝对的,如果 从HTML中 添加
删除了 另一个div ,则可能失败。而更改链接文本的机会很小。


/html/body/div[5]/section/div[8]/div[1]/a[1]
*****

因此,代替此 代码

elm = driver.find_elements_by_xpath("/html/body/div[5]/section/div[8]/div[1]/a[1]").click()

试试这个代码:

annual_link = driver.find_element_by_link_text('Annual')annual_link.click()

是的@Druta是正确的,

find_element
用于一个Web元素和Web元素
find_elements
列表。拥有总是很好
explicitwait

创建显式等待的实例,如下所示:

wait = WebDriverWait(driver,20)

并使用如下的等待引用:

wait.until(EC.elementToBeClickable(By.link_TEXT, 'Annual'))

更新:

from selenium import webdriverlink = 'https://www.investing.com/equities/apple-computer-inc-balance-sheet'driver = webdriver.Firefox()driver.maximize_window()wait = WebDriverWait(driver,40)driver.get(link)driver.execute_script("window.scrollTo(0, 200)")wait.until(EC.element_to_be_clickable((By.link_TEXT, 'Annual')))annual_link = driver.find_element_by_link_text('Annual')annual_link.click()print(annual_link.text)

确保导入这些:

from selenium.webdriver.common.keys import Keysfrom selenium.webdriver.common.by import Byfrom selenium.webdriver.support.ui import WebDriverWaitfrom selenium.webdriver.support import expected_conditions as EC


转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/392539.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号