【问题标题】:Scroll to right in Tradingview chart using python使用 python 在 Tradingview 图表中向右滚动
【发布时间】:2021-05-07 13:46:15
【问题描述】:

我正在尝试在TradingView 中使用 selenium python 向右滚动

我的代码:

driver.find_element_by_xpath("//div[@class='control-bar__btn control-bar__btn--move-right apply-common-tooltip']").click()

它会抛出一个错误:

selenium.common.exceptions.ElementNotInteractableException:消息: 元素不可交互

【问题讨论】:

  • 你能分享文本格式的 HTML 吗?或者我们必须在哪里导航才能找到 向右或向左滚动
  • @cruisepandey 更新了问题!

标签: python-3.x selenium selenium-webdriver selenium-chromedriver click


【解决方案1】:

试试下面的代码 -

import time
from selenium import webdriver
from selenium.webdriver import ActionChains
from selenium.webdriver.support.ui import WebDriverWait
from selenium.webdriver.common.by import By
from selenium.webdriver.support import expected_conditions as EC

driver = webdriver.Chrome()
wait = WebDriverWait(driver, 60)
action = ActionChains(driver)

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

try:
    wait.until(EC.visibility_of_element_located((By.XPATH, "//span[contains(@class,\"closeIcon\")]"))).click()
except:
    pass

RightScroll = wait.until(EC.presence_of_element_located((By.XPATH,"//div[contains(@class,\"btn--move-right\")]")))

for i in range(10):
    time.sleep(2)
    print(i)
    action.move_to_element(RightScroll).click().perform()

如果它解决了您的问题,请将其标记为答案。如果您有任何疑问,请告诉我。

【讨论】:

  • for循环只是点击10次?
  • 是的,我已使用该代码向您展示我们可以向右滚动。如果您想滚动更多,您可以增加数字。如果它解决了您的问题,请将其标记为答案。这会更令人鼓舞。
  • 是的,这真的帮助了我,只是想知道任何不使用动作链的解决方案吗?
【解决方案2】:

第一次加载页面时会显示一个消息窗口。如果您不这样做,则必须先关闭它(以使右箭头容器可见)

driver.findElement(By.xpath(".//span[contains(@class,'closeIcon')]")).click();

driver.findElement(By.xpath(".//td[@class='chart-markup-table time-axis']")).click();//让右箭头容器可见

driver.findElement(By.xpath(".//div[@class='control-bar__btn control-bar__btn--move-right apply-common-tooltip']")).click();

【讨论】:

  • 这不是python
猜你喜欢
  • 2020-10-05
  • 1970-01-01
  • 2023-03-08
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2018-11-11
  • 2018-04-04
  • 1970-01-01
相关资源
最近更新 更多