当前位置: 首页 > 面试题库 >

如何在同一会话中将Selenium Webdriver从无头模式设置为普通模式?

贺海
2023-03-14
问题内容

将Selenium Webdriver设置为无头模式后又可以将其设置回正常模式,是否可以?

from selenium import webdriver
from selenium.webdriver.firefox.options import Options

options = Options()
options.headless = True
driver = webdriver.Firefox(options=options)
driver.get(http://stackoverflow.com)

# set driver back to normal mode

问题答案:

,不能使Chrome最初以 无头 模式运行,然后在同一会话中切换回普通模式。

当您配置的实例 ChromeDriverChromeOptions()跨越一个新 的Chrome浏览器上下文 的配置被 烘烤 的内
chromedriver 的可执行文件,将在该次的寿命 webdriver的 并且是 不可编辑 。因此,您无法通过类将任何现有/新 配置
修改/添加ChromeOptions()到当前正在执行的 WebDriver 实例。

即使您能够从已启动的 ChromeDriverChrome浏览器会话中 提取 ChromeDriverChromeSession
属性(例如, 会话ID Cookie UserAgent 和其他会话属性),也仍然无法更改
ChromeDriver 的属性 __

较干净的方法是 driver.quit()tearDown(){}方法内调用,以正常 关闭销毁 当前的
ChromeDriverChrome浏览器 实例,然后使用新的配置集覆盖一组新的 ChromeDriverChrome浏览器
实例。



 类似资料:
  • 基于php-fpm来运行swoole/framework的MVC程序,这是传统的LAMP模式。 Nginx配置 server { listen 80; root /home/htf/workspace/php/swoole.com; index index.php index.html; server_name local.swoole

  • 问题内容: 我正在使用Spring 3.1.1.RELEASE,Hibernate 4.1.0.Final和JPA 2.0。有没有一种方法可以配置Spring事务以在不使用Java代码的情况下执行事务后提交?换句话说,我想将刷新模式设置为在应用程序上下文文件,hibernate配置文件或persistence.xml文件中提交。我的Spring交易服务类看起来像 我的应用程序上下文设置如下: 我的

  • 我目前正在使用yahoo weather api获取天气数据。我正在犯错误。请帮忙。 获取在'https://weather-ydn-yql.media.yahoo.com/forecastrss?location=sunnyvale, ca 我试图做谷歌,但没有一个解决方案为我工作

  • 我们从应用程序中的avro文件中读取时间戳信息。我正在测试从Spark2.3.1到Spark2.4的升级,其中包括新内置的spark-avro集成。但是,我不知道如何告诉avro模式,我希望时间戳具有“timestamp-millis”的逻辑类型,而不是缺省的“timestamp-micros”。 正如我们所看到的,底层类型仍然是long,但它现在被一个逻辑类型“timestamp-micros”

  • 我已经用PyCharm建立了我的第一个烧瓶项目,这是我的应用程序。py文件: 我想在调试模式下运行我的项目,这样我就不必每次发生变化时都重新启动服务器。我提供应用程序。使用debug=True参数运行函数,但这似乎不会更改调试标志。然而,应用程序确实启动了,我确实在页面上看到了“TEST”,但这是在调试标志设置为False的情况下进行的。 我还尝试直接用os.environ["FLASK_DEBU

  • 问题内容: 我想在无头模式下为所有3种浏览器Chrome,Firefox和IE运行脚本 以下是Chrome的代码: 注意:其工作正常 Firefox: 注意:其工作正常 IE浏览器: 同样,我想在IE中使用选项执行 问题答案: IE不支持无头模式(因为如今IE尚未接受任何形式的更新或改进。)。 但是您可以使用trifle.js,这是一种浏览器,可以将其以无头模式模拟某些IE版本,因为它被编码为Ph