Перейти к содержимому

Как открыть браузер на пайтоне

  • автор:

Как открыть браузер через сервис Windows на Python?

Возникла проблема c открытием браузера средствами Python 3.x.

import webbrowser url = 'https://ru.stackoverflow.com/' browser_path = "C:/Users/Андрей/AppData/Local/Yandex/YandexBrowser/Application/browser.exe %s" webbrowser.get(browser_path).open(url) 

При запуске из консоли, код работает замечательно и все открывает, однако, если попробовать запустить его как сервис Windows, браузер перестает открываться. (В диспетчере задач видно, что создается один или несколько процессов браузера в фоновом режиме). Смена браузера не помогла. Запуск в виде сервиса нужен, т.к. скрипт должен будет слушать трафик, запускаясь одновременно с системой. Вот код, который не работает:

import win32serviceutil import win32service import win32event import servicemanager import socket import webbrowser class AppServerSvc (win32serviceutil.ServiceFramework): _svc_name_ = "TestService" _svc_display_name_ = "Test Service" def __init__(self,args): win32serviceutil.ServiceFramework.__init__(self,args) self.hWaitStop = win32event.CreateEvent(None,0,0,None) socket.setdefaulttimeout(60) def SvcStop(self): self.ReportServiceStatus(win32service.SERVICE_STOP_PENDING) win32event.SetEvent(self.hWaitStop) def SvcDoRun(self): servicemanager.LogMsg(servicemanager.EVENTLOG_INFORMATION_TYPE, servicemanager.PYS_SERVICE_STARTED, (self._svc_name_,'')) self.main() def main(self): url = 'https://ru.stackoverflow.com/' browser_path = "C://Program Files (x86)/Google/Chrome/Application/chrome.exe %s" webbrowser.get(browser_path).open(url) if __name__ == '__main__': win32serviceutil.HandleCommandLine(AppServerSvc) 

Буду крайне рад, если кто-то сможет помочь! Спасибо! P.S. Настройка сервиса в окне «Вход в систему», тоже не принесла результатов, ни под системной учетной записью с доступом к рабочему столу, ни под учетной записью пользователя.

Как открыть браузер на пайтоне

Скачай курс
в приложении

Перейти в приложение
Открыть мобильную версию сайта

© 2013 — 2023. Stepik

Наши условия использования и конфиденциальности

Get it on Google Play

Public user contributions licensed under cc-wiki license with attribution required

Python-сообщество

[RSS Feed]

  • Начало
  • » Web
  • » Открыть сайт с помощью Python

#1 Май 24, 2010 13:53:20

ganimed От: Зарегистрирован: 2010-05-24 Сообщения: 1 Репутация: 0 Профиль Отправить e-mail

Открыть сайт с помощью Python

Извеняюсь за глупый вопрос, но как организовать на питоне открытие сайта через браузер, что-то типа ссылки.
Открываем срипт, а он запускает браузер с открытой страничкой которую мы указали в скрипте.
Заранее спасибо.

Модуль веб-браузера (webbrowse)

Чтобы просто открыть URL, используйте webbrowser.open() метод:

 import webbrowser webbrowser.open("https://codecamp.ru") 

Если окно браузера открыто в данный момент, метод откроет новую вкладку по указанному URL. Если окно не открыто, метод откроет браузер операционной системы по умолчанию и перейдет к URL-адресу в параметре. Метод open поддерживает следующие параметры:

  • url — URL , чтобы открыть в веб — браузере (строка) [обязательно]
  • new — 0 открывается в существующей вкладке 1 открывает новое окно, 2 открывает новую вкладку (целое число) [ по умолчанию 0]
  • autoraise — если установлено значение Да, то окно будет перемещено поверх окон других приложений (Boolean) [ Значение по умолчанию False]

Обратите внимание, что new и autoraise аргументы редко работают , как большинство современных браузеров отказаться от этих commmands.

Webbrowser также может попытаться открыть URL — адреса в новых окнах с open_new способом:

 import webbrowser webbrowser.open_new("https://codecamp.ru") 

Этот метод обычно игнорируется современными браузерами, и URL-адрес обычно открывается в новой вкладке. Открытие новой вкладки можно попробовать с помощью модуля , используя open_new_tab метод:

 import webbrowser webbrowser.open_new_tab("https://codecamp.ru") 

Открытие URL с помощью разных браузеров

Модуль веб — браузер также поддерживает различные браузеры , используя register() и get() методы. Метод get используется для создания контроллера браузера с использованием пути к конкретному исполняемому файлу, а метод register используется для присоединения этих исполняемых файлов к предустановленным типам браузеров для будущего использования, обычно при использовании нескольких типов браузеров.

 import webbrowser ff_path = webbrowser.get("C:/Program Files/Mozilla Firefox/firefox.exe") ff = webbrowser.get(ff_path) ff.open("http://codecamp.ru/") 

Регистрация типа браузера:

 import webbrowser ff_path = webbrowser.get("C:/Program Files/Mozilla Firefox/firefox.exe") ff = webbrowser.get(ff_path) webbrowser.register('firefox', None, ff) # Now to refer to use Firefox in the future you can use this webbrowser.get('firefox').open("https://codecamp.ru/") 

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *