繁体   English   中英

如何使用 python 和 selenium 在 Internet Explorer(IE)模式下打开 Microsoft Edge?

[英]How to open Microsoft Edge in Internet Explorer(IE) Mode using python and selenium?

我有一个网页,其中弹出窗口仅在 Internet Explorer 中打开,而不在其他浏览器中打开,包括 chrome、fire fox 和 edge。 我必须在无头模式下从此类弹出窗口中提取数据的唯一解决方案是在 Internet Explorer 模式下加载边缘页面。 但是,我无法使用 python 在边缘切换到 Internet Explorer 模式。 有什么办法可以做到这一点? 显示需要更改的设置的图像:

在此处输入图像描述

根据描述,我了解到您想使用Selenium Python代码以 IE 模式启动 Edge 浏览器。

目前我们只能使用Selenium C#代码启动IE模式的Edge浏览器。

如果您可以将 selenium 与 C# 语言一起使用,那么您可以参考以下步骤。

  1. Selenium 站点下载最新版本的 IEDriverServer。
  2. 使用 Visual Studio 创建 C# 控制台项目。
  3. Install Selenium.WebDriver 3.141.0 NuGet package from Nuget package manager.
  4. 将以下代码添加到项目中并修改路径。

static void Main(string[] args) 
{ 
    var dir = "{FULL_PATH_TO_IEDRIVERSERVER}"; 
    var driver = "IEDriverServer.exe"; 
    if (!Directory.Exists(dir) || !File.Exists(Path.Combine(dir, driver))) 
    { 
        Console.WriteLine("Failed to find {0} in {1} folder.", dir, driver); 
        return; 
    } 

    var ieService = InternetExplorerDriverService.CreateDefaultService(dir, driver); 
    var ieOptions = new InternetExplorerOptions{}; 
    ieOptions.AddAdditionalCapability("ie.edgechromium", true); 
    ieOptions.AddAdditionalCapability("ie.edgepath", "{FULL_PATH_TO_MSEDGE.EXE}"); 

    var webdriver = new InternetExplorerDriver(ieService, ieOptions, TimeSpan.FromSeconds(30)); 
    webdriver.Url = "http://Your_Site_URL_here..."; 
}

  1. 运行项目进行测试。

笔记:

  1. 确保在运行代码之前关闭所有 Edge 浏览器选项卡和 windows。
  2. 在代码中使用完整路径。

例如: ieOptions.AddAdditionalCapability("ie.edgepath", @"C:\Program Files (x86)\Microsoft\Edge\Application\msedge.exe"); .

有用的参考资料:

  1. 自动化 Internet Explorer 模式
  2. webdriver-edge-ie-mode.cs

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM