2017-05-31 1 views
0

私は運がない指定されたフォルダにファイルを書き込むために以下のコードを取得しようとしています。他のファイルでも同様のコードが動作するので、インポートされた 'glob'パッケージ/関数のエラーと思われますが、わかりません。私は中間の 'do stuff'コードにエラーがないので、それは問題だとは思わないことに注意してください。Python APschedulerとディレクトリ内の最新のCSVのファイルパスを返す

#Import Stuff 
import pandas as pd 
import os 
#Import apscheduler and related packages 
import time 
from apscheduler.schedulers.background import BackgroundScheduler 
from apscheduler.triggers.interval import IntervalTrigger 

def process_ZN_ES_comb_LL_15M_csv(path_to_csv): 
    # Open ZN_ES_comb and customize 


    filename2 = max(glob.iglob("C:\Users\cost9\OneDrive\Documents\PYTHON\Daily Tasks\ZN_ES\ZN_ES_15M\CSV\Beta\*.csv")) 
    ZN_ES_comb_LL_15M = pd.read_csv(filename2) 
    #Do stuff, no errors given 

#Send to csv automatically 
    ZN_ES_comb_LL_15M.to_csv(path_to_csv.replace('.csv', '_modified_{timestamp}.csv').format(
     timestamp=time.strftime("%Y%m%d-%H%M%S")), index=False) 

if __name__ == '__main__': 
    path_to_csv = "C:\Users\cost9\OneDrive\Documents\PYTHON\Daily Tasks\ZN_ES\ZN_ES_15M\CSV\Lead_Lag\ZN_ES_comb_LL_15M.csv" 
    scheduler = BackgroundScheduler() 
    scheduler.start() 
    scheduler.add_job(func=process_ZN_ES_comb_LL_15M_csv, 
         args=[path_to_csv], 
         trigger=IntervalTrigger(seconds=60)) 
    # Wait for 7 seconds so that scheduler can call process_csv 3 times 
    time.sleep(7) 

本来、私はapschedulerに以下のフォルダにファイルを自動的に書き込ませていますが、何も表示されません。さらに、別のフォルダから 'glob'パッケージを使ってファイルを特定し、そのファイルを#do stuff行にビルドする必要があります。だから私はファイル名2行にいくつかの問題があると思うのですが、わかりません。どんな助けもありがとう!

答えて

0

ファイル名2行には二重引用符"を使用してください。私が飛び出しているのは、ファイルパス "Daily Tasks"の空白で、二重引用符を使用するとこの問題を解決できます。

+0

こんにちは、そんな運はありません。私は "Daily Tasks"で同じように動作している別のファイルを持っています...フォルダ内の最新のCSVファイルは参照しませんが、明示的にはそうしません。 'glob'行ではあるが確実ではない。編集:私はまた、二重括弧に変更、更新されました。 –

関連する問題