首页 > 解决方案 > 为什么只有第一个字典被写入 csv 文件?

问题描述

我使用IMDbPY库来获取例如 100 部电影信息并将它们存储在 csv 文件中。问题是只有循环中的第一部电影信息会写入 csv 文件。

这是代码:

from imdb import IMDb
import csv
from datetime import datetime

startTime = datetime.now()

ia = IMDb()
movie_id = 2250912

for i in range(1, 101):
    movie = ia.get_movie(movie_id)
    movie_id += i

    print(datetime.now() - startTime)
    print (movie_id)
    print ('\n')

    with open('dict.csv', 'w') as csv_file:
        writer = csv.writer(csv_file)

        for key, value in movie.items():
            writer.writerow([key, value])

标签: pythonpython-3.xfilecsvio

解决方案


您的 with 语句在 while 循环的每次迭代中都会覆盖 csv。使用'a'而不是'w'附加信息。


推荐阅读