如何使用 selenium python 在输入标签中查找和写入

2022-01-14 00:00:00 python selenium automated-tests

问题描述

我想将网站 我想更改它的 MA Length 在 Vol 中的值,您可以通过单击网站左上角 Apple Inc - D - Cboe BZX 正下方的 Vol(20) 来访问它.

解决方案

  1. 使用

  2. 选择一个合适的 定位器策略,这将允许唯一地匹配元素页面
  3. 定位元素
  4. 以这种方式将定位代码包装到 显式等待中 您的测试将更加稳健和可靠
  5. 使用 WebElement API 进行交互带元素

示例代码:

driver.get("https://www.tradingview.com/chart/")WebDriverWait(driver, 10).until(EC.element_to_be_clickable((By.XPATH, "//a[contains(@class,'format')]"))).click()输入 = WebDriverWait(驱动程序,10).until(EC.element_to_be_clickable((By.XPATH, "//input[contains(@class,'innerInput')]")))driver.execute_script("arguments[0].value=30", 输入)

I would like to change a value of a input tag that haves the value 20 to 110 in the website https://www.tradingview.com/chart/. How can I actually do that?(all of that using selenium python) The value i would like to change it's MA Length inside Vol, you can acess that by clicking at Vol(20) right below Apple Inc - D - Cboe BZX at the top left part of the website.

解决方案

  1. Locate the element you would like to interact with using your favourite browser developer tools

  2. Choose an appropriate Locator Strategy which will allow to uniquely match the element at the page
  3. Locate the element
  4. Wrap the locating code into an Explicit Wait this way your test will be more robust and reliable
  5. Use WebElement APIs to interact with elements

Example code:

driver.get("https://www.tradingview.com/chart/")

WebDriverWait(driver, 10).until(EC.element_to_be_clickable((By.XPATH, "//a[contains(@class,'format')]"))).click()
input = WebDriverWait(driver, 10).until(
    EC.element_to_be_clickable((By.XPATH, "//input[contains(@class,'innerInput')]")))
driver.execute_script("arguments[0].value=30", input)

相关文章