Python/Selenium出现未知错误。单击()

Python/Selenium出现未知错误。单击(),python,selenium,selenium-webdriver,web-scraping,Python,Selenium,Selenium Webdriver,Web Scraping,新的使用硒和有一个小问题。当我尝试在元素上使用。单击()时,会出现此错误。代码在上面。这是我的网站。谢谢你的帮助。如果你需要更多的信息,尽管问 def get_email(): driver = webdriver.Edge('C:/Users/Aurum/Downloads/MicrosoftWebDriver') driver.get("https://www.minuteinbox.com/") assert "MinuteInbox" in driver.title element_em

新的使用硒和有一个小问题。当我尝试在元素上使用
。单击()
时,会出现此错误。代码在上面。这是我的网站。谢谢你的帮助。如果你需要更多的信息,尽管问

def get_email():
driver = webdriver.Edge('C:/Users/Aurum/Downloads/MicrosoftWebDriver')
driver.get("https://www.minuteinbox.com/")
assert "MinuteInbox" in driver.title
element_email = driver.find_element_by_id('email')
email = element_email.text
assert "No results found." not in driver.page_source
element_delete = driver.find_element_by_class_name('delete-tab')
assert "No results found." not in driver.page_source
element_delete.click()
driver.close()
return email
错误是:

Traceback (most recent call last): File "C:\Users\Aurum\Documents\Programing\Prog 1\random stuff\FratThing.py", 
line 69, in main() File "C:\Users\Aurum\Documents\Programing\Prog 1\random stuff\FratThing.py", 
line 64, in main email = get_email() File "C:\Users\Aurum\Documents\Programing\Prog 1\random stuff\FratThing.py", 
line 14, in get_email element_delete.click() File "C:\Python37\lib\site-packages\selenium\webdriver\remote\webelement.py", 
line 80, in click self._execute(Command.CLICK_ELEMENT) File "C:\Python37\lib\site-packages\selenium\webdriver\remote\webelement.py", 
line 633, in _execute return self._parent.execute(command, params) File "C:\Python37\lib\site-packages\selenium\webdriver\remote\webdriver.py", 
line 321, in execute self.error_handler.check_response(response) File "C:\Python37\lib\site-packages\selenium\webdriver\remote\errorhandler.py", 
line 242, in check_response raise exception_class(message, screen, stacktrace) selenium.common.exceptions.WebDriverException: Message: Unknown error
编辑:所以我想窗口必须缩小才能工作。如果我把它变大,然后改变类以适应大按钮,那么它就不起作用了


Edit2:Github链接

我认为您可以通过以下方式实现同样的效果:

这就是css选择器

find_element_by_css_selector(".gradient .delete-tab").click()
这将匹配的元素限制为一个

在代码中:

except:
    element_delete = driver.find_element_by_css_selector('.gradient .delete-tab, .btn-delete')
    element_delete.click()

这意味着您可以将其移动到
try
,因为它已经尝试在两个选择器上进行匹配。

基于Qharr答案和您的问题。也许您应该尝试使用硒
wait.until()

也许等待下一步按钮被点击,直到司机可以找到它可能会帮助你


如果屏幕大小影响您。您可以尝试使用
driver.set\u window\u size(480320)
在您使用
driver.get(“url”)
加载url后,当然您可以将窗口大小设置为适合您的大小

是的,我以前有过,我在工作。我昨晚让它工作,今天早上我又回来了,但它不工作。我以为我在代码中做了一些修改,但是我注释掉了除了这个函数以外的所有东西,它仍然不起作用。我有同样的问题,另一个按钮进一步向下的程序。当我看css时,它不再显示.btn delete。我知道元素正在被选中,因为如果我打印文本,它会说删除。如果你有更多的理想,那就谢谢你了。我从来没有用过。我基本上只是做了我以前做过的,只是把窗户做成了它能用的大小。我与另一个btn有完全相同的问题。如果我搞不懂的话,我可能会在帖子上加上这个。Thx的帮助如果屏幕大小影响,您应该能够使用或语法的查找元素由_css_选择器(“.gradient.delete选项卡,.btn delete”)。点击(),使电子邮件地址是确定的,能够创建另一封电子邮件,您需要删除当前一封。我得到了它们,但即使在添加了你的代码之后,仍然会得到相同的错误。我将把整个东西放在git hub中,并将链接放在OP中。如果你能看一下,这可能会有所帮助。Iv对其进行了更改,但如果您愿意的话,最好按照您所说的方式进行,因为我一定做得不对。您在缩短日志消息的同时切断了重要的错误跟踪日志。用错误跟踪日志更新问题。@DebanjanB这正是弹出的内容。我不明白你的意思。
from selenium import webdriver;
from selenium.webdriver.support.ui import WebDriverWait
from selenium.webdriver.common.by import By
from selenium.webdriver.support import expected_conditions as EC

driver = webdriver.Chrome()
driver.get("URLHERE")

wait = WebDriverWait(driver, 10)
wait.until(EC.element_to_be_clickable((By.XPATH,"RELEVANT X PATH"))).click()