2024-09-28 22:38:22 发布
网友
我从下面的链接点击了登录按钮,在同一个窗口中打开了一个小标签。我想访问当前的小选项卡并填写信息。url:https://www.tajawal.ae/en请建议我如何使用python selenium webdriver实现这一点
要将字符序列发送到网站https://www.tajawal.com/en中的电子邮件和密码字段,您需要为element_to_be_clickable()引入WebDriverWait,并且可以使用以下任一Locator Strategies:
element_to_be_clickable()
使用XPATH:
XPATH
driver.get("https://www.tajawal.com/en") WebDriverWait(driver, 20).until(EC.element_to_be_clickable((By.XPATH, "//button[@data-testid='Header__SignInButton']"))).click() WebDriverWait(driver, 20).until(EC.element_to_be_clickable((By.XPATH, "//label[text()='Email']//following::input[@name='email']"))).send_keys("paul@paul.paul") driver.find_element_by_xpath("//label[text()='Password']//following::input[@name='password']").send_keys("paul@paul.paul")
注意:您必须添加以下导入:
from selenium.webdriver.support.ui import WebDriverWait from selenium.webdriver.common.by import By from selenium.webdriver.support import expected_conditions as EC
浏览器快照:
我检查了您共享的URL,小选项卡/web弹出窗口既不会出现在新框架中,也不会出现在新窗口中,因此您不需要进行框架/窗口切换。您可以简单地访问弹出窗口元素
在这种情况下,如果您试图与小弹出窗口中的“电子邮件”输入框进行交互,并且如果它不起作用,请参阅下面的我的答案
您有两个名称相同(属性名称)-“电子邮件”的电子邮件输入框,一个在弹出窗口中,另一个在订阅时事通讯部分下的同一页面中。如果您试图在弹出窗口的电子邮件输入框中输入内容,它将在时事通讯部分中输入因此,要在弹出的电子邮件输入框中正确输入,请使用xpath>;(//输入[@name='email'])[2]
要将字符序列发送到网站https://www.tajawal.com/en中的电子邮件和密码字段,您需要为
element_to_be_clickable()
引入WebDriverWait,并且可以使用以下任一Locator Strategies:使用
XPATH
:注意:您必须添加以下导入:
浏览器快照:
我检查了您共享的URL,小选项卡/web弹出窗口既不会出现在新框架中,也不会出现在新窗口中,因此您不需要进行框架/窗口切换。您可以简单地访问弹出窗口元素
在这种情况下,如果您试图与小弹出窗口中的“电子邮件”输入框进行交互,并且如果它不起作用,请参阅下面的我的答案
您有两个名称相同(属性名称)-“电子邮件”的电子邮件输入框,一个在弹出窗口中,另一个在订阅时事通讯部分下的同一页面中。如果您试图在弹出窗口的电子邮件输入框中输入内容,它将在时事通讯部分中输入因此,要在弹出的电子邮件输入框中正确输入,请使用xpath>;(//输入[@name='email'])[2]
相关问题 更多 >
编程相关推荐