如何处理从维基词典下载的大型xml

问题描述 投票:0回答:1

我从维基词典下载了文件

enwiktionary-20231101-pages-articles.xml
,但不幸的是它似乎没用,因为我无法打开它。数据大小约为8GB。我尝试了 VSCode,但不起作用。我在 Java 中尝试了这个剪裁,但不起作用。

  try {
            DocumentBuilderFactory factory = DocumentBuilderFactory.newInstance();
            DocumentBuilder builder = factory.newDocumentBuilder();
            Document document = builder.parse("src/main/resources/enwiktionary-20231101-pages-articles.xml");

            // Access elements and data from the XML
            NodeList nodeList = document.getElementsByTagName("page");
            System.out.println(nodeList.getLength());
            
//            for (int i = 0; i < nodeList.getLength(); i++) {
//                Node node = nodeList.item(i);
//                System.out.println(node);
//                break;
//            }
        } catch (Exception e) {
            e.printStackTrace();
        }

我发现这个链接就像上面文件的替代品。 https://dictionaryapi.dev/,可以省去我处理XML格式的很多功夫。 我目前唯一关心的是获取单词列表,因此我可以通过上面的链接下载它们。你知道如何实现这一目标吗?谢谢!

xml wiki
1个回答
0
投票

您需要使用流技术(一种不在内存中构建树的技术)。通常的候选者是 Java SAX 处理、Python ElementTree 或 Streaming XSLT 3.0。

© www.soinside.com 2019 - 2024. All rights reserved.