【发布时间】:2018-03-28 12:58:38
【问题描述】:
我正在尝试使用 Python 中的 selenium 和 Chrome 登录网站。我能够找到用户和密码字段以及按钮。我唯一不能做的就是用所有字符串填充密码字段。它写入一个长度不同的子字符串。
我的代码
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
browser=webdriver.Chrome(r"C:\Users\Visente\Desktop\Pablito Python\chromedriver.exe")
urlbet='https://www.bet365.es/?&cb=103265469#/HO/'
browser.get(urlbet)
sport=WebDriverWait(browser, 10).until(
EC.presence_of_element_located((By.XPATH,'//*[@id="dv1"]/a')))
sport.click()
user=WebDriverWait(browser,
10).until(EC.presence_of_element_located((
By.XPATH,'/html/body/div[1]/div/div[1]/div/div[1]/div[2]/div/div[1]/input')))
passw=browser.find_element_by_xpath(
'/html/body/div[1]/div/div[1]/div/div[1]/div[2]/div/div[2]/input[1]')
user.send_keys('my_user')
passw.send_keys('password')
submit=browser.find_element_by_xpath(
'/html/body/div[1]/div/div[1]/div/div[1]/div[2]/div/div[2]/button')`
submit.click()
所以,简而言之,你在变量passw 上使用 send_keys() 的那一行没有写入密码的完整长度,我不知道为什么。
顺便说一句,我如何取回我刚刚使用 sed_keys() 发送的文本,以便了解正在传递的内容以及字符串中缺少的内容?
【问题讨论】:
-
你打算怎么做?请记住,在发送第一个字符后,x_path 会发生变化,以便它以 input[2] 而不是 input[1] 结束
标签: python selenium selenium-webdriver selenium-chromedriver sendkeys