CSV文件

CSV文件:Comma-Separated Values,中文叫,逗号分隔值或者字符分割值,其文件以纯文本的形式存储表格数据。该文件是一个字符序列,可以由任意数目的记录组成,记录间以某种换行符分割。每条记录由字段组成,字段间的分隔符是其他字符或者字符串。所有的记录都有完全相同的字段序列,相当于一个结构化表的纯文本形式。
用文本文件、EXcel或者类似与文本文件的都可以打开CSV文件。

在爬虫中,可以把数据写入CSV文件,示例如下:

import csv #需要导入库
with open('data.csv','w') as fp:
    writer = csv.writer(fp)#先传入文件句柄
    writer.writerow(['id','name','age'])#然后写入
    writer.writerow(['10001','mike','20'])#按行写入
    writer.writerow(['10002','Bob','22'])
    writer.writerow(['10003','Jordan','21'])
写入后的文件

如果想修改列与列之间的分隔符,传入delimiter参数:

import csv #需要导入库
with open('data.csv','w') as fp:
    writer = csv.writer(fp,delimiter = '*')#delimiter只能是一个字节的字符
    writer.writerow(['id','name','age'])#然后写入
    writer.writerow(['10001','mike','20'])#按行写入
    writer.writerow(['10002','Bob','22'])
    writer.writerow(['10003','Jordan','21'])
传入delimiter参数用*分割

也可以先写标题,在写数据:
注意:数据是一个列表,并且用writerows()方法

writerows([ ])

一般情况下,爬虫的数据以字典居多:

import csv
with open('data.csv','w') as fp:
    fieldnames = ['id','name','age']  #先定义字典里的key
    #用DictWriter()方法,增加一个fieldnames
    writer = csv.DictWriter(fp,fieldnames  = fieldnames,delimiter = '+') 
    writer.writeheader()#先写入key
    #按照字典的方式写入
    writer.writerow({ 'id':'10001','name':'mike','age':'20'})
    writer.writerow({ 'id':'10002','name':'Bob','age':'22'})
    writer.writerow({ 'id':'10003','name':'Jordan','age':'21'})
结果

读取CSV文件由两种方式:
(1)第一种

import csv
with open('data.csv','r',encoding = 'utf8') as fp:
    reader = csv.reader(fp)
    for row in reader:
        print(row)

(2)第二种

import pandas as pd #需要导入pandas库
df = pd.read_csv('data.csv')
print(df)
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • CSV 文件格式 描述 逗号分隔值(Comma-Separated Values,CSV,有时成为字符分隔值)。 ...
    ZONE画派阅读 11,705评论 1 1
  • 1 本文适合读者 刚开始学习Pandas的新手 2 环境 Python 3.7.0Pandas 0.23.4Num...
    渐悟懂劲阅读 4,603评论 0 2
  • 一、生成CSV文件 1、主要函数: fputcsv—将行格式化为 CSV 并写入文件指针 int fputcsv ...
    四月不见阅读 911评论 0 1
  • CSV(来源于百度百科) 逗号分隔值(Comma-Separated Values,CSV,有时也称为字符分隔值,...
    RJzz阅读 5,092评论 0 1
  • 真他妈笑出了声 自己是什么样的人自己心里没个数么 哈哈哈 觉得自己这种信用还能借到钱??真是搞笑呢
    44小丫阅读 247评论 0 0