症状
默认情况下,"单击网页上的链接"或"填充网页上的文本字段"等 Web 自动化操作将滚动到目标元素,然后与它交互。 此外,"从网页提取数据"操作将仅提取已在页面上加载的数据。
如果出于某种原因 Web 自动化操作未滚动或提取数据未提取所有结果,可以使用以下 Javascript 方法在网页上手动滚动。
验证问题
若要验证 Web 自动化操作在与元素交互之前是否未在网页上滚动,或者"提取数据"操作未提取所有结果,请使网页到前台,观察桌面流是否正在运行并查看输出变量。 使用以下解决方法手动滚动网页。
解决方法
使用"在网页上运行 JavaScript 函数"操作,如下所示:
window.scrollTo (xpos,ypos)
在以上命令中,xpos 指示水平滚动,ypos 指示垂直滚动。
若要一路滚动到网页底部,请修改以下命令:
function ExecuteScript()
{
window.scrollTo (0,document.body.scrollHeight) ;
}
"加载更多"按钮
有时,底部会显示"加载更多"元素。
若要加载所有结果,应单击"加载更多"按钮,并重复该操作,只要元素仍然存在。 可以使用条件循环实现此 ("循环条件"操作) 。
如何在网页元素内滚动
如果要在网页元素内滚动,可以使用 HTML DOM 属性 scrollTop。
scrollTop 属性设置或返回垂直滚动元素内容的像素数。
JavaScript 代码的示例包括:
函数 ExecuteScript () {
document.getElementById ('id_of_the_target_element') .scrollTop -= 50;
}