1. 程式人生 > >python爬蟲CSV檔案的使用

python爬蟲CSV檔案的使用

一,語法 1.讀:reader = csv.reader(csvFile) # 返回的是迭代型別 2.寫:writer = csv.writer(csvFile2) 二,例項 (1)

import csv
import json


def f1():
    with open("./files/mycsv.csv","w",encoding="utf-8") as file:
        csv_writer = csv.writer(file)
        csv_writer.writerow(["sid","sname","sage"])
        csv_writer.writerows([[1,"a",20],[2,"a",20],[3,"a",20]])

def f2():
    with open("./files/tecent.json","r",encoding="utf-8") as file:
       content = json.load(file)
       keys = content[0].keys()
       values = [i. values() for i in content]

    with open("./files/tecent.csv", "w", encoding="utf-8") as file:
        csv_writer = csv.writer(file)
        csv_writer.writerow(keys)
        csv_writer.writerows(values)

def f3():
    pass


if __name__ == '__main__':
    #f1()
    f2()

開啟的的時候要選擇合適的格式,負責會有亂碼

(2)

# coding:utf-8
import csv
# 讀取csv檔案方式1
csvFile = open("csvData.csv", "r")
reader = csv.reader(csvFile) # 返回的是迭代型別
data = []
for item in reader:
  print(item)
  data.append(item)
print(data)
csvFile.close()
# 讀取csv檔案方式2
with open("csvData.csv", "r") as csvfile:
  reader2 = csv.reader(csvfile) # 讀取csv檔案,返回的是迭代型別
  for item2 in reader2:
    print(item2)
csvFile.close()
# 從列表寫入csv檔案
csvFile2 = open('csvFile2.csv','w', newline='') # 設定newline,否則兩行之間會空一行
writer = csv.writer(csvFile2)
m = len(data)
for i in range(m):
  writer.writerow(data[i])
csvFile2.close()
# 從字典寫入csv檔案
dic = {'張三':123, '李四':456, '王二娃':789}
csvFile3 = open('csvFile3.csv','w', newline='')
writer2 = csv.writer(csvFile3)
for key in dic:
  writer2.writerow([key, dic[key]])
csvFile3.close()