2016-03-14 2 views
0

Я открываю новое окно IE с этим:Как открыть новую вкладку браузера с подпроцессом?

subprocess.Popen(r'"' + os.environ["PROGRAMFILES"] + 
'\Internet Explorer\IEXPLORE.EXE" ' + Call_URL) 

Это хорошо, когда IE закрыт, но даже тогда, когда оно открыто это порождает новое окно. Как открыть только новую вкладку? Если возможно, я бы хотел использовать стандартный браузер, но я не мог понять, как это сделать.

Примечание: я не могу использовать веб-браузер и os не имеет .startfile. Мне тоже не повезло с os.popen (используя Jython 2.5.3b1).

ответ

2

Поскольку вы также хотели, чтобы стандартный браузер приводил пример, чтобы открыть новую вкладку с хромом. Если хром не открыт, он откроется, а затем перейдите к URL-адресу.

import subprocess 
subprocess.Popen("start chrome /new-tab www.google.com",shell = True) 

Это работает. Пожалуйста, попробуйте и дайте мне знать, если это то, что вы хотели.

Еще один без жесткого кодирования Call_URL

import subprocess 
Call_URL = "www.google.com" 
mycmd = r'start chrome /new-tab {}'.format(Call_URL) 
subprocess.Popen(mycmd,shell = True) 

Вы ожидали чего-то подобного?

+0

Спасибо. Однако я получаю некоторые ошибки. On Shell = True: 'TypeError: неподдерживаемый тип операндов для +: 'NoneType' и 'list'' On Shell = False или параметр Shell удален: ' OSError: не удается запустить программу «start» (в каталоге «C: \ Users \ Admin \ Desktop»): CreateProcess error = 2, система не может найти указанный файл Это работает: 'subprocess.Popen (r '" C: \ Users \ Admin \ AppData \ Local \ Google \ Chrome \ Application \ chrome.exe "/ new-tab '+ Call_URL)' .. Это небольшое улучшение, я думаю, но не вызывает стандартный браузер пользователя. (Христос, делает текстовый редактор на стеке ** сосать **) – MapEngine

+0

@MapEngine Call_URL следует упомянуть, как я упомянул www.google.com. Он не может быть передан после команды. – DineshKumar

+0

Не работает в Jython (нет .format). Также не запускается стандартный браузер. Я в основном хочу «перейти на google.com, используя любой браузер, который у вас есть». Поскольку вышеупомянутое не работает в моем случае, я переписал его, по крайней мере, независимо от пользователя: 'subprocess.Popen (r '' '+' C: \\ Users \\ '+ os.environ [" USERNAME "] + '\ AppData \ Local \ Google \ Chrome \ Application \ chrome.exe "/ new-tab' + Call_URL)' – MapEngine

Смежные вопросы