selenium.common.exceptions.TimeoutException while invoking .click() on an element through expected_conditions(selenium.common.exceptions.TimeoutException 同时通过 expected_conditions 在元素上调用 .click())
问题描述
使用 python、chromedriver 和 Windows.我已经编写了几个月的脚本,它定期使用 .click() 函数,几天前它停止在网站上的任何地方工作.我一直在尝试通过 id、xpath 等定位元素……甚至通过 send_keys(Keys.ENTER)
单击它,但没有成功.我只是想点击登录图标,但没有任何反应.似乎找到了元素并单击它,但没有任何反应.这是
-之后应该会出现
根据您分享的 url 点击链接,文本为 Regístrate o inicia sesión您可以使用以下任一
Using python, chromedriver and Windows.
I've working on a script for some months which uses .click() function regularly, few days ago it stopped working anywhere on the site. I've been trying to locate the element by id, xpath, etc... or even click it by send_keys(Keys.ENTER)
with no success. I'm just trying to click the login icon but nothing happens. Seems to find the element and even click it, but nothing happens. This is the site and here the code:
browser = webdriver.Chrome(chrome_options=options, executable_path=r'chromedriver.exe')
browser.get(('https://es.wallapop.com/'))
signInButton = WebDriverWait(browser, 5).until(EC.element_to_be_clickable((By.ID, 'js-show-login-modal')))
signInButton.click()
signInButton = WebDriverWait(browser, 5).until(EC.element_to_be_clickable((By.ID, 'btn-go-login-form')))
signInButton.click()
a part from not working this is what I get from the terminal:
Traceback (most recent call last):
File "wallapop_delete.py", line 55, in <module>
signInButton = WebDriverWait(browser, 5).until(EC.element_to_be_clickable((B
y.ID, 'btn-go-login-form')))
File "C:UserszaicoAppDataLocalProgramsPythonPython36libsite-packages
seleniumwebdriversupportwait.py", line 80, in until
raise TimeoutException(message, screen, stacktrace)
selenium.common.exceptions.TimeoutException: Message:
and this is what should happen on the browser:
-first click on the icon
-and after this should appear
As per the url you have shared to click on the link with text as Regístrate o inicia sesión you can take help of either of the following Locator Strategies:
LINK_TEXT
PARTIAL_LINK_TEXT
CSS_SELECTOR
XPATH
Here is the sample code using PARTIAL_LINK_TEXT
:
# -*- coding: UTF-8 -*-
from selenium import webdriver
from selenium.webdriver.common.by import By
from selenium.webdriver.support.ui import WebDriverWait
from selenium.webdriver.support import expected_conditions as EC
options = webdriver.ChromeOptions()
options.add_argument("start-maximized")
options.add_argument('disable-infobars')
browser=webdriver.Chrome(chrome_options=options, executable_path=r'C:UtilityBrowserDriverschromedriver.exe')
browser.get("https://es.wallapop.com/")
WebDriverWait(browser, 5).until(EC.element_to_be_clickable((By.PARTIAL_LINK_TEXT, 'strate o inicia sesi'))).click()
Browser Snapshot:
这篇关于selenium.common.exceptions.TimeoutException 同时通过 expected_conditions 在元素上调用 .click()的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持编程学习网!
本文标题为:selenium.common.exceptions.TimeoutException 同时通过 expected_conditions 在元素上调用 .click()
基础教程推荐
- 线程时出现 msgbox 错误,GUI 块 2022-01-01
- 使用PyInstaller后在Windows中打开可执行文件时出错 2022-01-01
- 如何让 python 脚本监听来自另一个脚本的输入 2022-01-01
- 筛选NumPy数组 2022-01-01
- 如何在海运重新绘制中自定义标题和y标签 2022-01-01
- 用于分类数据的跳跃记号标签 2022-01-01
- Dask.array.套用_沿_轴:由于额外的元素([1]),使用dask.array的每一行作为另一个函数的输入失败 2022-01-01
- Python kivy 入口点 inflateRest2 无法定位 libpng16-16.dll 2022-01-01
- 何时使用 os.name、sys.platform 或 platform.system? 2022-01-01
- 在 Python 中,如果我在一个“with"中返回.块,文件还会关闭吗? 2022-01-01