【问题标题】:Error when using the “find_element” command in selenium python在 selenium python 中使用“find_element”命令时出错
【发布时间】:2020-10-26 16:17:42
【问题描述】:

我正在为此编写一个与 google 页面(google meet)交互的引导程序,我正在使用 selenium webdriver,但是当我在 python 中运行代码 find_element 时,它会出现以下错误:

selenium.common.exceptions.NoSuchElementException: Message: no such element: Unable to locate element:

{"method":"xpath","selector":"/html/body/div[1]/div[3]/div/div[2]/div[3]/div/span/span"}

这是我的代码:

import os
from datetime import date
from datetime import datetime
from time import sleep
import selenium
from selenium import webdriver

hora = 360
driver = selenium.webdriver.Chrome(r"C:\Users\adelson\Desktop\chromedriver")

def segunda():
    if now.hour == 21:
        os.startfile('link da reunião')
        sleep(20)
        my_button = driver.find_element_by_xpath("/html/body/div[1]/div[3]/div/div[2]/div[3]/div/span/span")
        my_button.click()
        sleep(hora)

while True:

    now = datetime.now()
    data = date(now.year, now.month, now.day)

#segunda
    if data.isoweekday() == 1:
        segunda()
    sleep(120)

【问题讨论】:

  • 您没有调用driver.get() 来加载页面。 Chrome 启动时是否默认加载页面?
  • 我同意@JohnGordon 的观点,将os.startfile('link da reunião') 替换为driver.get(...) 并返回结果。
  • @JustinEzequiel 它有效,但它打开了一个 chromedriver 选项卡,出于多种原因,我需要打开普通的 chrome,有什么办法可以做到这一点吗?
  • “出于几个原因,我需要打开普通的 chrome”——想举个例子吗? Selenium 用于控制由驱动程序打开的浏览器实例,而不是 AFAIK 用于控制已经运行的实例。
  • 如果您想加载特定用户的个人资料,请参阅oreilly.com/library/view/selenium-essentials/9781784394332/…

标签: python html selenium-webdriver google-meet


【解决方案1】:

显然,错误表明它无法找到您正在搜索的任何元素。仔细检查您拥有的 XPath 是否正确。您可以通过右键单击浏览器中的元素来检查它。并复制完整的 Xpath

【讨论】:

    猜你喜欢
    • 2018-12-11
    • 1970-01-01
    • 1970-01-01
    • 2022-07-15
    • 1970-01-01
    • 2017-06-15
    • 2020-03-07
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多