我在使用 Google 登录时遇到问题。我想登录我的帐户,但 Google 说不允许自动化驱动程序登录。
我正在寻找解决方案。是否可以获取普通 Firefox/Chrome 的 cookie 并将其加载到 ChromeDriver/GeckoDriver 中?我认为这可以是一个解决方案。但我不确定这是否可能..
正在寻找解决方案...
另外,我想添加一个快速解决方案。我通过使用我的旧验证帐户之一解决了这个问题。这对你来说是一个快速的解决方案。
selenium google-chrome selenium-chromedriver selenium-webdriver geckodriver
当我尝试在远程服务器的 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) #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) 在下面的代码中,我尝试等到元素可见:
var wait = new WebDriverWait(Driver.Instance, TimeSpan.FromSeconds(10));
wait.Until(ExpectedConditions.ElementIsVisible(By.Id("processing")));
Run Code Online (Sandbox Code Playgroud)
是否可以告诉驱动程序等到该元素不可见?
好到目前为止,我有我的编程去网站我想下载链接并选择它,然后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) 我正在使用量角器进行角度端到端aka e2e测试.
为了将密钥发送到元素,我使用:
element(by.model('myModel')).sendKeys('Test');
Run Code Online (Sandbox Code Playgroud)
我该如何发送密钥组合,比如Ctrl+A?
我在github上搜索了量角器源代码,但没有找到相关的例子.
按TAB键,然后按Selenium WebDriver中的ENTER键
GenericKeywords.typein(class.variable,PageLength); pagelength只不过是字符串.
在这段代码之后,我必须给Tab键.我不知道如何在Selenium WebDriver中提供Tab键?
WebDriver无法识别某些WebElements,WebDriver无法找到浏览器可见区域中不可见的元素.
为了使WebDri可以通过WebDriver查看,我们需要在浏览器的视图中使该元素可见,以向下滚动特定的div!
如何在我的网页的特定区域执行操作(向下滚动并单击).我尝试了很多,没有帮助我.
请帮我解决我的问题.
请指导如何使用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) (从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类?
selenium ×4
c# ×2
python ×2
angularjs ×1
chromium ×1
firefox ×1
geckodriver ×1
java ×1
javascript ×1
protractor ×1
rspec ×1
rspec2 ×1
ruby ×1