pyppeteer 向下滚动
时间: 2023-08-30 21:06:45 浏览: 269
图片上下滚动
你可以使用 `page.evaluate()` 方法来执行 JavaScript 代码,从而实现向下滚动页面。具体步骤如下:
1. 首先要获取页面的高度,可以使用 `document.body.scrollHeight` 来获取。
2. 执行 `window.scrollBy(0, window.innerHeight)` 代码,将页面向下滚动一个屏幕的高度。
3. 等待一段时间,让页面加载完毕。
4. 再次获取页面的高度,如果高度没有变化,说明已经到达了页面底部,可以停止向下滚动。
下面是一个示例代码:
```python
async def scroll_page(page):
SCROLL_PAUSE_TIME = 1
# 获取页面高度
last_height = await page.evaluate('document.body.scrollHeight')
while True:
# 模拟向下滚动一个屏幕的高度
await page.evaluate('window.scrollBy(0, window.innerHeight)')
# 等待页面加载
await asyncio.sleep(SCROLL_PAUSE_TIME)
# 再次获取页面高度
new_height = await page.evaluate('document.body.scrollHeight')
# 如果高度没有变化,说明已经到达页面底部
if new_height == last_height:
break
last_height = new_height
```
在这个示例中,我们使用了 `asyncio.sleep()` 来等待页面加载,因为 `pyppeteer` 中的页面操作都是异步的。
阅读全文