一尘不染

阅读selenium中的PDF:构造函数PDFParser(BufferedInputStream)未定义

selenium

我遇到错误

构造函数PDFParser(BufferedInputStream)未定义

我正在尝试使用Selenium阅读PDF内容。

WebDriver driver=new FirefoxDriver();
driver.get("http://www.axmag.com/download/pdfurl-guide.pdf");
URL TestURL = new URL("http://www.axmag.com/download/pdfurl-guide.pdf");
BufferedInputStream TestFile = new BufferedInputStream(TestURL.openStream());
PDFParser TestPDF = new PDFParser(TestFile);
TestPDF.parse();
String TestText = new PDFTextStripper().getText(TestPDF.getPDDocument());
System.out.println(TestText);
Assert.assertTrue(TestText.contains("Open the setting.xml, you can see it is like this"));

谁能帮忙吗?


阅读 278

收藏
2020-06-26

共1个答案

一尘不染

我遇到了与您同样的问题。问题是由于使用(Apache PDFBox 2.0.0 API)jar文件。从构建路径中删除它们,并使用(Apache PDFBox
1.8.11 API),因为2.0中的PDFParser类没有PDFParser(BufferedInputStream
args)构造函数。但是1.8具有PDFParser(InputStream args)构造函数。因此,它将一定可以解决您的问题。

我还将分享我的代码。如果您需要帮助,可以从中获取帮助。

InputStream is = new FileInputStream(getLatestFile);
        PDFParser parser = new PDFParser(is);
        parser.parse();
        String output=new PDFTextStripper().getText(parser.getPDDocument());
        System.out.println(output);
        parser.getPDDocument().close();
2020-06-26