首页 > 解决方案 > 如何在无限负载表或列表中滚动

问题描述

在继续学习机器人框架的过程中,我遇到了滚动异步表或列表等内部元素的问题。我有一个表,默认情况下有 15 个可用项目,要进入下一个 15 - 30 - 45 等,我需要滚动以加载元素。如何使用机器人框架做到这一点?

我尝试了什么:将元素滚动到视图关键字并执行 Javascript

Scroll Element Into View  xpath=//*[@id="tickets"]/tbody/tr[16]

and also

Execute JavaScript  window.document.evaluate("//*[@id="tickets"]/tbody/tr[16]", document, null, XPathResult.FIRST_ORDERED_NODE_TYPE, null).singleNodeValue.scrollIntoView(true);

我收到 ElementNotInteractableException。

标签: pythonseleniumrobotframeworkselenium2library

解决方案


首先,获取tr该表中元素的数量。可能与此类似(未测试):

${table_row_count}=    Get Element Count    xpath=//*[@id="tickets"]/tbody/tr

然后使用 xpath 的最后一部分中的值:

Scroll Element Into View  xpath=//*[@id="tickets"]/tbody/tr[${table_row_count}]

推荐阅读