【发布时间】:2016-01-07 04:24:14
【问题描述】:
我正在尝试将 xml 文件转换为 csv 文件,我尝试了 bash script awk ,xmlstarlet 但没有运气,现在我在 python 中尝试这个但仍然没有运气, 下面是我的示例 xml 文件
<items><item>
<Name>demo title 1</Name>
<FileType>image</FileType>
<ReleaseDate>15 May 2015</ReleaseDate>
<Quality>
HDRiP</Quality>
<size>2848292</size>
<Rating>6.6</Rating>
<Genre>Comedy,
Music</Genre>
<Cast>rules bank demo,
anademo demo 2,
Hai demo 3,
Ale Demo 4</Cast>
<Languages>English</Languages>
<Subtitles>
hindi</Subtitles>
<FileName>demo title 1 fname</FileName>
<FileSize>1.4GB</FileSize>
<NoOfFiles>5</NoOfFiles>
<UploadTime>4 months</UploadTime>
<DateOfDataCapture>May 29, 2015</DateOfDataCapture>
<TimesDownloaded>2,339</TimesDownloaded>
<UpVotes>+742</UpVotes>
<DownVotes>-37</DownVotes>
<MediaType>[1080p, 720p, Blu-Ray, BDRip, HDRiP, DVD, DVDRip, x264, WEB-DL, Cam]</MediaType>
<Summary>this is demo pics
collected for wallpapers only it is free available on many app and urls.
Written by
demo1.Cdemo324.78K
report summary</Summary>
</item><item>
<Name>demo title 2</Name>
<FileType>image</FileType>
<ReleaseDate>16 May 2015</ReleaseDate>
<Quality>
HDRiP</Quality>
<size>2855292</size>
<Rating>6.9</Rating>
<Genre>Comedy,
Music</Genre>
<Cast>rules bank demo,
anademo demo 12,
Hai demo 13,
Ale Demo 14</Cast>
<Languages>English</Languages>
<Subtitles>
hindi</Subtitles>
<FileName>demo title 2 fname</FileName>
<FileSize>1.3GB</FileSize>
<NoOfFiles>5</NoOfFiles>
<UploadTime>4 months</UploadTime>
<DateOfDataCapture>May 29, 2015</DateOfDataCapture>
<TimesDownloaded>2,339</TimesDownloaded>
<UpVotes>+742</UpVotes>
<DownVotes>-37</DownVotes>
<MediaType>[1080p, 720p, Blu-Ray, BDRip, HDRiP, DVD, DVDRip, x264, WEB-DL, Cam]</MediaType>
<Summary>this is demo pics 2
collected for wallpapers only it is free available on many app and urls.
Written by
demo2.C2demo324.78K
report summary</Summary>
</item>
</items>
i want convert into csv file and each <item> records should be in same line ,
when i am trying to use xml parser , it is converted records into csv file but issue is my tag values in multiple line and also contain new line character so it is converted csv in same way like
below is sample csv file converted.
demo title 1,image,15 May 2015,
HDRiP,
2848292,6.6,Comedy,
Music,rules bank demo,
anademo demo 2,
Hai demo 3,
Ale Demo 4,English
i want it new line character should be replace by space so all records of single items saved in one row in csv file .
我也尝试了 python xml 解析器 xml2csv,但没有运气,请建议我如何读取 xml 文件并用空格删除这些不需要的换行符。
【问题讨论】:
标签: xml bash python-2.7 csv