我有一个包含脚本javascript语句的页面:
type MyType int
func (m MyType) MyFunc1() {
fmt.Println("Hello MyFunc1")
}
func (m MyType) MyFunc2() {
fmt.Println("Hello MyFunc2")
}
func (m MyType) MyFunc3() {
fmt.Println("Hello MyFunc3")
}
func main() {
v := reflect.ValueOf(MyType(0))
for k := 1; k <= 3; k++ {
v.MethodByName(fmt.Sprintf("MyFunc%d", k)).Call(nil)
}
}
我用
渲染该页面<script>window.print;</script>
我想用这个替换该语句:
driver.get(url_link)
因此,打印对话框没有出现。并且window.print = (){};
在页面加载时不会执行任何操作。
window.print
我尝试在driver.execute_script("window.print = (){};")
语句之前和之后添加上述语句,但它无效。
我怎么能跳过它?
答案 0 :(得分:0)
逻辑上,不可能因为你想限制在页面加载时进行的js函数调用,因为执行脚本或任何其他命令将在页面加载后执行。
为了解除页面加载,您可以在接到电话后执行sendKeys for "Esc"个字符。