Python Selenium找不到“;id";要单击的按钮的名称

Python Selenium找不到“;id";要单击的按钮的名称,python,google-chrome,selenium,Python,Google Chrome,Selenium,这是我想让我的代码点击的“按钮”,你可以看到它的id是:“syi create” 这是我的密码: from selenium import webdriver from selenium.webdriver.common.by import By from time import sleep browser = webdriver.Chrome("C:/Users/sebastian/desktop/chromedriver.exe") browser.get('https://www.

这是我想让我的代码点击的“按钮”,你可以看到它的id是:“syi create”

这是我的密码:

from selenium import webdriver
from selenium.webdriver.common.by import By
from time import sleep



browser = webdriver.Chrome("C:/Users/sebastian/desktop/chromedriver.exe")
browser.get('https://www.dba.dk/log-ind/?returnUrl=%2F')

emailStr = "Censored"
passwdStr = "Censored"

def loginDBA(username, password):
    email = browser.find_element_by_id('Email')
    email.send_keys(username)
    adgangskode = browser.find_element_by_id('Password')
    adgangskode.send_keys(password)

    login = browser.find_element_by_id('LoginButton')
    login.click()
loginDBA(emailStr, passwdStr)




opretAnnonce = browser.find_element_by_id("syi-create")
sleep(5)
opretAnnonce.click()
请注意,您无法运行脚本,因为我“审查”了用户名和密码。所以它不会登录,但无论如何也没有必要

当你登录时,那个黄色按钮就是我想按下的那个。但正如你可能意识到的,由于某种原因,它找不到按钮。我不能点击它

以下是错误代码(:

非常具体地说,我找不到id,这非常奇怪,因为你可以在这里看到我找到了: 下面是另一个我正在搜索按钮的“id”:


我做错了什么?

您可以使用xpath按id查找元素,也可以使用

sleep(10)
opretAnnonce = browser.find_element_by_css_selector("#syi-create")


可以使用xpath按id查找元素,也可以使用

sleep(10)
opretAnnonce = browser.find_element_by_css_selector("#syi-create")



这是在iframe中的赌注是什么?顺便说一句,我对网络语言没有经验,我想我会说得很快。还有…iframe是什么?只是查了一下iframe,所以你的意思是我试图点击一个图像?好吧,首先,我怎么才能找到真正的按钮id?我怎么能检查它是否在iframe中?也许不是我是否正在同步脚本并等待它出现,然后再单击它?虽然它可能在iframe/frame中,但它也可能是一个同步问题我已经考虑过了。我认为解决这个问题的一个方法是设置“睡眠(5)”到w8下载网站。在搜索要单击的按钮之前。正如你在上面代码的最后3行中所看到的。这是在iframe中的赌注是什么?顺便说一句,我对web语言没有经验,我想我会说得很快。还有…iframe是什么?只是查找了iframe,所以你的意思是我正在尝试点击图片?首先,我怎么才能找到真正的按钮id?我怎么才能检查它是否在iframe中?也许可以尝试同步你的脚本,等待它出现后再点击它?虽然它可能在iframe/frame中,但它也可能是一个同步问题我已经考虑过了。我认为解决这个问题的办法是t“睡眠(5)”到w8以加载网站。在搜索要单击的按钮之前。正如您在上面代码的最后3行中所看到的。它不起作用,我得到了相同的错误,现在只在id前面有一个#。如果按id查找元素不起作用,则使用包含id的xpath查找它也不起作用。您可以使用类名查找元素t给它一个加载数据的时间使用sleep,这样当内容加载不正确时,我得到了相同的错误,现在只是id前面有一个#。如果按id查找元素不起作用,那么使用包含id的xpath查找它也不起作用。您可以使用类名查找元素给它一个加载数据的时间使用sleep,以便正确加载内容
sleep(10)
opretAnnonce = browser.find_element_by_xpath('//div[@id = "syi-create"]')