一日一技:在Selenium中如何缩放网页(不是窗口)

2019-03-04 15:08:58 浏览数 (1)

我们知道,在Python中,可以设定窗口的大小:

代码语言:javascript复制
driver.set_window_size(1920, 1080)

那么如果我并不想修改窗口大小,只想修改页面大小怎么办?类似于Windows/Linux下按 Ctrl 加号或者 Ctrl 减号;macOS下按`Command 加号`或者`Command 减号`。运行效果如下图所示。

此时,就需要使用JavaScript来实现了。

代码语言:javascript复制
document.body.style.zoom='0.5'

代码中的 0.5表示缩放比例。 1是原大小,小于1是缩小,大于1是放大。例如0.5表示缩小为原网页的50%。

如果直接在Chrome的开发者工具中运行,缩小的效果如下图所示:

放大的效果如下图所示。

因此,在Selenium中,可以使用 execute_script来运行:

代码语言:javascript复制
driver.execute_script("document.body.style.zoom='0.5'") #缩小
driver.execute_script("document.body.style.zoom='1.7'") #放大

大家还可以尝试一下,是否能够通过模拟按键,发送 Ctrl和加号减号来缩放网页。

0 人点赞