Als Ergebnis möchte ich eine Ausgabe wie folgt haben:
File for AUDJPY/2017/1 already fetched.
File for AUDJPY/2017/2 already fetched.
File for AUDJPY/2017/3 already fetched.
File for AUDJPY/2017/4 already fetched.
File for AUDJPY/2017/5 already fetched.
Das Logging muß ja in der Schleife aufgerufen werden.
1. wenn die Datei nicht vorhanden, oder beschädigt ist.
2. wenn die Datei schon heruntergeladen wurde.
Der Inhalt des Logfiles sieht so aus:
2017-04-26 17:45:21,064 - Data download - ERROR - HTTP Error 404: Not Found
2017-04-26 17:45:21,140 - Data download - ERROR - HTTP Error 404: Not Found
2017-04-26 17:45:21,215 - Data download - ERROR - HTTP Error 404: Not Found
2017-04-26 17:45:21,300 - Data download - ERROR - HTTP Error 404: Not Found
2017-04-26 17:45:21,381 - Data download - ERROR - HTTP Error 404: Not Found
2017-04-26 17:45:21,470 - Data download - ERROR - HTTP Error 404: Not Found
2017-04-26 17:45:21,559 - Data download - ERROR - HTTP Error 404: Not Found
2017-04-26 17:45:21,636 - Data download - ERROR - HTTP Error 404: Not Found
2017-04-26 17:45:21,736 - Data download - ERROR - HTTP Error 404: Not Found
2017-04-26 17:45:21,823 - Data download - ERROR - HTTP Error 404: Not Found
2017-04-26 17:45:21,921 - Data download - ERROR - HTTP Error 404: Not Found
2017-04-26 17:45:22,006 - Data download - ERROR - HTTP Error 404: Not Found
2017-04-26 17:45:22,086 - Data download - ERROR - HTTP Error 404: Not Found
2017-04-26 17:45:22,179 - Data download - ERROR - HTTP Error 404: Not Found
ERROR - HTTP Error 404: Not Found ist ja richtig. Nur möchte ich wissen welche Datei nicht vorhanden, oder beschädigt ist.
Hier noch einmal die Funktion. So schwer kann das doch nicht sein. Das HOWTO bringt mich nicht weiter, weil ich nicht erkennen kann, wie ich was in der Schleife aufrufe.
Code: Alles auswählen
def fetch_whole_year(symbol, year):
for symbol in symbol:
last_week = datetime.date(year, 12, 31).isocalendar()[1]
for week in range(1, last_week + 1):
try:
if not exists_file(symbol, year, week):
data = pull_file(symbol, year, week)
print_data_length(data)
save_file(symbol, year, week, data)
except Exception as e:
logging.getLogger("Data download").error(e)
else:
print("File for {}/{}/{} already fetched.".format(
symbol, year, week)
)