python - 我的硒不断出现错误“无法找到元素:”。Python
问题描述
我的硒不断出现错误“无法找到元素:”。它是 python,所以如果有人可以帮助我,那就太棒了。我已经尝试过给它很多时间,而不仅仅是睡 3 点,这似乎是问题。错误就在这里 woopass=driver.find_element_by_id("turbo-checkout-pyo-button")
from selenium import webdriver
from selenium.webdriver.common.keys import Keys
from selenium.webdriver.common.by import By
from selenium.webdriver.support.ui import WebDriverWait
from selenium.webdriver.support import expected_conditions as EC
import time
PATH = "C:\Program Files (x86)\chromedriver.exe"
driver =webdriver.Chrome(PATH)
#start
driver.get("https://www.amazon.com/ap/signin?openid.pape.max_auth_age=0&openid.return_to=https%3A%2F%2Fwww.amazon.com%2Fref%3Dnav_signin&openid.identity=http%3A%2F%2Fspecs.openid.net%2Fauth%2F2.0%2Fidentifier_select&openid.assoc_handle=usflex&openid.mode=checkid_setup&openid.claimed_id=http%3A%2F%2Fspecs.openid.net%2Fauth%2F2.0%2Fidentifier_select&openid.ns=http%3A%2F%2Fspecs.openid.net%2Fauth%2F2.0&")
username=driver.find_element_by_name("email")
username.send_keys("*********")
continuebutton=driver.find_element_by_id("continue")
continuebutton.click()
passwordenter=driver.find_element_by_name("password")
passwordenter.send_keys("*******")
signInSubmit=driver.find_element_by_id("signInSubmit")
signInSubmit.click()
#garbage
time.sleep(1)
driver.get("https://www.amazon.com/Monster-Energy-Sugar-Drink-Watermelon/dp/B08JNWFT52/ref=sr_1_2?dchild=1&keywords=watermelon&qid=1614867030&sr=8-2")
trube=False
while not trube:
try:
stuff=driver.find_element_by_id("outOfStock")
print("working")
time.sleep(1)
driver.refresh()
except:
pressingbutton=WebDriverWait(driver,.0000000000000000000000000000000001).until(EC.presence_of_element_located((By.ID,"buy-now-button")))
pressingbutton.click()
time.sleep(3)
#error right here woopass=driver.find_element_by_id("turbo-checkout-pyo-button")
#Ive already tried giving it time like a lot of time not just sleeping for 3
#I dont know why I get this error Unable to locate element:
#PROBLEM CODE
#VVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVV
woopass=driver.find_element_by_id("turbo-checkout-pyo-button")
#^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
woopass.click()
trube=True
print ("Done")
driver.quit()
这就是我拉它的地方
<input id="turbo-checkout-pyo-button" data-testid="" class="a-button-input" type="submit" value="Place your order" aria-labelledby="turbo-checkout-place-order-button-announce"> ```
解决方案
driver.switch_to.frame(driver.find_element_by_id("turbo-checkout-iframe")) 这是一个 iframe 我很抱歉感谢所有贡献的人。@DMart
推荐阅读
- python - ISO时间到python中的人类可读时间
- maven - 如何配置jooq-codegen-maven,所以我只能手动运行而不是每次编译
- c# - ASP net core multipart/forma-data,两个文件
- javascript - 实例成员不可访问 Jest
- python - 自定义层 Keras 中可训练变量的激活函数
- flutter - 想要在 Column 中使用 Flutter 的 LayoutBuilder 时的代码模式
- python - 用于替换行值和广播的方法链接
- php - max 函数返回意外值
- wpf - WPF 应用程序更新事件
- c - 由于某种原因,我的心率计算器无法一直运行