gpt4 book ai didi

java - 解析PDF文件时出现问题

转载 作者:行者123 更新时间:2023-12-01 19:21:32 25 4
gpt4 key购买 nike

我使用 htmlparser 1.6 来解析网站。

问题是,当我解析 pdf 网站时,我在输出文件中获得奇怪的字符,例如

ØÇÁÖÜ/:?ÖQØ?WÕWÏ

这是我的代码片段:

try {
parser = new Parser ();

if (1 < args.length)
filter = new TagNameFilter (args[1]);
else
{
filter = null;
parser.setFeedback (Parser.STDOUT);
Parser.getConnectionManager ().setMonitor (parser);
}

Parser.getConnectionManager ().setRedirectionProcessingEnabled (true);
Parser.getConnectionManager ().setCookieProcessingEnabled (true);

// Here the pdf web site
parser.setResource ("http://hal.archives-ouvertes.fr" +
"/docs/00/16/76/78/PDF /27_Bendaoud.pdf");

NodeList list = parser.parse(filter);
NodeIterator i = list.elements ();

while (i.hasMoreNodes ())
processMyNodes(i.nextNode ());
}
catch (EncodingChangeException ece) {
try {
parser.reset ();
NodeList list = parser.parse(filter);

for (NodeIterator i = list.elements (); i.hasMoreNodes (); )
processMyNodes (i.nextNode ());

}
catch (ParserException e) {
e.printStackTrace ();
}
}
catch (ParserException e) {
e.printStackTrace ();
}

更新:

我使用 iText 来解析 PDF 文件。它在本地文件上运行良好,但我想解析托管在 Web 服务器中的 PDF 文件,例如这个:

http://protege.stanford.edu/publications/ontology_development/ontology101.pdf"

如何使用 iText 或其他库完成此任务?

最佳答案

线索就在名字中 - HTMLParser解析 HTML。 HTML 看起来像这样:

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
"http://www.w3.org/TR/html4/loose.dtd">
<html>
<head><title>SimonJ's homepage</title></head>
<body>...</body>
</html>

PDF 不是 HTML - 在其原始形式中,它们看起来像这样:

%PDF-1.5^M%<E2><E3><CF><D3>1 0 obj<</Contents 3 0 R/Type/Page/Parent 121 0
R/Rotate 0/MediaBox[0 0 419.528015 595.276001]/CropBox[0 0 419.528015
595.276001]/Resources 2 0 R>>^Mendobj^M2 0 obj<</ColorSpace<</Cs6 132 0 R>>
/Font<</F3 102 0 R/F4 105 0 R>>/ProcSet[/PDF/Text]/ExtGState<</GS1 134 0
R>>>>^Mendobj^M3 0 obj<</Length 917/Filter/FlateDecode>>stream
H<89><A4><95><DB>r<A3>F^P<86><9F><80>w<E8>K<94>Z<8D><E7><C0><CC>0<97>^X!^E^WF
<8A><C0><9B><B8>\{At2ESC ^\!<EF><96><DF>>= K"<B1>R<9B>Jq<C1><A9>^O_<FF>...

这是相当不同的,因此 HTMLParser 无法应对。如果您想解析 PDF,您可能需要研究类似 iText 的内容。或PDFBox但请注意:PDF 文件格式并不是为轻松提取文本而设计的 - 许多博士生在尝试时已经精疲力竭......

关于java - 解析PDF文件时出现问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4006037/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com