Selenium PDF Parser - PullRequest
       12

Selenium PDF Parser

0 голосов
/ 09 сентября 2018

В моем приложении я попаду на одну страницу, там будет текст, и мне нужно открыть PDF на той же странице и сравнить текст в PDF и совпадения на главной странице. Я использую pdfbox -1.8.15

Но когда я запускаю следующий код, получаю это исключение:

Исключение в ветке "main" java.io.IOException: Ошибка: конец файла, ожидаемая строка в org.apache.pdfbox.pdfparser.BaseParser.readLine (BaseParser.java:1523) в org.apache.pdfbox.pdfparser.PDFParser.parseHeader (PDFParser.java:372) в org.apache.pdfbox.pdfparser.PDFParser.parse (PDFParser.java:186) в TestCases.lastpdf.main (lastpdf.java:83)

driver.findElement(By.xpath("//*[@id=\"ctl00_cph_main_rg_QiSummaries_ctl00__0\"]/td[2]/img")).click();

driver.manage().timeouts().implicitlyWait(10, TimeUnit.SECONDS);

String winHandleBefore = driver.getWindowHandle();
for(String winHandle : driver.getWindowHandles()){
    //Switch to child window
    driver.switchTo().window(winHandle);
}
driver.manage().timeouts().implicitlyWait(20, TimeUnit.SECONDS);
URL url = new URL(driver.getCurrentUrl());
System.out.println(url);

driver.manage().timeouts().implicitlyWait(20, TimeUnit.SECONDS);

String mypdftxt;
BufferedInputStream fileToParse = new BufferedInputStream(url.openStream()); 

driver.manage().timeouts().implicitlyWait(20, TimeUnit.SECONDS);
PDFParser parser = new PDFParser(fileToParse);
parser.parse(); // exception occurs here

mypdftxt  = new PDFTextStripper().getText(parser.getPDDocument());

System.out.println(mypdftxt);
...