如何解决Selenium Webdriver 在文本区域插入来自 python 的文本
<a href="/about.html">About Page</a>
<a href="/services.html">Our Services</a>
这是文本区域标签。我想在文本区域中插入一些文本。我如何处理 selenium webdriver 的 python 代码。
我试过了:
<textarea style="font-size: 1.2em" ng-model="applications" ng-list=" " ng-trim="false" rows="15" cols="70" class="ng-valid ng-dirty ng-valid-parse ng-touched"></textarea>
请帮帮我。
解决方法
driver.find_element_by_class_name("ng-pristine.ng-valid.ng-touched").
或
driver.find_element_by_xpath("//textarea[@claaa='ng-pristine ng-valid ng-touched']")
带空格的类表示多个类,所以在 find_element_by_class 中必须用点替换空格
否则使用 xpath 查找与类的绝对属性值匹配的元素
,要将字符序列发送到元素,您可以使用以下任一Locator Strategies:
-
使用
css_selector
:driver.find_element_by_css_selector("textarea.ng-valid.ng-dirty.ng-valid-parse.ng-touched[ng-model='applications']").send_keys("samhith gardas")
-
使用
xpath
:driver.find_element_by_xpath("//textarea[@class='ng-valid ng-dirty ng-valid-parse ng-touched' and @ng-model='applications']").send_keys("samhith gardas")
然而,所需的元素是 Angular 元素,因此理想情况下,将 字符序列 发送到您需要为 element_to_be_clickable()
引入 WebDriverWait 和您可以使用以下任一 Locator Strategies:
-
使用
CSS_SELECTOR
:WebDriverWait(driver,20).until(EC.element_to_be_clickable((By.CSS_SELECTOR,"textarea.ng-valid.ng-dirty.ng-valid-parse.ng-touched[ng-model='applications']"))).send_keys("samhith gardas")
-
使用
XPATH
:WebDriverWait(driver,20).until(EC.element_to_be_clickable((By.XPATH,"//textarea[@class='ng-valid ng-dirty ng-valid-parse ng-touched' and @ng-model='applications']"))).send_keys("samhith gardas")
-
注意:您必须添加以下导入:
from selenium.webdriver.support.ui import WebDriverWait from selenium.webdriver.common.by import By from selenium.webdriver.support import expected_conditions as EC
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。