将python数据导出到csv文件 [英] export python data to csv file

查看:1907
本文介绍了将python数据导出到csv文件的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我要通过命令行导出我的文件:

I'm trying to export my file via command line :

scrapy crawl tunisaianet -o save.csv -t csv

但没有发生任何事情,任何帮助?

but nothing is happenning, any help?

这是我的代码:

import scrapy
import csv
from tfaw.items import TfawItem


class TunisianetSpider(scrapy.Spider):
    name = "tunisianet"
    allowed_domains = ["tunisianet.com.tn"]
    start_urls = [
        'http://www.tunisianet.com.tn/466-consoles-jeux/',
    ]

    def parse(self, response):
        item = TfawItem()
        data= []
        out = open('out.csv', 'a')
        x = response.xpath('//*[contains(@class, "ajax_block_product")]')
        for i in range(0, len(x)):
            item['revendeur'] = response.xpath('//*[contains(@class, "center_block")]/h2/a/@href').re('tunisianet')[i]
            item['produit'] = response.xpath('//*[contains(@class, "center_block")]/h2/a/text()').extract()[i]
            item['url'] = response.xpath('//*[contains(@class, "center_block")]/h2/a/@href').extract()[i]
            item['description'] = response.xpath('//*[contains(@class, "product_desc")]/a/text()').extract()[i]
            item['prix'] = response.xpath('//*[contains(@class, "price")]/text()').extract()[i]
            data = item['revendeur'], item['produit'], item['url'], item['description'], item['prix']
            yield data
            out.write(str(data))
            out.write('\n')


推荐答案

我假设你得到这些错误:

I assume you are getting these errors:

ERROR: Spider must return Request, BaseItem, dict or None, got 'tuple' in <GET http://www.tunisianet.com.tn/466-consoles-jeux>

它特别说明了什么问题,你返回元组作为项目, p>

which specifically says what's wrong, you are returning tuples as items, change your yield code to:

...
item['prix'] = response.xpath('//*[contains(@class, "price")]/text()').extract()[i]
yield item

这篇关于将python数据导出到csv文件的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