2016-11-29 8 views
0

Я занимался небольшой практикой python и в последнее время заметил, что я не могу открыть Microsoft Edge из python2.7, используя webbrowser, когда это мой браузер по умолчанию. Вместо этого он открывает вкладки в IE. Для этого есть причина? Есть ли обходной путь?Как открыть Microsoft Edge из сценария?

Вот некоторые примеры кода:

import webbrowser as web 
from random_words import RandomWords 

def main(): 
    rw = RandomWords() 

    for i in range(0, 30): 
     word = rw.random_word() 
     web.open(word, new=0) 

main() 
+0

Вы можете быть в состоянии ответить на это самостоятельно, посмотрев на [исходный код] модуля 'webrowser' (в https://hg.python.org/cpython/file/2.7/ Lib/webbrowser.py). – martineau

ответ

0
#import (Program Directory to .exe Here) as web 
from random_words import RandomWords 

def main(): 
    rw = RandomWords() 

    for i in range(0, 30): 
     word = rw.random_word() 
     web.open(word, new=0) 

main() 
+0

программа импорта реж здесь веб из random_words импорта RandomWords Защиту Main(): Rw = RandomWords() для г в диапазоне (0, 30): слово = rw.random_word() web.open (word, new = 0) main() –

+0

Что такое синтаксис импорта .exe прямо так? Я верю, что 'import C: $ path as web' и' import 'C: $ path as web' оба являются недействительными синтаксисом – RIL0509

+0

извините, последний пример должен был быть «import» C: $ path "as web' – RIL0509

1

Используйте MicrosoftWebDriver.exe скачаны с Microsoft WebDriver Downloads page, в разделе 'Загрузки' текущего выпуска 14393, Версия: 3.14393 | Поддерживается версия Edge: 14.14393. Либо поставьте этот драйвер в том же каталоге, что и скрипт, либо укажите webdriver.Edge на путь, к которому он загружен. Тогда это должно работать, как и ожидалось:

import os 
from selenium import webdriver 
import webbrowser as web 
from random_words import RandomWords 

# create new Edge session 
dir = 'C:\Users\Me\Downloads' # use os.path.dirname(__file__) if same directory as script 
edge_path = dir + "\MicrosoftWebDriver.exe" 
driver = webdriver.Edge(edge_path) 

def main(): 
    rw = RandomWords() 

    for i in range(0, 30): 
     word = rw.random_word() 
     driver.get(word, new=0) 

main() 

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

  • Нет связанных вопросов^_^