-1
我目前正在一週中使用非常錯誤的互聯網服務,同時試圖爲一個項目提供在線數據。特別是,我正在訪問URL列表中的每個URL,並從每個網站中抓取特定的一段數據以放入CSV中。網址列表相當龐大(33,000多個網址),而且我發現在互聯網停機時我很難找到離開的地方。有沒有辦法快速做到這一點?這裏是我的:如何在特定的行#之後將行寫入文本文件?
def makeCSV(csv_src):
#END_TOKEN = " __END__ENTRY__"
with open(new_src, 'r') as f, open(csv_src, 'a') as fcsv:
count = 40
for i, url in enumerate(f):
while i >= count and count < len(f.readlines()):
count += 1
wr = csv.writer(fcsv, quoting=csv.QUOTE_ALL)
speaking, studying, entry, incorrect, correct = mineLearnerData(url)
data = [speaking, studying, incorrect, correct]
wr.writerow(data)
#f2.write(str(entry + END_TOKEN) + '\n')
print(count)
f.close(); fcsv.close()
'f'表示我正在使用的URL文件。我正在將該文件中的URL的特定信息發送到指定的CSV文件路徑。 'Count'表示要查看的下一個URL。理想情況下,我也想能夠使用行len(fcsv.readlines()),但我不斷收到ascii錯誤。
另外,由於我對數據收集&清潔過程完全陌生,因此我願意提供有關有效方法的建議。
有時,讀取所有行到內存,添加新行並將所有行寫入文件會更加容易。 – furas