使用相同的根和行标记在pyspark中读取xml

relj7zay  于 2021-05-27  发布在  Spark
关注(0)|答案(0)|浏览(284)

这是xml文件的一部分,具有所有必要的深度:

<?xml version="1.0" encoding="UTF-8" ?>
<Taxonomy>
    <TaxonomyNode>
        <Entity>BUSINESS</Entity>
        <Description>Business News</Description>
        <TaxonomyNode>
            <Entity>COS</Entity>
            <Description>Company News</Description>
            <TaxonomyNode>
                <Entity>ANA</Entity>
                <Description>Analyst Ratings &amp; Commentary</Description>
                <TaxonomyNode>
                    <Entity>ANABUY</Entity>
                    <Description>Analyst Ratings - Buys</Description>
                    <TaxonomyNode>
                        <Entity>ANABEVT</Entity>
                        <Description>Analyst Ratings Events, Announcements - Buys</Description>
                    </TaxonomyNode>
                    <TaxonomyNode>
                        <Entity>BMRANABUY</Entity>
                        <Description>Analyst Ratings - Buys</Description>
                        <TaxonomyNode>
                            <Entity>ANRACC</Entity>
                            <Description>ANR Accumulate</Description>
                        </TaxonomyNode>
                    </TaxonomyNode>
                </TaxonomyNode>
           </TaxonomyNode>
       </TaxonomyNode>
   </TaxonomyNode> 
</Taxonomy>

正如您所看到的,我们有多个同名的行,用spark和常规的 spark.read.format("com.databricks.spark.xml").option("rowTag","TaxonomyNode").load(completeXMLFilePath) 不起作用,它将返回一个如下所示的Dataframe:

它有这样一个模式:

如果有人能想出办法让这件事成功,我会很感激的

暂无答案!

目前还没有任何答案,快来回答吧!

相关问题