我正在尝试从 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/