2014-04-08 71 views
3

这里是我正在试图做到这一点:如何使用Python打开Goog​​le Chrome并传入参数?

# Start Google Chrome 
subprocess.call(["C:\Program Files (x86)\Google\Chrome\Application\chrome.exe", "--kiosk"]) 

如果我的--kiosk标志添加到谷歌浏览器的快捷方式在我的桌面,浏览器在kiosk模式不启动。但是,当我通过Python试用这个功能时,它似乎不起作用。我搜索过Google,但到目前为止还没有发现任何内容。请帮忙。

回答

7

该命令适用于我。

确保您没有运行Chrome的其他副本。如果没有其他实例在运行,Chrome只会以Kiosk模式启动。如果你想确保没有其它实例正在运行,this answer展示了如何开始一个新的进程之前杀死他们:

import os 
import subprocess 


CHROME = os.path.join('C:\\', 'Program Files (x86)', 'Google', 'Chrome', 'Application', 'chrome.exe') 

os.system('taskkill /im chrome.exe') 
subprocess.call([CHROME, '--kiosk']) 

作为一个侧面说明,它始终是很好用os.path.join,即使你的代码是特定平台在这一点上。

+1

我已经有Chrome运行。我杀了我已经有的Chrome的实例,现在它工作正常。感谢您使用os.path.join提示。你先生是个绅士和学者。 – Beebunny

1

你可以使用原始字符串文本适用于Windows的路径:

import subprocess 

chrome = r"C:\Program Files (x86)\Google\Chrome\Application\chrome.exe" 
subprocess.check_call([chrome, '--kiosk']) 

注:"\\n" == r'\n' != '\n'。虽然它对你的情况没有任何影响。

您可以尝试通过--new-window选项打开一个新窗口。

如果你需要的是一个新的谷歌浏览器窗口中打开一个网址:

import webbrowser 

webbrowser.get('google-chrome').open_new('https://example.com') 
+0

如何使用webbrowser.get()。open()并发送F11? – YumYumYum

+1

@YumYumYum webbrowser启动浏览器;它没有提供与之交互的方式(发送密钥等)。除了上面的'-kiosk'外,尝试传递'-fullscreen'命令行参数。问一个单独的问题,如果它不起作用。 – jfs

2

感谢“杀死其他情况”提示,解决我的问题:) 我用下面的方法:

import os 
os.system('taskkill /im chrome.exe') 
os.system('start chrome "https://www.youtube.com/feed/music" --kiosk') 
相关问题