Python爬虫储存库的使用之CSV
本文主要介绍储存库 CSV 的使用。
CSV 简介
CSV(Comma-Separated Values),逗号分隔值,或字符分隔值,以纯文本形式储存表格数据。一个CSV文件的内容如下:
1 2 3 4
| id,name,age 0,foo,10 1,bar,11 2,foobar,100
|
Python 写 CSV
列表写入 CSV
1 2 3 4 5 6 7 8
| import csv
d = [['0', 'foo', '10'], ['1', 'bar', '11'], ['2', 'foobar', '100']] with open('data.csv', 'w') as csvfile: writer = csv.writer(csvfile) writer.writerow(['id', 'name', 'age']) writer.writerows(d)
|
⚠️【注意】写中文的时候,要在open的时候传入 encoding='utf-8'
,防止乱码。
字典写入 CSV
1 2 3 4 5 6 7
| import csv
with open('data.csv', 'w') as csvfile: fieldnames = ['id', 'name', 'age'] writer = csv.DictWriter(csvfile, fieldnames=fieldnames) writer.writeheader() writer.writerow({'id': '9', 'name': 'fuzz', 'age': '666'})
|
Python 读 CSV
用 CSV库 读取
1 2 3 4 5 6
| import csv
with open('data.csv', 'r', encoding='utf-8') as csvfile: reader = csv.reader(csvfile) for row in reader: print(type(row), row)
|
从结果中可以看到,读取出来的是各行的list。
用 Pandas库 读取
1 2 3 4 5
| import pandas as pd
df = pd.read_csv('data.csv') print(df) print(type(df))
|