selenium Selify Send_Key-方法发送XPath(Python异常行为)

xzlaal3s  于 2022-11-10  发布在  Python
关注(0)|答案(2)|浏览(148)

我正在做一个Tinder项目,为此,我想登录到谷歌。我设法躲避并成功登录,然而,当我使用Send_Key方法发送电子邮件时,它会将电子邮件输入元素的XPath与电子邮件一起发送(它还会发送代码末尾的等待方法)。这是一种奇怪的行为,你知道怎么解决它吗?
代码:

if __name__ == '__main__':
driver = uc.Chrome()
driver.get('https://tinder.com/')

wait()
current_driver = driver.current_window_handle

wait()
login = driver.find_element(by=By.CLASS_NAME, value='button')
login.click()
wait()
wait()

accept_cookeis = driver.find_element(by=By.XPATH, value='/html/body/div[1]/div/div[2]/div/div/div[1]/button')
wait()
accept_cookeis.click()
wait()
main_page = driver.current_window_handle
wait()
google_login = driver.find_element(by=By.XPATH, value='/html/body/div[2]/div/div/div[1]/div/div[3]/span/div[1]/div/button/span[2]')
wait()
google_login.click()
wait()
my_windows = driver.window_handles
wait()

for window in my_windows:
    if window != main_page:
        driver.switch_to.window(window)
        wait()
        email_input = driver.find_element_by_xpath('/html/body/div[1]/div[1]/div[2]/div/div[2]/div/div/div[2]/div/div[1]/div/form/span/section/div/div/div[1]/div/div[1]/div/div[1]/input')
        wait()
        email_input.send_keys(YOUR_EMAIL)
        time.sleep(1000)

Here's what the method sends

nhhxz33t

nhhxz33t1#

所以我使用了一个JavaScript片段,它解决了这个问题,但我仍然不知道是什么原因导致了这个问题。
示例:

driver.execute_script('return document.getElementsByName("username")[0].value')
mnowg1ta

mnowg1ta2#

增列

import time

在代码的开头。所以,

time.sleep(1000)

如预期的那样工作。

相关问题