小编cru*_*dey的帖子

使用Apache POI如何读取特定的Excel列

我在使用Apache POI时遇到excel问题.我可以阅读各行,但有时候我会想要只读一个特定的列.

因此,可以仅读取任何特定列,例如仅读取"A"列或仅读取"C"列.

我正在使用Java语言.

java excel apache-poi

18
推荐指数
2
解决办法
11万
查看次数

在 Docker 容器中找不到 Chromedriver 可执行路径

我使用下面的 Docker 文件创建了一个 docker 映像。它安装最新版本的 Google Chrome 和 Chrome 驱动程序。以及其他 pip 包。

Dockerfile

FROM python:3.9

# Install Chrome WebDriver
RUN CHROMEDRIVER_VERSION=`curl -sS chromedriver.storage.googleapis.com/LATEST_RELEASE` && \
    mkdir -p /opt/chromedriver-$CHROMEDRIVER_VERSION && \
    curl -sS -o /tmp/chromedriver_linux64.zip http://chromedriver.storage.googleapis.com/$CHROMEDRIVER_VERSION/chromedriver_linux64.zip && \
    unzip -qq /tmp/chromedriver_linux64.zip -d /opt/chromedriver-$CHROMEDRIVER_VERSION && \
    rm /tmp/chromedriver_linux64.zip && \
    chmod +x /opt/chromedriver-$CHROMEDRIVER_VERSION/chromedriver && \
    ln -fs /opt/chromedriver-$CHROMEDRIVER_VERSION/chromedriver /usr/local/bin/chromedriver

# Install Google Chrome
RUN curl -sS -o - https://dl-ssl.google.com/linux/linux_signing_key.pub | apt-key add - && \
    echo "deb http://dl.google.com/linux/chrome/deb/ stable main" >> /etc/apt/sources.list.d/google-chrome.list …
Run Code Online (Sandbox Code Playgroud)

python selenium docker

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

为什么输入元素的“值”属性有时不会出现在 HTML 中?

有时,input元素会直观地呈现其值,但这些值不会呈现在元素 HTML 中。不作为“文本”,也不作为“值”属性。就像这里
实际上,它是一个value属性,但它是隐藏的。
我的意思是,甚至value属性本身的存在也是隐藏的。
我想了解为什么这些value属性被隐藏?

html selenium

6
推荐指数
1
解决办法
1093
查看次数

垂直向下滚动并使用java在Selenium WebDriver中向上滚动

任何人都可以帮助我使用Java自动使用WebDriver 向下滚动功能吗?

就我而言,一旦我垂直向下滚动鼠标,就会"Sign In"显示(可见)雅虎邮件.

java scroll webdriver selenium-webdriver

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

Python Selenium 右键单击

试图找到一些文本,然后右键单击该文本。该表是动态的,因此我无法假设知道要搜索的值所在的单元格位置或要单击的值。例如,我想找到一个名称,然后右键单击名称本身

右键菜单似乎被称为class = context menu,值为class = context_item(请参见附加的屏幕截图)(还包括 html)

我知道这部分有效,但它下面的其余部分有问题 - col = row.find_element(By.XPATH, '//a[contains(text() , "Luke Wilson")]')

### 输出

回溯(最近一次调用):文件“C:\Users\AppData\Local\Programs\Python\Python36\ffox_Change_Create_Save_Stay_v2.py”,第 182 行,在 get_all_rows_approval() 文件“C:\Users\AppData\Local\Programs\ Python\Python36\ffox_Change_Create_Save_Stay_v2.py”,第 164 行,在 get_all_rows_approval 菜单 = col.find_element_by_class_name("context_menu") 文件“C:\Users\AppData\Local\Programs\Python\Python36\lib\site-packages\selenium\web \remote\webelement.py", line 398, in find_element_by_class_name return self.find_element(by=By.CLASS_NAME, value=name) File "C:\Users\AppData\Local\Programs\Python\Python36\lib\site-packages \selenium\webdriver\remote\webelement.py",第 654 行,在 find_element {"using": by, "value": value})['value'] 文件“C:\Users\AppData\Local\Programs\Python\Python36\lib\site-packages\selenium\webdriver\remote\webelement.py”,第 628 行,在 _execute 中返回 self._parent.execute(command, params ) 文件“C:\Users\AppData\Local\Programs\Python\Python36\lib\site-packages\selenium\webdriver\remote\webdriver.py”,第 320 行,在执行 self.error_handler.check_response(response) 文件中“ C:\Users\AppData\Local\Programs\Python\Python36\lib\site-packages\selenium\webdriver\remote\errorhandler.py”,第 242 行,在 check_response 中引发 exception_class(message, screen, stacktrace) selenium.common。 exceptions.NoSuchElementException:消息:无法定位元素:.context_menu在 _execute 中返回 self._parent.execute(command, …

python selenium contextmenu python-3.x selenium-webdriver

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

