Javascript 如何将鼠标指向页面的特定部分,然后滚动?(木偶演员)

Javascript 如何将鼠标指向页面的特定部分,然后滚动?(木偶演员),javascript,puppeteer,Javascript,Puppeteer,我说的网址是。我正试着浏览电影所在的部分。当我使用下面的代码时,它不起作用 await page.evaluate( () => { window.scrollBy(0, window.innerHeight); }); 我认为这是因为你必须在电影上悬停,然后才能滚动那部分。我怎样才能解决这个问题?谢谢 我的完整代码: const puppeteer = require('puppeteer'); (async () => { const brow

我说的网址是。我正试着浏览电影所在的部分。当我使用下面的代码时,它不起作用

await page.evaluate( () => {
        window.scrollBy(0, window.innerHeight);
    });
我认为这是因为你必须在电影上悬停,然后才能滚动那部分。我怎样才能解决这个问题?谢谢

我的完整代码:

const puppeteer = require('puppeteer');

(async () => {
    const browser = await puppeteer.launch({ headless: false });
    const page = await browser.newPage();
    await page.setViewport({ width: 1280, height: 800 });
    url = "https://www.vudu.com/content/movies/movieslist"
    await page.goto(url, {waitUntil: 'load'});
    await page.evaluate( () => {
        window.scrollBy(0, window.innerHeight);
    });
    await page.waitFor(2000);
})()

您需要滚动的不是窗口,而是包裹thunbnails的div

尝试使用以下方法获取包装器的句柄:

var first = document.querySelector(".contentPosterWrapper");
var wrapper = first.parentNode.parentNode;
wrapper.scrollBy(0, 500);
您可以使用它,但这似乎无法解决问题,因为文档正文不可滚动。您需要找到可滚动元素才能滚动它:

“严格使用”;
const puppeter=require('puppeter');
(异步函数main(){
试一试{
const browser=wait puppeter.launch({headless:false,defaultViewport:null});
const[page]=wait browser.pages();
等待页面。转到('https://www.vudu.com/content/movies/movieslist');
等待页面。等待选择器('.nr-pt-40');
常量数据=等待页面。评估(()=>{
const container=document.querySelector('.nr-pt-40');
container.scrollBy(0,container.clientHeight);
});
//等待浏览器关闭();
}捕捉(错误){
控制台错误(err);
}
})();

成功了!非常感谢你!还有一件事:我怎样才能让它继续滚动直到内容的最后?我把它放在一个for循环lol中,但我想知道是否有更好的方法可以使用:
while(container.scrollHeight-container.scrollTop!==container.clientHeight){/*scroll*/}