Проведя три часа, я наконец-то понял!
Это некое поведение в Таблице, которое hover
тоже не работает, не могу сказать почему.
Ниже приведен мой код, объясняющий, что я сделал для наведения всех строк.
import time
from selenium import webdriver
from selenium.webdriver.common.action_chains import ActionChains
driver = webdriver.Chrome(executable_path='./chromedriver')
driver.maximize_window()
driver.implicitly_wait(0)
url = 'https://public.tableau.com/views/IRENA_Decentralised_RE_Data_Review_2019/ExploreData?:showVizHome=no'
driver.get(url)
time.sleep(2)
scroll = driver.find_element_by_xpath("//div[@class='tab-tvScrollY tvimages']"
"[./div[@class='tvimagesContainer' and @style]]")
column = driver.find_elements_by_xpath("//canvas[@class='tabCanvas tab-widget']")[1]
action = ActionChains(driver)
for i in range(10000):
driver.execute_script('arguments[0].scrollTop = (0,%s)' % str(i * 49), scroll)
# Move cursor to hover element
action.move_to_element_with_offset(column, 0, 0).perform()
# Select HTML table
table = driver.find_element_by_xpath("//div[@class='tab-tooltip tab-widget "
"tab-tooltipBL tab-allowMouseEventPassthrough']")
# Your selenium code to extract HTML content [...]
# Move cursor to reset tableau hover function behavior
action.move_to_element(scroll).perform()
Надеюсь, это поможет!