有人知道如何通过selenium+从chrome启动打印对话框吗;python

有人知道如何通过selenium+从chrome启动打印对话框吗;python,python,selenium,printing,selenium-webdriver,Python,Selenium,Printing,Selenium Webdriver,我有一个关于如何从chrome浏览器启动打印对话框的问题。我知道打开它的快捷键是ctrl+p,但我不知道如何用selenium来描述它。有人知道吗?非常感谢 我尝试了以下代码,但在我的Chrome浏览器上不起作用 actions = ActionChains(driver) actions.move_to_element(driver.find_element_by_tag_name('body')) actions.key_down(Keys.CONTROL).send

我有一个关于如何从chrome浏览器启动打印对话框的问题。我知道打开它的快捷键是ctrl+p,但我不知道如何用selenium来描述它。有人知道吗?非常感谢

我尝试了以下代码,但在我的Chrome浏览器上不起作用

    actions = ActionChains(driver)
    actions.move_to_element(driver.find_element_by_tag_name('body'))
    actions.key_down(Keys.CONTROL).send_keys('T').key_up(Keys.CONTROL).perform()

不完全是你所问的,但这正是我在
Firefox
中所做的

使用以下命令将
CTRL+p
(或mac上的
COMMAND+p
)发送到
body
元素:


基本上,您需要触发触发打印弹出窗口的JavaScript函数。该函数是
window.print()

因此,您需要的是在到达要打印的页面后触发该函数。 所以说你想打印报纸的头版


现在,它会提示您进入打印弹出窗口。您需要触发JavaScript函数的原因是因为JavaScript是浏览器的语言。

是的,我想在Chrome上做同样的事情,只想从Chrome打开打印对话框,您的方法似乎在Chrome浏览器上不起作用。有没有办法从Chrome浏览器启动打印对话框。非常感谢@我编辑了我的原始答案。它会给你你现在所需要的。看一看。如果没有办法做到这一点,有人知道如何使用selenium+python+Chrome从网页打开右键菜单吗?虽然这段代码可能会解决这个问题,但一个好的答案还应该解释代码的作用以及它的帮助。
driver.get("https://stackoverflow.com")

driver.execute_script("window.print()")
driver.get("https://stackoverflow.com")
# now you're at the page you want to print. Trigger print function
driver.execute_path("window.print()")
driver.get("https://stackoverflow.com")

driver.execute_script("window.print()")