我正在使用python2.7并運作一個正常的抓取任務。我想用一個CSV來存儲資料之間的擦傷。在
目前我正在從一個CSV檔案中讀取資料,逐行寫入另一個CSV檔案,然後删除并重命名這些檔案:reader = pd.read_csv('temp1.csv')
reader.set_index('id', inplace=True)
writer = csv.DictWriter(open('temp2.csv', 'wb'), fieldnames=['id', 'links'])
writer.writeheader()
for i, row in reader.iterrows():
# Check if data is already in CSV, if not scrape it.
try:
links = df_links.ix[row['id']]['links']
except KeyError:
links = do_scrape(row['id'])
if links:
df.set_value(i, 'pubmed_links', links)
# Write data out to new CSV file.
writer.writerow({'id': row['id'], 'links': links})
os.remove('temp1.csv')
os.rename('temp2.csv', 'temp1.csv')
有更好的辦法嗎?具體地說,我是否可以直接将任何新資料添加到現有檔案中,而不必建立和删除檔案,并且可以安全地在網絡中途中斷時不會丢失一半檔案?在
我隻知道添加行,但我不知道如何添加新行。在
謝謝!在