写入scrap的csv文件

发布于 2021-01-29 16:00:48

我想写到csv文件中

 for rss in rsslinks:
  item = AppleItem()
  item['reference_link'] = response.url
  base_url = get_base_url(response)
  item['rss_link'] = urljoin_rfc(base_url,rss)
  #item['rss_link'] = rss
  items.append(item)
  #items.append("\n")
 f = open(filename,'a+')    #filename is apple.com.csv
 for item in items:
    f.write("%s\n" % item)

我的输出是这样的:

{'reference_link': 'http://www.apple.com/'
 'rss_link': 'http://www.apple.com/rss '
{'reference_link': 'http://www.apple.com/rss/'
 'rss_link':   'http://ax.itunes.apple.com/WebObjects/MZStore.woa/wpa/MRSS/newreleases/limit=10/rss.xml'}
{'reference_link': 'http://www.apple.com/rss/'
 'rss_link':  'http://ax.itunes.apple.com/WebObjects/MZStore.woa/wpa/MRSS/newreleases/limit=25/rss.xml'}

我想要的是这种格式:

reference_link               rss_link  
http://www.apple.com/     http://www.apple.com/rss/
关注者
0
被浏览
48
1 个回答
  • 面试哥
    面试哥 2021-01-29
    为面试而生,有面试问题,就找面试哥。

    你需要

    1. 写下标题行;然后
    2. 编写每个对象的条目行。

    您可以这样处理:

    fields = ["reference_link", "rss_link"] # define fields to use
    with open(filename,'a+') as f: # handle the source file
        f.write("{}\n".format('\t'.join(str(field) 
                                  for field in fields))) # write header 
        for item in items:
            f.write("{}\n".format('\t'.join(str(item[field]) 
                                  for field in fields))) # write items
    

    请注意,"{}\n".format(s)给出的结果与相同"%s\n" % s



知识点
面圈网VIP题库

面圈网VIP题库全新上线,海量真题题库资源。 90大类考试,超10万份考试真题开放下载啦

去下载看看