如何在 C# 中使用 Selenium WebDriver 打开新选项卡?

  1. webElement.SendKeys(Keys.Control + "t"); 这段代码对我不起作用。
  2. String n = Keys.chord(Keys.CONTROL, Keys.ENTER); driver.findElement(By.id("open-tab")).sendKeys(n); 其中key.chord不适用于 selenium C#。
  3. driver.SwitchTo().Window(driver.WindowHandles[0]); 这个也不适用于我的代码。是否有任何替代方法可用于切换选项卡。

c# selenium automation selenium-webdriver

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

速度变量(同时使用字符串和整数变量)

如何在“ Velocity ”中一起使用String 和 Integer 变量

#set ($var1 = "exp"+1)
Run Code Online (Sandbox Code Playgroud)

我试了几次,但我不能。

任何帮助将不胜感激。

velocity xwiki

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

如何使用 selenium python 找到网页中的所有元素

这是一个非常简单的问题,但令人惊讶的是我在互联网上找不到答案。我试图找到网页中存在的所有元素。我知道在硒中寻找元素你可以说:

driver.find_elements_by_tag_name()
driver.find_elements_by_class_name()
driver.find_elements_by_css_selector()
driver.find_elements_by_name()
driver.find_elements_by_id()
Run Code Online (Sandbox Code Playgroud)

等等。但我怎样才能找到所有元素呢?

python selenium

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

我在使用时遇到问题 (EC.presence_of_element_ located(By.class, ""))

我正在做 Python selenium 项目并且有一个问题

EC.presence_of_element_located
Run Code Online (Sandbox Code Playgroud)

看起来Python无法识别它。

这是我的代码:

service = Service("C:\\Users\\jjang\\.wdm\\drivers\\chromedriver\\win32\\96.0.4664.45\\chromedriver.exe")
browser = webdriver.Chrome(service=service)
browser.maximize_window()
browser.get("https://www.google.com")
actions = ActionChains(browser)
actions.send_keys(Keys.TAB * N)
actions.send_keys(Keys.ENTER)
actions.perform()
search_bar = browser.find_element(By.CLASS_NAME, "gLFyf")
search_bar.send_keys("hola")
search_bar.send_keys(Keys.ENTER)
unnecessary = WebDriverWait(browser, 5).until(EC.presence_of_element_located((By.CLASS_NAME,"VjDLd mnr-c g-blk")))
Run Code Online (Sandbox Code Playgroud)

Python 告诉我

NameError:名称“EC”未定义

为什么Python将ES识别为Name?有人可以帮助我吗?

python selenium selenium-webdriver

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

构造函数 WebDriverWait(chromeDriver, int) 未定义

即使在 eclipse IDE 中导入 WebDriverWait 也无法识别。

在此输入图像描述

有谁知道可能的原因并解决这个问题?

java eclipse selenium selenium-webdriver

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

使用 Selenide 获取元素列表

我试图在网站上找到一个元素并获取所有元素。为此,我使用硒化物/硒。我正在寻找的元素无法由一个类定位,因此我尝试定位具有两个类(父类和子类)的元素。仅使用 Selenide,我就可以使用以下方法轻松定位元素:

SelenideElement basketIcon = $(By.className("buttons")).$(byClassName("btn-cart"))

这肯定会给我一个元素。但是我怎样才能找到一个元素数组呢? List<SelenideElement> productName1 = WebDriverRunner.getWebDriver().findElements(By.className(""));但它不起作用,我也尝试过:List<WebElement> productName = WebDriverRunner.getWebDriver().findElements(By.className("buttons"));但是这里如何添加另一个类来定位元素?$(byClassName("btn-cart"))?或者还有其他方法可以做到这一点吗?

我也尝试过使用ElementsCollection elements = WebDriverRunner.getWebDriver().findElements(By.className(""));但它不起作用......

编辑: 我有一个名为“DriverFactory”的类,用于打开浏览器:

public static void openBrowser(String browserName, String url) throws Exception {
    
        WebDriverManager.chromedriver().browserVersion(chromeversion).setup();
        Configuration.browser = "Chrome";
        Configuration.startMaximized = true;
        driver.get(url);
    }
Run Code Online (Sandbox Code Playgroud)

另一个类,我在其中定义定位器:

public class EE_MonitorCategoryElements extends DriverFactory {


protected static List<WebElement> productName = getWebDriver().findElements(By.id("asddsa"));
}
Run Code Online (Sandbox Code Playgroud)

和一个测试类:

@Test
public void ads() throws Exception {
    DriverFactory.openBrowser("Chrome", "https://google.ge");
}
Run Code Online (Sandbox Code Playgroud)

当我使用“getWebDriver()”添加最后一个元素定位器并且我尝试运行测试时,它给了我一个错误:没有绑定测试,并且在我删除/注释 getWebDriver 行的地方,它正在工作

java selenium intellij-idea css-selectors selenide

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