java - 使用 Selenium 在网页中搜索文本时如何忽略?

标签 java selenium selenium-webdriver

我正在尝试从 Excel 工作表中获取字符串,并想检查该字符串是否存在于网页中。这是我正在尝试的代码,

public static void main(String[] args) throws IOException {

        System.setProperty("webdriver.chrome.driver",  "driver path");
        WebDriver driver = new ChromeDriver();
        driver.manage().window().maximize();
        driver.manage().timeouts().implicitlyWait(25, TimeUnit.SECONDS);
        driver.get(url);

        String ps = driver.getPageSource();
        File src = new File("excel path\\Data.xlsx");
        FileInputStream fis = new FileInputStream(src);
        XSSFWorkbook wb = new XSSFWorkbook(fis);
        XSSFSheet Sheet1 = wb.getSheetAt(0);
        XSSFRow row = Sheet1.getRow(0);

        for (Row row : Sheet1) {
            String strtext=row.getCell(0).getStringCellValue();
        if(ps.contains(strtext)) {

            System.out.println("TEXT is present");
        }
        else {
            System.out.println("TEXT is not present");
        }
        }

    }

}

使用此代码,我可以从 Excel 工作表中获取文本并检查该文本是否存在于网页中。但我这里有一个问题,网页中的某些文本在文本之间包含  。因此,当我尝试搜索这些文本时,它说即使文本位于网页中,这些文本也不存在,即:例如:如果我的文本是“通过编辑轻松与他人共享和协作”,但在页面源代码中它是就像“通过编辑轻松与他人共享和协作”因此,即使网页中存在文本,它也表示类似文本不存在。我想忽略任何人都可以帮助我吗...

最佳答案

请检查我已经创建的以下项目。其实alt+0160加上xpath的翻译功能可以帮助你解决这个问题。正如您在下面的代码片段中看到的,翻译函数中的第二个参数是 alt+0160。如果您遇到任何问题,请告诉我。

https://drive.google.com/file/d/1W0aoCqEqp-SPBw_NH6IKbF-KQsXDMraH/view

//h3[contains(translate(text(),' ',' ' ), 'App-1 Playground Login')]

关于java - 使用 Selenium 在网页中搜索文本时如何忽略?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/61872674/

相关文章:

java - 如何编写 java 库的 python 包装器

javascript - Capybara 与异步 JavaScript 的集成测试

python - 如何在python中读取selenium webdriver下载的文件

java - 如何在 Jax rs 中运行 localhost url 进行发布

java - 让后台服务始终运行并且不会自杀或系统破坏它

c# - 在不执行脚本的 nUnit 上运行 Selenium 测试

Selenium 如何管理等待页面加载?

selenium - 为什么Selenium占用大量内存

java - JFileChooser,想把它锁定到一个目录

java - 单击 Selenium 2.33 Java 中的隐藏菜单项