【发布时间】:2018-07-24 06:32:40
【问题描述】:
我正在尝试向元素发送密钥,但它不起作用。
Element looks like this. Unable to send keys to all three.
下面是代码:
输入 id="creditCardNumber" name="creditCardNumber" type="tel" tabindex="1" data-shortname="cc" maxlength="24" class="cc-input ncss-input pt2-sm prl4-sm prl5-md pb2-sm" placeholder="Number" onautocomplete="off" value=""
我用它来发送密钥:
driver.find_element_by_xpath('//*[@id="creditCardNumber"]').send_keys('0000')
driver.find_element_by_xpath('//input[@placeholder="Number"]').send_keys('0000')
给我一个错误,好像元素不可用,尽管我使用了足够长的 time.sleep。
收到错误:
driver.find_element_by_xpath('//input[@placeholder="Number"]').send_keys('0000') 文件 "/Library/Python/2.7/site-packages/selenium/webdriver/remote/webdriver.py", 第 293 行,在 find_element_by_xpath 中 return self.find_element(by=By.XPATH, value=xpath) 文件 "/Library/Python/2.7/site-packages/selenium/webdriver/remote/webdriver.py", 第 752 行,在 find_element 中 'value': value})['value'] 文件 "/Library/Python/2.7/site-packages/selenium/webdriver/remote/webdriver.py", 第 236 行,执行中 self.error_handler.check_response(response) 文件“/Library/Python/2.7/site-packages/selenium/webdriver/remote/errorhandler.py”, 第 192 行,在 check_response 中 raise exception_class(message, screen, stacktrace) selenium.common.exceptions.NoSuchElementException: Message: no such 元素:无法定位元素: {"method":"xpath","selector":"//input[@placeholder="Number"]"}
(会话信息:chrome=64.0.3282.140)(驱动程序信息: 铬驱动程序=2.35.528157 (4429ca2590d6988c0745c24c8858745aaaec01ef),平台=Mac OS X 10.12.2 x86_64)
【问题讨论】:
-
请阅读为什么screenshot of HTML or code or error is a bad idea。考虑使用基于格式化文本的相关 HTML、代码试验和错误堆栈跟踪来更新问题。
-
道歉,更新了。
-
你能粘贴回溯吗?你得到了什么确切的错误
-
已更新回溯@Satish
-
你能在找到元素之前明确等待,然后再试一次吗selenium-python.readthedocs.io/waits.html
标签: python selenium selenium-webdriver sendkeys