Python 3.x Python Selenium:如何处理长动态表?

Python 3.x Python Selenium:如何处理长动态表?,python-3.x,selenium,web-scraping,indexoutofrangeexception,Python 3.x,Selenium,Web Scraping,Indexoutofrangeexception,我有一个网站(私人,对不起),有一个表(行数不同),这是足够长的,不是所有显示在屏幕上没有滚动。我有代码可以从每一行中提取所需的文本,但当表格不再可见时(列表索引超出范围)就会停止。如果我手动滚动,它会更新DOM,因此会弄乱我的代码。有人知道如何处理这个问题并正确地循环整个表吗 table = WebDriverWait(driver, 10).until(EC.visibility_of_element_located((By.ID, "*table ID*")))

我有一个网站(私人,对不起),有一个表(行数不同),这是足够长的,不是所有显示在屏幕上没有滚动。我有代码可以从每一行中提取所需的文本,但当表格不再可见时(列表索引超出范围)就会停止。如果我手动滚动,它会更新DOM,因此会弄乱我的代码。有人知道如何处理这个问题并正确地循环整个表吗

    table = WebDriverWait(driver, 10).until(EC.visibility_of_element_located((By.ID, "*table ID*")))
    body = table.find_element_by_class_name("*class name*")
    tableText = body.find_elements(By.TAG_NAME, "tr")
    myList = [None]*rows
    for i in range (1,rows):
        myList[i-1] = tableText[i-1].text
在循环进行到一半时,我得到了indexer:list索引超出范围。
我考虑过在headless模式下运行是否能解决这个问题,但不幸的是不能,因为该站点需要手动登录(登录屏幕上没有html)。

除了全局浏览器滚动条外,该表本身还有自己的滚动条。这就是我需要滚动的内容,但正如我所说的,立即更改DOM,因此在没有过时元素的情况下维护for循环将是一个混乱。另外,我不懂Java,所以我无法理解其中的很多内容。虽然你的问题不完整,但我很感激你的回答。没人能看到网站的样子,卷轴等等。我理解。因为我不能分享这个网站,我不是在找人帮我解决我的问题,而是在征求意见,或者是否有人遇到过他们解决的类似问题。例如,是否有另一种方法可以不滚动地访问表格的全部内容?