如何将产品信息导出到csv并创建6列?(python,csv)

时间:2018-02-08 12:24:55

标签: python csv selenium amazon scrape

我使用selenium创建了一个python程序,我想将信息导出到csv并创建6列(产品标题,产品价格,产品重量, 产品尺寸,产品ASIN,购物车中的商品)。前5个产品信息来自第一个亚马逊页面,第6个信息来自购物车页面。现在我打印前5列并将第6列导出到csv但是我想用这些产品信息创建一个包含所有这6列的csv。我附上了代码。我将不胜感激。

 def search(self, query):
     return self.get_queryset().filter(
         models.Q(name__icontains=query) | \
         models.Q(description__icontains=query)
     )

 class Cad_component(models.Model):
   title = models.CharField('Title', max_length=100)
   slug = models.SlugField('Link')
   description = models.TextField('Description', blank=True)
   start_date = models.DateField('Data: ', null=True, blank=True)
   image = models.ImageField(upload_to='img', verbose_name='Imagem', null=True, blank=True)

created_at = models.DateTimeField('Criado em ', auto_now_add=True)
updated_at = models.DateTimeField('Atualizado em', auto_now=True)

objects = ComponentManager()

def __str__(self):
    return self.title

1 个答案:

答案 0 :(得分:2)

如果您只输出一个标题行和一行特征,则最简单的方法是将每个标题创建为一个列表。例如:

header = ['Product Title', 'Product Price', 'Product weight', 'Product dimension', 'Product ASIN', 'Items in cart']

并按照您所描述的索引

data = [prod_title[0], prod_price[0], prod_weight[1], prod_dimension[1], prod_asin[1], items_in_cart[1]]

你可以这样写这些结果:

with open(csvfile, "w") as output:
    writer = csv.writer(output)
    writer.writerow(header)
    writer.writerow(data)