我写了一个代码来自动为运动鞋抽奖的铭文,但我的主要问题是,webdriver找不到元素,我觉得这真的很奇怪。我会把链接到网站和我的代码样本是相关的。也许这是由于一个反机器人,但这似乎不太可能,因为网站似乎缺乏安全。这是一个网站:
我在这里尝试通过一个简短的xpath、long xpath和ID找到元素,但它们都不起作用。
driver = webdriver.Chrome(executable_path='../drivers/chromedriver', chrome_options=options)
driver.get('https://r1.dotmailer-surveys.com/2a5ece38e398a86d1d2ieba093b44fa8fd3a-610c7264a82913e254v5f2457bdb04a5a308')
time.sleep(delay)
search = driver.find_element_by_id('textbox-3').send_keys(Prenom)
time.sleep(delay)
search = driver.find_element_by_xpath('//*[@id="textbox-4"]').send_keys(Nom)
time.sleep(delay)
search = driver.find_element_by_xpath('/html/body/form/div[2]/div/div/div/div[2]/div/div[1]/div/div[10]/input').send_keys(Mail)
time.sleep(delay) 它总是会给我一条错误信息,即使在我延迟或等待网络驱动时也是如此。我真的很困惑,如果有人能帮我的话,我真的很感激。这是我得到的错误消息:
selenium.common.exceptions.NoSuchElementException:消息:没有这样的元素:无法定位元素:{“方法”:“css选择器”,“选择器”:“id=”文本框-3“”}
如果您想要验证这确实是好的is和Xpath,您可以查看该网站。
我真的不知道发生了什么。我不知道这是否相关,但我使用python。
谢谢你的帮忙!
发布于 2020-12-18 21:40:14
是的,它在iFrame里。您需要将焦点切换到iFrame,以找到文本元素并与它们交互。
https://stackoverflow.com/questions/65345572
复制相似问题