Börsenkurse runterladen ?

Sockets, TCP/IP, (XML-)RPC und ähnliche Themen gehören in dieses Forum
nofuture
User
Beiträge: 16
Registriert: Montag 31. Juli 2006, 22:59

Man kann mittels des Programms QAccess.com den Datenfeed von Yahoo in Accessdatebank füttern. Damit erleichtert man sich einige Arbeit.
sea-live
User
Beiträge: 440
Registriert: Montag 18. Februar 2008, 12:24
Wohnort: RP

Serrvus da hab ich doch was für den tecdax
alle dateien im verzeichniss wo die daten hinsollen
MAN KANN das .cvs auch durch .txt ersetzen dann erhält man weiterverarbeitbare dateien

Code: Alles auswählen

2beiträge weiter funktionierendes programm
Zuletzt geändert von sea-live am Dienstag 4. März 2008, 18:06, insgesamt 1-mal geändert.
sea-live
User
Beiträge: 440
Registriert: Montag 18. Februar 2008, 12:24
Wohnort: RP

BlackJack hat geschrieben:Siehe folgenden Beitrag für Kritik: http://www.python-forum.de/post-90450.html#90450
Dieses Beispiel läuft aber bei mir nicht ERROR
Doppelpostings ist auch sicherlich nicht erwünscht deswegen hier schluss
ohne index ist ein einzelner datenzugriff auch sehr schwirig denk ich mal als ANFÄNGER
ich lass mich aber gerne belehren.

wie greif ich dann ohne INDEX auf datensatz 6 zu ** symbol_liste[x] **
BlackJack

Naja, da habe ich den Doppelpunkt am Ende der ``def`` von `main()` vergessen.

Natürlich kann man gezielt auf das 6. Element nur mit einem Index zugreifen, nur wird das in dem Beispiel ja gar nicht gebraucht. Da wird immer nur nacheinander auf *alle* Elemente zugegriffen und das geht eben mit einer ``for``-Schleife über die Elemente.
sea-live
User
Beiträge: 440
Registriert: Montag 18. Februar 2008, 12:24
Wohnort: RP

auch auf die gefahr hin das mich alle erschiesssen

als anfänger in python mit null programmiererfahrung es läuft
tecdax.txt stehen die symbole oben

ich hab das Programm Ausgelagert hier
neue version http://www.python-forum.de/viewtopic.php?p=92410#92410

screenshot
Bild
sea-live
User
Beiträge: 440
Registriert: Montag 18. Februar 2008, 12:24
Wohnort: RP

Für die die Aktuelle werte brauchen alle 15min neu
so gehts

Code: Alles auswählen

import os
import types
import csv
import urllib
import string
pfad="C:\\boerse\\"
tecdax = ['MOR.DE','IDS.DE','GPC.DE','FNT.DE','ES6.DE','DRW3.DE',
      'EPC.DE','CGY.DE','BC8.DE','BBZ.DE','AUS.DE','AIX.DE',
      'AFX.DE','KBC.DE','ADV.DE','MTH.DE','NDX1.DE','PFV.DE',
      'QCE.DE','QIA.DE','QSC.DE','RSI.DE','SNG.DE','SOW.DE',
      'SWV.DE','TA6.DE','UTDI.DE','VTW.DE','WDI.DE']
mdax=['CLS1.DE','ALT.DE','AMB2.DE','AQU.DE','ARL.DE','ARO.DE',
    'AWD.DE','BOS3.DE','BEI.DE','DEQ.DE','DOU.DE','EAD.DE',
    'FRA.DE','FRE3.DE','G1A.DE','GBF.DE','GFJ.DE','HDD.DE',
    'DEZ.DE','HEI.DE','HNR1.DE','IKB.DE','HOT.DE','IVG.DE',
    'IWK.DE','KCO.DE','KRN.DE','LEO.DE','LXS.DE','MLP.DE',
    'MTX.DE','NDA.DE','PFD4.DE','PRA.DE','PRE.DE','PUM.DE',
    'PSM.DE','RHK.DE','RHM.DE','SAZ.DE','SDF.DE','SGL.DE',
    'SY1.DE','SZG.DE','SZU.DE','TGM.DE','TNH.DE','VOS.DE',
    'WCH.DE','WIN.DE']
