我有這個代碼:
from selenium import webdriver
from selenium.webdriver.common.keys import Keys
from selenium.webdriver.common.by import By
from selenium.webdriver.chrome.options import Options
from selenium.webdriver.support.ui import WebDriverWait
from selenium.webdriver.support import expected_conditions as EC
import time
path = r'C:\Users\test\Documents\Python Scripts\chromedriver.exe'
driver = webdriver.Chrome(path)
driver.get("http:\\www.wyzant.com")
link = driver.find_element_by_link_text("LOG IN")
link.click()
WebDriverWait(driver, 20).until(EC.presence_of_element_located((By.ID, "username")))
username = driver.find_element_by_id("Username")
username.send_keys("test")
代碼沒有將“測驗”發送到用戶名 ID。我想一旦我能夠插入用戶名,我應該能夠弄清楚如何插入密碼并單擊登錄。
uj5u.com熱心網友回復:
這里有兩件事要改變。元素 idUsername不是username,使用find_element_by_css_selector似乎有效。
所以,變化將如下
WebDriverWait(driver, 20).until(EC.presence_of_element_located((By.ID, "Username")))
username = driver.find_element_by_css_selector(".sso-login-form > div:nth-child(2) > input:nth-child(2)")
uj5u.com熱心網友回復:
在javascript中我使用這個函式|
const button = await driver.wait(
until.elementLocated(By.xpath('your xpath element')), 12000).then(button => {
return driver.wait(until.elementIsVisible(button4),12000)}, function(button4) {
if (button instanceof Error) {
bot.sendMessage(-*****chatID,"Card info" console.log(button) "CRASH!??");
console.log(button, 'fail');
console.log(Date(time));
return WebDriver.quit();
}
})
button.sendKeys('your text').then(async function() {
console.log(button.sendKeys,'input info - done');
return true//it existed
})
轉載請註明出處,本文鏈接:https://www.uj5u.com/qiye/345984.html
下一篇:硒網路驅動程式|driver().switchTo().defaultContent()方法不會將控制元件從多個子視窗切換回父視窗
