Python :: Aufgabe #43 :: Lösung #1
2 Lösungen

#43
Aktuellen Aktienkurs auslesen und ausgeben
Fortgeschrittener - Python
von Gustl
- 08.11.2013 um 19:57 Uhr
Schreibe ein Konsolenprogramm welches den aktuellen Aktienkurs von eine Aktien deiner Wahl ausgibt.
Benutze hierfür eine API. Als kleine Anregung: yahoo finance API
Benutze hierfür eine API. Als kleine Anregung: yahoo finance API
#1

von jigga (4260 Punkte)
- 12.06.2015 um 22:12 Uhr

import sys, urllib.request #Zaehler fuer eine schoene Ausgabe zaehler = 0 #Dictionary mit allen 30 Dow Jones Unternehmen dic = {"MMM":"3M", "AXP":"American Express", "AAPL":"Apple", "BA":"Boeing", "CAT":"Caterpillar", "CVX":"Chevron", "CSCO":"Cisco Systems", "KO":"Coca-Cola", "DFT":"DuPont", "XOM":"Exxon Mobil", "GE":"General Electric", "GS":"Goldman Sachs", "HD":"Home Depot", "IBM":"IBM", "INTC":"Intel", "JNJ":"JohnsonJohnson", "JPM":"JPMorgan", "MCD":"McDonalds", "MRK":"MerckCo", "MSFT":"Microsoft", "NKE":"Nike", "PFE":"Pfizer", "PG":"ProcterGamble", "TRV":"Travelers Companies", "UTX":"United Technologies", "UNH":"UnitedHealth Group", "VZ":"Verizon", "V":"Visa", "WMT":"Wal-Mart", "DIS":"Walt Disney", } #Auflistung der Dow Jones Unternehmen print(60*"-") for key in sorted(dic, key=dic.get): print("{0:25}".format(dic[key]), end=' ') zaehler += 1 if zaehler % 2 == 0 or zaehler == 29: print() print(60*"-") while True: index = 0 suche_name = input("Fuer den aktuellen Aktienkurs bitte eins auswaehlen: ") for abkuerzung, name in dic.items(): if name == suche_name: index = abkuerzung try: datei = urllib.request.urlopen(str("http://download.finance.yahoo.com/d/quotes.csv?s=@^DJI,") + index + str("&f=l1&e=.csv")) except: print("Flasche Eingabe oder Boese down.") continue text = datei.read() datei.close() kurs = ''.join(chr(text[i]) for i in range(0,len(text)-1)) print("Akuteller Aktienkurs von", suche_name, "in $:", kurs) nochmal = input("Nochmal (j/n): ") if nochmal == 'j' or nochmal == 'J': continue else: break
Kommentare:
Für diese Lösung gibt es noch keinen Kommentar
Seite 1 von 0
1