2017-06-27 8 views
0
from ftplib import FTP 
import socket 

ftp = FTP('***.*.***.***') 
ftp.login(user='someusername',passwd='somepassword') 
ftp.cwd('fcst') // this is a subfolder on the ftp.No error here 
i=4 
filename='C:\Users\user\Desktop\INTERNSHIP\SOLAR_DADRI\data.xlsx' 
localfile=open(filename,'wb') 
while(i<7): 
     j=1 
     while(j<10): 
      fileName='dadfrcst0'+str(j)+'0'+str(i)+'r2.xlsx' 
      j=j+1 
      ftp.retrbinary('RETR '+fileName,localfile.write,1024) 


     i=i+1 
ftp.close() 
localfile.close() 

私はFTPサーバーからファイルを取得して1つのExcelファイルに書き込もうとしていました。基本的にはすべてのファイルが同じ形式で追加されたいので、私はtimeseries解析を行いたいと思います。ftpサーバーからファイルを取得し、すべてを1つのExcelファイルに追加します。

また、サーバー上のすべてのファイルがExcel形式であることはわかっています。私は取得するために使用した正規表現で指定された日付と異なるファイルを使用しています.i.e 'dadrfcst0104r2.xlsx'は4月1日のデータを意味します。

私はコードを実行すると、ファイルサイズが大きいことがわかります。開いたときにエラーが表示され、最初の4月データのみが表示されます。ループは正しいです。そこにエラーはありません。助けてください。

+0

このように 'xlsx'ファイルを追加することはできません。 –

+0

[3つのファイルを連結するにはどうすればいいですか?](xlsx pythonを使用していますか?)(https://stackoverflow.com/questions/15793349/how-to-concatenate-three-excels-files-xlsx-using-python) –

+0

またはCSVのような別の(より単純な)形式。 –

答えて

-1

ファイルを.txtファイルとして追加することはできません。 まあ、それは私はファイルを開いて、テーブルを作成するために、Excelでそれを処理し、私はその後

import datetime 

today = datetime.datetime.today() 
f = open(today.strftime("/home/pi/%Y/%b/%d-%b-%Y.txt"), "a") #Append mode 
f.write(str(today.strftime("%d-%b-%Y, %H:%M,"))) #Date an hour of event 
f.write(str(pressure)+",") 
f.write(str(temperature)+",") 
f.write(str(humidity)+",") 
f.write(str(energy)+",")      #CSV format 
f.close() #Close file 

私のスクリプトのいずれかで行う方法です。あまりプロフェッショナルではなく、初心者としての意見

関連する問題