标签: webdriver

NameError:名称“WebDriverWait”未定义

我有一个朋友编写的 Python 代码,几周前它实际上运行得很好,但现在却引起了一些问题。该代码从 csv 文件获取谷歌图像搜索链接,并使用 Selenium Webdriver (Chrome),返回搜索页面上第一张图像的链接。

导致此错误的原因可能是什么?(NameError:名称“WebDriverWait”未定义)

感谢!

python webdriver selenium-webdriver

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

ExtentHtmlReporter类无法使用extentreports 5.0.6版本导入

我收到无法解析符号“ExtentHtmlReporter”消息

com.aventstack.extentreports.reporter.ExtentHtmlReporter;
Run Code Online (Sandbox Code Playgroud)

我添加了以下依赖项,并且能够成功导入以下导入。

import com.aventstack.extentreports.ExtentTest;
import com.aventstack.extentreports.Status;
import com.aventstack.extentreports.reporter.configuration.Theme;
Run Code Online (Sandbox Code Playgroud)

然而,下面的导入没有列出。

import com.aventstack.extentreports.reporter.ExtentHtmlReporter;



 <!-- https://mvnrepository.com/artifact/com.aventstack/extentreports -->
  <dependency>
      <groupId>com.aventstack</groupId>
      <artifactId>extentreports</artifactId>
      <version>5.0.6</version>
  </dependency
Run Code Online (Sandbox Code Playgroud)

我也用过5.0.0,没什么用。 在此输入图像描述

webdriver extentreports

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

如何find_element(By.XPATH)并在selenium中发送密钥?

尝试更新我的代码以使用"driver.find_element(By.XPATH..."而不是"driver.find_elements_by_xpath(...",但当我发送密钥时,我不断收到以下错误:

selenium.common.exceptions.ElementNotInteractableException: Message: element not interactable
Run Code Online (Sandbox Code Playgroud)

这是我的代码:

driver = webdriver.Chrome(PATH)
link_login = "https://www.wyzant.com/tutor/jobs"

driver.get(link_login)

username_input = driver.find_element(By.XPATH, "//*[@id='Username']")[1]
username_input.send_keys("Test")
Run Code Online (Sandbox Code Playgroud)

python selenium xpath google-chrome webdriver

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

(HTML) 通过 CSS 选择器选择下一个匹配元素?

我在 selenium webdriver 中使用 CSS 选择器。

假设我有一个如下所示的 DOM:

<div class="test">
    <a class="example"> Comet </a>
</div>
<div class="test">
    <a class="example"> Asteroid </a>
</div>
<div class="test">
    <a class="example"> Planet </a>
</div>
Run Code Online (Sandbox Code Playgroud)

假设我想将标签与“Asteroid”相匹配。如果我使用 CSS 选择器,我可以这样做:div.test > a.example

唯一的问题是这将匹配所有三个。使用 xpath,我可以执行如下操作:(//div/a[@class='example'])[2]这将告诉它选择第二个匹配元素。

有没有办法使用 CSS 选择器来做同样的事情?只需选择第二个或第三个匹配元素?我尝试过:nth-child(),但这似乎只适用于指定节点的子节点,并且似乎不像我给出的 xpath 示例那样工作,或者也许我做错了。

html css xpath webdriver css-selectors

-1
推荐指数
1
解决办法
143
查看次数