如何启用 chromedriver 从 selenium webdriver 登录

2023-12-25

如何从 selenium webdriver 中启用 chromedriver 详细日志记录功能?

我找到了合适的方法loggingTo and enableVerboseLogging但似乎无法正确使用它们:

require('chromedriver');
const webdriver = require('selenium-webdriver');

let capabilities = webdriver.Capabilities.chrome();
capabilities.setScrollBehavior(1);
let builder = new webdriver.Builder().withCapabilities(capabilities);
builder.enableVerboseLogging(); // fails!!!
let driver = builder.build();

在评论中chrome.js https://github.com/SeleniumHQ/selenium/blob/master/javascript/node/selenium-webdriver/chrome.js,有一种方法可以为 chrome webdriver 启用日志记录

 *
 * By default, every Chrome session will use a single driver service, which is
 * started the first time a {@link Driver} instance is created and terminated
 * when this process exits. The default service will inherit its environment
 * from the current process and direct all output to /dev/null. You may obtain
 * a handle to this default service using
 * {@link #getDefaultService getDefaultService()} and change its configuration
 * with {@link #setDefaultService setDefaultService()}.
 *
 * You may also create a {@link Driver} with its own driver service. This is
 * useful if you need to capture the server's log output for a specific session:
 *
 *     let chrome = require('selenium-webdriver/chrome');
 *
 *     let service = new chrome.ServiceBuilder()
 *         .loggingTo('/my/log/file.txt')
 *         .enableVerboseLogging()
 *         .build();
 *
 *     let options = new chrome.Options();
 *     // configure browser options ...
 *
 *     let driver = chrome.Driver.createSession(options, service);
 *

您还有其他选择:

  • 将 ChromeDriver 作为独立进程运行

由于 ChromeDriver 实现了有线协议,因此它与任何 RemoteWebDriver 客户端完全兼容。只需使用参数启动 ChromeDriver 可执行文件(用作服务器)--log-path and --verbose,创建一个客户端,然后就可以了:

WebDriver driver = new RemoteWebDriver(
  "http://localhost:9515",
  DesiredCapabilities.chrome()
);
driver.get("http://www.google.com");
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何启用 chromedriver 从 selenium webdriver 登录 的相关文章

  • 使用正则表达式验证字符串是否安全

    我有一个网站 用户可以在其中选择用户名 目前 他们可以输入几乎任何字符 包括 ETC 我知道我可以使用正则表达式 这可能就是我的选择 我将使用否定集 我认为这是正确的工具 如下所示 那么 我怎样才能知道要放入该集合中的所有非法字符呢 我可以
  • 在 Cypress 中提取部分文本

    我是 Cypress 的新手 我需要从我的应用程序中提取文本的动态部分 div Hello World greeting number 9123 div 在此示例中 我需要从 div 中提取 9123 以便稍后在测试中使用 知道我应该怎么做
  • PHP 中的 JS charCodeAt 等效项(具有完整的 unicode 和 emoji 兼容性)

    我在 JS 中有一个简单的代码 如果涉及特殊字符 我无法在 PHP 中复制它 这是 JS 代码 参见JSFiddle https jsfiddle net h8oca3qg 5 用于输出 var str t char t and speci
  • 带有 nextjs 的 Material-ui 选项卡?

    我有一个 Material ui nextjs 和 typescript 项目 我正在尝试让我的导航栏与 nextjs 一起使用 import as React from react import AppBar from material
  • 在函数调用时加载外部 Javascript

    我想知道如何从函数将外部 Javascript 加载到我的文档中 这是一种方法 function loadDaFun var script document createElement script script src path to y
  • d3 树 - 有相同孩子的父母

    我一直在将代码从 JIT 转换为 D3 并使用树布局 我已经复制了代码http mbostock github com d3 talk 20111018 tree html http mbostock github com d3 talk
  • 在 ASP.NET MVC 中使用 bootstrap 创建模式

    我在 ASP NET MVC 项目上使用 NET Framework 4 5 Bootstrap v3 3 6 我想做的是创建一个模态表单 我尝试了以下方法 在主布局中创建了一个模态容器 div class modal fade style
  • YouTube - 右键单击​​时不显示上下文菜单

    想法 通过使用右键拖放到视频播放器上来查找 YouTube 视频 例如 每 2 屏幕宽度 1 秒 因此 在 1920x1080 的屏幕上 如果我按下鼠标右键 将其向左拖动 384 像素 20 然后松开 视频应该快退 10 秒 我有一个 Gr
  • 添加数组的总和。显示1个输出

    更新 这个问题的答案如下 感谢在不同线程上进行的 dougtesting 将数组相加 显示总和 https stackoverflow com questions 45724641 add array together display su
  • 获取 Firebase AngularFire 中项目的索引 ID

    这里提出了类似的问题 但接受的答案并没有真正回答这个问题 使用 AngularFire 是否可以创建关系型数据库 或者访问 UniqueID https stackoverflow com questions 16879484 using
  • 代理阻止网络套接字?如何绕行

    我有一个用 Python 编写的正在运行的 websocket 服务器 来自https github com opiate SimpleWebSocketServer https github com opiate SimpleWebSoc
  • 如何按日期升序对对象进行排序?

    如果我有一个对象列表 var objectList LIST OF OBJECT each object列表中包含三个属性 name date gender 如何按 对列表中的对象进行排序date 属性升序 the date 属性包含字符串
  • 如何查明在 Chrome 控制台中按下按钮时会调用哪些函数?

    我正在尝试自学 Google Closure javascript 库 我正在检查 TreeControl UI 小部件 如何使用Chrome控制台分析当我点击下面演示中的 剪切 按钮时运行了哪些功能 例如 我可以为此设置一个断点吗 我尝试
  • 使用Doctype让scrollTop返回0,为什么?

    当我将此 Doctype 放入我的文档中时document body scrollTop返回零 这是为什么 当您使用该 Doctype 时 您会将每个当前浏览器放入所谓的几乎标准模式 http hsivonen iki fi doctype
  • 使用 System.js 导入 Typescript 编译的模块时出错

    我最近正在学习使用 system js 导入由 Typescript 编译的模块 这些模块之前是为 require js 编译的 并且工作正常 但是合并到system js时 应用时无法导入模块系统生产 js 控制台说 Uncaught i
  • 如何实现 chromecast 对 html5 播放器的支持

    我使用js和html5设计了一个具有一些自定义功能的html5播放器 现在我需要在html5播放器上添加chromecast选项 例如https raw githubusercontent com kim company videojs c
  • 在成功回调之前修改 JSONP 结果

    我想从外部服务加载一些 JSON 数据 然而 它提供 foo bar useful 而我真正关心的是 有用 的部分 我需要将那部分传递给success打回来 我正在尝试使用Deferred一次从多个数据源加载 类似this https st
  • 在 Mobile Safari 中点击

    敲击
  • Twitter 引导选项卡和 JavaScript 事件

    我正在一个项目中使用 twitter bootstrap 特别是它的选项卡功能 http twitter github com bootstrap javascript html tabs http twitter github com b
  • 如何使用 jquery 生成并附加随机字符串

    一般性 我想使用 jQuery 或 javascript 将随机字符串附加到元素的属性 规格 我需要引用 CDN 上的 CSS 文件 不幸的是 每次更新该 CSS 文件时 CDN 都会更改该文件的 URL 所以我不能简单地引用静态 URL

随机推荐

  • facebook“发送”按钮打开一个空白框

    我的网站是 alonsart com 当单击我网站上的发送按钮时 它会打开一个空白框 这就是我的代码的样子 div div
  • 混合混合模式在应用于一个元素但不适用于另一元素时起作用

    我在用mix blend mode在 css 生成的内容上创建倍增的背景效果 当我将这个生成的元素应用到外部包装器时 它具有预期的效果 standard cover background blue color fff position ab
  • 如何浅拉按分支名称跟踪的子模块

    您好 我有一个包含子模块的超级项目 子模块通过分支名称而不是 sha 提交号进行跟踪 在我们的构建服务器上 我想尽可能少地拉动 所以我尝试了 git submodule update remote init 然而这并不肤浅 似乎拉出所有内容
  • IteratorGetNext 上的 TensorFlow 性能瓶颈

    在摆弄 TensorFlow 时 我注意到一个相对简单的任务 批处理一些 3D 加速度计数据并获取每个周期的总和 的性能相对较差 一旦我得到了 非常漂亮 这就是我所运行的本质 Timeline https stackoverflow com
  • 为什么 F5 在 Visual Studio 中执行之前不重建项目?

    If I press F5 my project runs but it doesn t see any of the changes that I made I need to manually re build before press
  • 如何将一个库静态链接到另一个静态库?

    我有 2 个具有不同版本 MinGW 的构建环境 一种为 Qt 配置 另一种则没有 然而 两者都有 Qt 的存根静态库 最终实际上链接到 dll 问题是我想在Qt MinGW中构建一个静态库 然后将其包含在非Qt MinGW中 当我尝试时
  • 如何实现logstash配置的单元或集成测试?

    使用logstash 1 2 1 人们现在可以有条件地做各种事情 如果管理许多日志文件并实现指标提取 即使是早期版本的 conf 文件也会变得复杂 看完之后这个全面的 http untergeek com 2013 09 11 gettin
  • 如何按最小增量(或接近最小增量)改变浮点数?

    我有一个double value f并希望有一种方法将其稍微放大 或缩小 以获得一个尽可能接近原始值但仍严格大于 或小于 原始值的新值 它不必接近最后一位 更重要的是 我所做的任何更改都保证产生不同的值 而不是舍入到原始值 检查你的 mat
  • jQuery DatePicker 填充输入 - 多次点击问题

    所以 我最近面临的困境是 我使用 jQuery DatePick 不是 DatePicker 来选择日期并用这些日期填充输入字段 问题是每次我单击日期时输入字段都会被填充 因此 如果我单击第 23 个 然后再次单击它以取消选择它 它会自动添
  • 正则表达式重用一个模式来捕获多个组?

    我想多次匹配某个模式 就像描述的那样here https stackoverflow com questions 41878948 is it possible to define a pattern and reuse it to cap
  • 为 NSTextField 设置边框

    哇 我真的掉进兔子洞了 我试图在 UI 部分的背景上添加文本 并将文本字段作为另一部分 例如生日在 然后我想重新调整该文本字段的用途以允许输入文本 所以我做了类似的事情 myTextFieldName editable true myTex
  • 在 Preact 和 typescript 中使用 Web 组件

    我在用着自定义元素 https developer mozilla org en US docs Web Web Components Using custom elements又称为网络组件Preact https preactjs co
  • 如何绘制堆叠和归一化直方图?

    我有一个将连续值映射到离散类别的数据集 我想显示一个直方图 其中连续值作为 x 类别作为 y 其中条形堆叠并标准化 例子 import numpy as np import pandas as pd import matplotlib im
  • 在 Azure 数据工厂查找中处理 >5000 行

    我有一个复制活动 它将表从 MySQL 复制到 Azure 表存储 这很好用 但是当我在 Azure 表上进行查找时 出现错误 数据太多 这是按照文档设计的 Lookup 活动最多可包含 5 000 行 最大大小为 2 MB 另外还提 到了
  • Android:将参数传递给选项卡

    在我的 Android 应用程序中 我使用以下代码来创建选项卡 mTabHost FragmentTabHost findViewById android R id tabhost mTabHost setup this getSuppor
  • 脸书状态栏

    有人知道如何在新 Facebook 中找到状态栏的好教程吗 底部的那个 看起来真的很酷 我以为它是用 ajax 或 jquery 编写的 但不确定 以下是一些可能对您有帮助的有用链接 插件 定位页脚 http plugins jquery
  • 计算向量中元素的所有成对差异[重复]

    这个问题在这里已经有答案了 我的问题与之前的帖子密切相关 计算 R 中向量内的所有成对差异 https stackoverflow com questions 24314878 compute all pairwise difference
  • Rails 3 应用程序中的 Sass 导入错误 - “未找到或无法读取要导入的文件:指南针”

    我有一个成功运行的 Rails 3 应用程序compass init rails using blueprint 我可以 import stylesheets 目录中的文件 但当我尝试时出现错误 import compass 现在该应用程序
  • 在 CORS spring security + webFlux 中启用通配符

    我在使用 spring webFlux 制作的项目中启用了 spring security CORS 我的问题是我们接受来自以下机构的请求 http 本地主机 4200 http localhost 4200 我怎样才能让 CORS 接受来
  • 如何启用 chromedriver 从 selenium webdriver 登录

    如何从 selenium webdriver 中启用 chromedriver 详细日志记录功能 我找到了合适的方法loggingTo and enableVerboseLogging但似乎无法正确使用它们 require chromedr