标签: selenium-webdriver

硒谷歌登录块

我在使用 Google 登录时遇到问题。我想登录我的帐户,但 Google 说不允许自动化驱动程序登录。

我正在寻找解决方案。是否可以获取普通 Firefox/Chrome 的 cookie 并将其加载到 ChromeDriver/GeckoDriver 中?我认为这可以是一个解决方案。但我不确定这是否可能..

正在寻找解决方案...

在此处输入图片说明

另外,我想添加一个快速解决方案。我通过使用我的旧验证帐户之一解决了这个问题。这对你来说是一个快速的解决方案。

selenium google-chrome selenium-chromedriver selenium-webdriver geckodriver

29
推荐指数
4
解决办法
3万
查看次数

Java.io.IOException:无效状态代码 = 403 文本 = 禁止

当我尝试在远程服务器的 Azure DevOps 驱动程序中执行一组 Selenium Webdriver 测试时,出现此错误堆栈:

2023-03-08T21:06:46.9827484Z Running Test 66728 Mobile Web - Pick Task
2023-03-08T21:06:46.9827843Z Test Description https://dev.azure.com/Corporation/%20FootPrint/_workitems/edit/66728
2023-03-08T21:06:47.2244460Z Starting ChromeDriver 111.0.5563.41 (976ef12907ef9b413c2d929c043307b415d27b9e-refs/branch-heads/5563@{#737}) on port 35235
2023-03-08T21:06:47.2248489Z Only local connections are allowed.
2023-03-08T21:06:47.2273309Z Please see https://chromedriver.chromium.org/security-considerations for suggestions on keeping ChromeDriver safe.
2023-03-08T21:06:47.2530381Z ChromeDriver was started successfully.
2023-03-08T21:06:50.3292859Z Mar 08, 2023 4:06:50 PM org.openqa.selenium.remote.http.WebSocket$Listener onError
2023-03-08T21:06:50.3319163Z WARNING: Invalid Status code=403 text=Forbidden
2023-03-08T21:06:50.3320374Z java.io.IOException: Invalid Status code=403 text=Forbidden
2023-03-08T21:06:50.3321045Z    at org.asynchttpclient.netty.handler.WebSocketHandler.abort(WebSocketHandler.java:92)
2023-03-08T21:06:50.3321498Z    at org.asynchttpclient.netty.handler.WebSocketHandler.handleRead(WebSocketHandler.java:118)
2023-03-08T21:06:50.3322255Z    at org.asynchttpclient.netty.handler.AsyncHttpClientHandler.channelRead(AsyncHttpClientHandler.java:78)
2023-03-08T21:06:50.3326071Z    at …
Run Code Online (Sandbox Code Playgroud)

selenium-webdriver

29
推荐指数
3
解决办法
7万
查看次数

selenium.common.exceptions.SessionNotCreatedException:此版本的 ChromeDriver 仅支持 Chrome 版本 114。LATEST_RELEASE_115 不存在

#Once the zip has finished downloading, extract the folder and copy the path of the chromedriver exe file (should be the #first one), add it to your code like this,

from selenium import webdriver
from selenium.webdriver.chrome.service import Service

url = "somewebsite.com"

service_obj = Service("D:\\Users\\eggman\Downloads\chromedriver-win64\chromedriver-win64\chromedriver.exe")
driver = webdriver.Chrome(service=service_obj)
driver.get(url)
Run Code Online (Sandbox Code Playgroud)

返回错误:

selenium.common.exceptions.SessionNotCreatedException:此版本的 ChromeDriver 仅支持 Chrome 版本 114。LATEST_RELEASE_115 不存在

我想为了避免这种情况,我可以关闭自动更新吗?

我最初使用了以下代码,效果很好

driver = webdriver.Chrome(service=Service(ChromeDriverManager().install()), options=chrome_options)
Run Code Online (Sandbox Code Playgroud)

python chromium selenium-chromedriver selenium-webdriver

29
推荐指数
2
解决办法
8万
查看次数

Selenium - 等到元素不可见

在下面的代码中,我尝试等到元素可见:

var wait = new WebDriverWait(Driver.Instance, TimeSpan.FromSeconds(10));
wait.Until(ExpectedConditions.ElementIsVisible(By.Id("processing")));
Run Code Online (Sandbox Code Playgroud)

是否可以告诉驱动程序等到该元素不可见?

c# selenium-webdriver

28
推荐指数
4
解决办法
6万
查看次数

使用Selenium和python将文件下载到指定位置

好到目前为止,我有我的编程去网站我想下载链接并选择它,然后firefox对话框出现,我不知道该怎么办.我想将此文件保存到桌面上的文件夹中.我正在使用它进行夜间构建,所以我需要这个工作.请帮忙.

这是我从网站上获取下载链接的代码:

driver = web driver.Firefox()
driver.implicitly_wait(5)
driver.get("Name of web site I'm grabbing from")
driver.find_element_by_xpath("//a[contains(text(), 'DEV.tgz')]".click()
Run Code Online (Sandbox Code Playgroud)

python firefox selenium selenium-webdriver

28
推荐指数
1
解决办法
5万
查看次数

将Ctrl + A组合发送到元素

我正在使用量角器进行角度端到端aka e2e测试.

为了将密钥发送到元素,我使用:

element(by.model('myModel')).sendKeys('Test');
Run Code Online (Sandbox Code Playgroud)

我该如何发送密钥组合,比如Ctrl+A


我在github上搜索了量角器源代码,但没有找到相关的例子.

javascript angularjs selenium-webdriver protractor

28
推荐指数
2
解决办法
1万
查看次数

按TAB键,然后按Selenium WebDriver中的ENTER键

按TAB键,然后按Selenium WebDriver中的ENTER键

GenericKeywords.typein(class.variable,PageLength); pagelength只不过是字符串.

在这段代码之后,我必须给Tab键.我不知道如何在Selenium WebDriver中提供Tab键?

selenium-webdriver

28
推荐指数
2
解决办法
14万
查看次数

如何使用Selenium WebDriver和Java滚动特定的DIV?

WebDriver无法识别某些WebElements,WebDriver无法找到浏览器可见区域中不可见的元素.

为了使WebDri可以通过WebDriver查看,我们需要在浏览器的视图中使该元素可见,以向下滚动特定的div!

如何在我的网页的特定区域执行操作(向下滚动并单击).我尝试了很多,没有帮助我.

请帮我解决我的问题.

java selenium selenium-webdriver

28
推荐指数
5
解决办法
7万
查看次数

如何使用RSpec忽略或跳过测试方法?

请指导如何使用RSpec禁用以下测试方法之一.我正在使用Selenuim WebDriver + RSpec组合来运行测试.

require 'rspec'
require 'selenium-webdriver'

describe 'Automation System' do

  before(:each) do    
    ###
  end

  after(:each) do
    @driver.quit
  end

  it 'Test01' do
      #positive test case
  end

  it 'Test02' do
      #negative test case
  end    
end
Run Code Online (Sandbox Code Playgroud)

ruby rspec rspec2 selenium-webdriver

28
推荐指数
5
解决办法
2万
查看次数

在OpenQA.Selenium(C#)中找不到WebDriverWait类

(从Java-Selenium迁移到C#-Selenium)

当使用Selenium和C#搜索显式等待时,我发现几个帖子的代码看起来类似于Java-Counterpart:

例如这里:

WebDriverWait wait = new WebDriverWait(driver, new TimeSpan(0,0,5));
wait.Until(By.Id("login"));
Run Code Online (Sandbox Code Playgroud)

或者在这里:

WebDriverWait wait = new WebDriverWait(driver, 30);
wait.until(ExpectedConditions.visibilityOfElementLocated(By.id("locator")));
Run Code Online (Sandbox Code Playgroud)

WebDriverWait来自OpenQA.Selenium.Support.UI命名空间,并且位于一个名为Selenium WebDriver支持类的单独包中

但是:
当我尝试在Visual Studio中编写代码(通过NuGet获取Selenium包)时,WebDriverWait在我的代码中使用将提示消息:

找不到类型或命名空间名称'WebDriverWait'(您是否缺少using指令或程序集引用?)

即使我通过包括Selenium参考

using OpenQA.Selenium;
Run Code Online (Sandbox Code Playgroud)

在查找WebDriverWait文档时,您会发现应该有一个名为的命名空间

OpenQA.Selenium.Support.UI

但我无法通过代码中的"使用"访问它.

为什么会这样?我在哪里可以找到WebDriverWait类?

c# selenium selenium-webdriver

28
推荐指数
1
解决办法
3万
查看次数