2017-06-22 10 views
0

ページcnn rss(http://rss.cnn.com/rss/edition.rss)をXMLファイルに変換する必要があります。タグでフィルタリングする必要があります:title、link、pubDate、そして結果をcsvファイルにエクスポートします。ファイルrssをPythonでxmlに変換するには?

私はコードを試していますが、結果はpubDateを省略しているため動作しません。

私はこのコードを使用

# Python code to illustrate parsing of XML files 
# importing the required modules 
import csv 
import requests 
import xml.etree.ElementTree as ET 
def loadRSS(): 
# url of rss feed 
url = 'http://rss.cnn.com/rss/edition.rss' 
# creating HTTP response object from given url 
resp = requests.get(url) 
# saving the xml file 
with open('topnewsfeed.xml', 'wb') as f: 
f.write(resp.content) 
def parseXML(xmlfile): 
# create element tree object 
tree = ET.parse(xmlfile) 
# get root element 
root = tree.getroot() 
# create empty list for news items 
newsitems = [] 
# iterate news items 
for item in root.findall('./channel/item'): 
# empty news dictionary 
news = {} 
# append news dictionary to news items list 
newsitems.append(news) 
# return news items list 
return newsitems 
def savetoCSV(newsitems, filename): 
# specifying the fields for csv file 
fields = ['title', 'pubDate', 'description', 'link', 'media'] 
# writing to csv file 
with open(filename, 'w') as csvfile: 
# creating a csv dict writer object 
writer = csv.DictWriter(csvfile, fieldnames=fields) 
# writing headers (field names) 
writer.writeheader() 
# writing data rows 
writer.writerows(newsitems) 
def main(): 
# load rss from web to update existing xml file 
loadRSS() 
# parse xml file 
newsitems = parseXML('topnewsfeed.xml') 
# store news items in a csv file 
savetoCSV(newsitems, 'topnews.csv') 
if __name__ == "__main__": 
# calling main function 
main() 

私はパラメータを設定するためにしようと試み、その結果がこれです:

CNNは、例えば、redditのために、ウェブ形式としてではないXMLとしてRSSを表示:

この情報の入手方法については、問題は、問題の一部である可能性があります含まれていないことpubDateのであれば、

+1

私はあなたの投稿の書式を見れば、多くの助けになると思います。 – Scheme

答えて

1

あなたが言及したRSSフィードのXMLエントリは、資本D.

pubdate、ないpubDateです。

+0

OK、このコードには2つの部分があり、最初の部分はxmlを保存し、2番目の部分はこのXMLで作業し、この情報を含むCSVファイルを作成します。この瞬間に私はXMLを作成することができますが、私はCSVファイルを作成する際にエラーが発生します。 – aaguirre

関連する問題