如何在selenium中关闭打印对话框?

时间:2016-05-13 10:33:45

标签: python selenium selenium-webdriver webdriver robotframework

我正在尝试渲染一个加载时自动显示打印对话框的页面。我想用硒跳过它。我在互联网上搜索但找不到任何合适的例子,因为大多数示例处理javascript警报而不是Windows警报。

我还安装了python robotframework,因为很多人都提出了这个建议但是找不到任何一个例子。

我的问题是如何在python中使用selenium和robotframework来解除窗口警报?

注意:这个问题继续我之前的问题。 python selenium not updating pop up window url

2 个答案:

答案 0 :(得分:1)

我可以通过覆盖window.print函数来避免打印窗口:

driver.execute_script("window.print = function(){};")

答案 1 :(得分:1)

使用Firefox,您可以设置一些配置文件选项,有效地使打印对话框弹出窗口静音。

from selenium import webdriver
from selenium.webdriver.common.keys import Keys

profile = webdriver.FirefoxProfile()
profile.set_preference("print.always_print_silent", True)
profile.set_preference("print.show_print_progress", False)

driver = webdriver.Firefox(profile)
driver.get("http://www.google.com")

# Send print instruction
elem = driver.find_element_by_xpath("//body")
elem.send_keys(Keys.COMMAND, "p")