cdax=['IUR.DE','PIT.DE','HUL.DE','SIM.DE','MNV6.DE','RIN7.DE',
    'TBB.DE','LEC.DE','MAF.DE','VGT.DE','YMOS.DE','YMO.DE','SFP1.DE',
    'DKA.DE','VMR.DE','STR.DE','BMO.DE','GARY.DE','COD.DE',
    'MOE.DE','AUT.DE','SIN.DE','EIS.DE','SHF.DE','MAU.DE',
    'BLAG.DE','BLN.DE','BJU.DE','MPR.DE','OAR.DE','FRO.DE',
    'PKB.DE','T1C.DE','UUU.DE','VSC.DE','AAA.DE','ACV.DE',
    'AGV.DE','AHH.DE','AAH3.DE','LUM.DE','RBX.DE','NIE.DE',
    'AQU.DE','ACW.DE','AWD.DE','AX33.DE','ARL.DE','ABO.DE',
    'RSB.DE','HNG.DE','LKI.DE','ADC.DE','ADS.DE','ADL.DE',
    'AAH.DE','ADJ.DE','ADV.DE','DVN1.DE','AP8.DE','AGI.DE',
    'DOO.DE','ARE.DE','AIX.DE','ALG.DE','AS1.DE','ABX.DE',
    'AEI.DE','ALV.DE','ANO.DE','ATF.DE','AL4.DE','ALT.DE',
    'TXA.DE','AAD.DE','AMB2.DE','AJA.DE','ANZ.DE','A3E.DE',
    'AHZ.DE','AR5.DE','AYD.DE','HHS.DE','ARX.DE','AOF.DE',
    'NSU.DE','ABE1.DE','AX3.DE','ACG.DE','BM9A.DE','BYW6.DE',
    'BKS3.DE','BIO.DE','BKQ.DE','BMW3.DE','BWB.DE','BBX.DE',
    'BBX.DE','BTT.DE','BAD.DE','BAS.DE','BSL.DE','BVH.DE',
    'B5A.DE','BAY.DE','SCH.DE','HVM.DE','BYW.DE','USE.DE',
    'BC8.DE','BEI.DE','BEZ3.DE','BHH.DE','BFV.DE','MBH3.DE',
    'BDT.DE','BZL.DE','BSS.DE','BSK.DE','BIE.DE','BIJ.DE',
    'GBF.DE','BNT.DE','BIT.DE','BIB.DE','BIO3.DE','BIO3.DE',
    'BMW.DE','BVB.DE','BMM.DE','AFX.DE','C3O.DE','MXC.DE',
    'COM.DE','CBK.DE','CAG.DE','CGY.DE','CON.DE','DSJ.DE',
    'DYK.DE','DRN.DE','DCX.DE','D9C.DE','DBK.DE','DB1.DE',
    'DPW.DE','DPB.DE','DTE.DE']
sdax=['AB1.DE','B5A.DE','AOX.DE','BAD.DE','BHS.DE','BYW6.DE','COM.DE',
    'D9C.DE','DAZ.DE','DBA.DE','DSJ.DE','DUE.DE','DWNI.DE','DYK3.DE',
    'EEX.DE','ESC.DE','EV4.DE','FIE.DE','EVD.DE','FPE3.DE','GFK.DE',
    'GIL.DE','GLJ.DE','GMM.DE','GWI1.DE','GXI.DE','HG1.DE','HXCI.DE',
    'INH.DE','IYP.DE','JUN3.DE','KBU.DE','KWS.DE','MDN.DE','MPC.DE',
    'MVV1.DE','O2C.DE','P1Z.DE','RAA.DE','SGS.DE','SIX2.DE','SKB.DE',
    'SPR.DE','T3C.DE','TEG.DE','TTK.DE','VIA.DE','WAC.DE','WAS.DE',
    'ZIL2.DE']
dax30=['ADS.DE','ALV.DE','BAS.DE','BAY.DE','BMW.DE','CBK.DE',
     'DAI.DE','DB1.DE','DBK.DE','DPB.DE','DPW.DE','DTE.DE',
     'EOA.DE','FME.DE','HEN3.DE','HRX.DE','IFX.DE','LHA.DE',
     'LIN.DE','MUV2.DE','MAN.DE','MEO.DE','MRK.DE','RWE.DE',
     'SIE.DE','TKA.DE','TUI1.DE','VOW.DE','SAP.DE']

symbollisten = {'tecdax':tecdax, 'mdax':mdax,'cdax':cdax,'sdax':sdax,'dax30':dax30}
for key, value in symbollisten.iteritems():
    #f = file("%s%s\\namen.txt" %(pfad,str(key)), 'w')
    for item in value:
        url = ("http://de.old.finance.yahoo.com/d/quotes.csv?s=%s&f=nsl1d1t1c1ohgv&e=.csv" %item)
        req = urllib.urlopen(url)
        text = req.read()
        inhalt = text.split(';')
        print key ,inhalt[0],item ,inhalt[2] #inhalt[2]=aktuelller wert f=name;Symbol;aktuell;datum;zeit;open;high;low;volumen *ohgv*

        #f.write(str(inhalt[1]+' , '+inhalt[0]+'\n'))
        req.close()

    #f.close()


print 'ok'
Zuletzt geändert von sea-live am Montag 28. April 2008, 07:34, insgesamt 1-mal geändert.
Leonidas
Python-Forum Veteran
Beiträge: 16025
Registriert: Freitag 20. Juni 2003, 16:30
Kontaktdaten:

Dir ist schon bekannt, dass das ``global`` in Zeile 60 keinerlei Wirkung hat?
My god, it's full of CARs! | Leonidasvoice vs (former) Modvoice
sea-live
User
Beiträge: 440
Registriert: Montag 18. Februar 2008, 12:24
Wohnort: RP

der Code kommt aus einem complexen Programm mit mehreren klassen
sorry hatte ich vergessen zu löschen
Antworten