Преглед изворни кода

Modification reprise du projet

remy пре 6 година
родитељ
комит
b2a9fe8b69

+ 1 - 0
Documents/.~lock.libelles.csv_1.ods#

@@ -0,0 +1 @@
+,remy,lemien,25.03.2020 17:13,file:///home/remy/.config/libreoffice/4;


BIN
Documents/libelles.csv_1.ods


+ 78 - 0
Src/Extraction.py

@@ -0,0 +1,78 @@
+from html.parser import HTMLParser
+import json
+
+
+#Classe Pour extraire les données historique
+class MyHTMLParser(HTMLParser):
+	def __init__(self):
+		HTMLParser.__init__(self)
+		self.recording = 0
+		self.data = []
+		
+	def handle_starttag(self, tag, attrs):
+		if attrs == [('class', 'c-table c-table--generic c-table--generic c-shadow-overflow__table-fixed-column'), ('data-table-sorter', None)]:
+			self.recording=1
+
+	def handle_endtag(self, tag):
+		if tag =="table":
+			self.recording=0
+
+	def handle_data(self, data):
+		if self.recording:
+			tmp=data.replace(" ","")
+			tmp=tmp.replace("\n","")
+			if tmp!='':
+				self.data.append(tmp)
+	
+	def struct(self):
+		dic = {}
+		i=11;
+		dic["1semaine"]=self.data[i:i+3]
+		i+=4
+		dic["1mois"]=self.data[i:i+3]
+		i+=4
+		dic["3mois"]=self.data[i:i+3]
+		i+=4
+		dic["6mois"]=self.data[i:i+3]
+		i+=4
+		dic["1an"]=self.data[i:i+3]
+		i+=4
+		dic["3ans"]=self.data[i:i+3]
+		i+=4
+		dic["5ans"]=self.data[i:i+3]
+		i+=4
+		dic["10ans"]=self.data[i:i+3]
+		i+=4
+		dic["MM20"]=self.data[i]
+		i+=1
+		dic["MM50"]=self.data[i]
+		i+=1
+		dic["MM100"]=self.data[i]
+		i+=1
+		dic["RSI14"]=self.data[i]
+		i+=1		
+		return dic
+		
+	def getData(self):
+		return self.data
+
+#Fonction pour extraire les donnée du graphique journalier
+	def Daily(self,html):
+		l1=html.find("var chart") #On cherche le debuy du JSON du graph
+		l2=html.find("chart.data.amChartData);") # On cherche la fin du JSON du graph
+		data=html[l1+29:l2+32-276] # A améliorrer ???
+
+		data = json.loads(data) # On charge le Json
+		
+		idf = data["data"]["amChartConfig"]["graphs"][0]["id"]# On recupere l'identifiant du graphique
+
+		data=data["data"]["amChartData"][idf]#On extrait du Json les valeurs du graph
+		
+		dic={}
+
+		for i in data : #Pour chaque valeurs de la journée on met dans le dictionnaire
+			heu = i["period"]
+			val = i["value"]
+			dic[heu]=val
+			
+		return dic

+ 29 - 0
Src/Scan.py

@@ -0,0 +1,29 @@
+import time
+from recup import recupfunc
+from Extraction import *
+
+t = time.localtime()
+f = open("/home/remy/Bourse/Src/cac.txt","r")
+parser=MyHTMLParser()
+for i in f:
+        add = i.split(";")[1]
+        name = i.split(";")[0]
+        
+        fichier = "/home/remy/valeurs/" + name + "-" + str(t[2]) + "-" + str(t[1])  + "-" + str(t[0])        
+        d = open(fichier,"w")
+        
+        
+        html=recupfunc(add)
+          
+        
+        graph=parser.Daily(html)
+        
+        parser.feed(html)
+        histo=parser.struct()
+        
+        d = open(fichier,"w")
+        d.write(str(graph))
+        d.write("\r\n")
+        d.write(str(histo))
+        d.close()
+f.close()

+ 0 - 0
Src/Partage.py → Src/Vieux/Partage.py


+ 0 - 0
Src/achatVente.py → Src/Vieux/achatVente.py


+ 0 - 0
Src/achatVente.pyc → Src/Vieux/achatVente.pyc


+ 0 - 0
Src/cac.py → Src/Vieux/cac.py


+ 40 - 0
Src/Vieux/cac.txt

@@ -0,0 +1,40 @@
+Solvay;https://www.google.com/finance?q=Solvay&ei=cnx_V6CQBYKCUcGdsNAC
+lafarg;https://www.google.com/finance?q=FRA%3AHLBN&sq=LafargeHolcim&sp=4&ei=oHl_V8GOEIGQUInhmcAO
+Nokia;https://www.google.com/finance?q=FRA%3ANOA3&sq=NOKIA%20fra&sp=1&ei=YHp_V-i2GoTOUZ7tjjg
+CrediA;https://www.google.com/finance?q=EPA:ACA&sq=Credit+Agricole&sp=1&ei=QXx_V6hGiLxRw_6d-AE
+Safran;https://www.google.com/finance?q=EPA:SAF&sq=Safran&sp=1&ei=cnx_V6CQBYKCUcGdsNAC
+AirLiq;https://www.google.com/finance?q=EPA%3AAI&sq=Air%20Liquide&sp=1&ei=7Xx_V7HMC4nKUd3RiagO
+Carref;https://www.google.com/finance?q=EPA%3ACA&sq=Carrefour&sp=1&ei=63x_V-jLE8iVUJCWk-AD
+Total;https://www.google.com/finance?q=EPA%3AFP&sq=Total&sp=11&ei=9Hx_V6n7GNXAUarJoMgO
+Loreal;https://www.google.com/finance?q=EPA%3AOR&sq=L%27oreal&sp=1&ei=_3x_V_mfEsvyUJTRvNgK
+ACoor;https://www.google.com/finance?q=EPA%3AAC&sq=ac&sp=4&ei=VoF_V5HiI8iFUd_mrbgG&hl=en
+Bouygu;https://www.google.com/finance?q=EPA%3AEN&sq=Bouygues&sp=1&ei=7n1_V8nMMsLAU8Knp_gC
+Sanofi;https://www.google.com/finance?q=EPA%3ASAN&sq=Sanofi&sp=2&ei=8H1_V_DpFsvDUbbzhaAG
+axa;https://www.google.com/finance?q=EPA%3ACS&sq=Axa&sp=2&ei=8H1_V8GKO8iVUJCWk-AD
+Danone;https://www.google.com/finance?q=EPA%3ABN&sq=Danone&sp=1&ei=8n1_V8DAKcaEU7KstKgI
+Ricard;https://www.google.com/finance?q=EPA%3ARI&sq=Pernod%20Ricard&sp=1&ei=831_V-C5DMbQU5eSjKgO
+LVMH;https://www.google.com/finance?q=EPA%3AMC&sq=Lvmh&sp=1&ei=831_V6iqM9XFUYfsmrgO
+Sodexo;https://www.google.com/finance?q=EPA%3ASW&sq=Sodexo&sp=1&ei=9H1_V9GyHpC4U7b6q5AD
+Michel;https://www.google.com/finance?q=EPA%3AML&sq=Michelin&sp=1&ei=9X1_V6i3BYiLUsWxudAN
+Kering;https://www.google.com/finance?q=EPA%3AKER&sq=Kering&sp=1&ei=9X1_V6GnJ8bRUeiigagP
+Peugeo;https://www.google.com/finance?q=EPA%3AUG&sq=Peugeot&sp=2&ei=sX5_V6mbOMbQU5eSjKgO
+Essilo;https://www.google.com/finance?q=Essilor+Intl&ei=eX1_V5GDGciFUd_mrbgG
+Klepie;https://www.google.com/finance?q=Klepierre&ei=eX1_V4msKIWZUuzXpoAD
+Schnei;https://www.google.com/finance?q=Schneider+Electric&ei=f31_V5DIAoW-U4XRvfAH
+Veolia;https://www.google.com/finance?q=EPA%3Avie&hl=en&ei=W4F_V6HaFsaEU7KstKgI
+Unibial;https://www.google.com/finance?q=Unibail-Rodamco&ei=fH1_V_lV1chTzMWdyAI
+SAintGo;https://www.google.com/finance?q=EPA%3ASGO&sq=Saint%20Gobain&sp=1&ei=vH5_V_nJBIWZUuzXpoAD
+CapGe;https://www.google.com/finance?q=EPA%3ACAP&sq=Cap%20Gemini&sp=1&ei=vH5_V6meN4vCU-TTtagL
+Vinci;https://www.google.com/finance?q=EPA%3Adg&hl=en&ei=ZoF_V5mGJYGdUovOvIgC
+Vivendi;https://www.google.com/finance?q=EPA%3AVIV&sq=Vivendi&sp=1&ei=c4B_V9uDEYWZUuzXpoAD&hl=en
+Publici;https://www.google.com/finance?q=EPA%3APUB&sq=Publicis%20Groupe&sp=2&ei=dYB_V8HkHYvCU-TTtagL&hl=en
+SOGE;https://www.google.com/finance?q=EPA%3AGLE&sq=Societe%20Generale&sp=1&ei=doB_V9vNIoi8UcP-nfgB&hl=en
+BNP;https://www.google.com/finance?q=EPA%3ABNP&sq=Bnp%20Paribas&sp=1&ei=d4B_V-n6LYiLUsWxudAN&hl=en
+Technip;https://www.google.com/finance?q=EPA%3ATEC&sq=Technip&sp=2&ei=IIB_V4HrBoW-U4XRvfAH&hl=en
+Renault;https://www.google.com/finance?q=EPA%3ARNO&sq=Renault&sp=1&ei=LoB_V9HqNYqPUtLYp-AK&hl=en
+Orange;https://www.google.com/finance?q=EPA%3AORA&sq=Orange&sp=2&ei=NIB_V4GsG4TOUZ7tjjg&hl=en
+Engie;https://www.google.com/finance?q=EPA%3AENGI&sq=Engie&sp=1&ei=OYB_V_GWCMvyUJTRvNgK&hl=en
+Legrand;https://www.google.com/finance?q=Legrand+SA&hl=en&ei=_X9_V_DgGdXFUYfsmrgO
+Valeo;https://www.google.com/finance?q=EPA%3AFR&sq=Valeo&sp=1&ei=QoB_V_ikOtaYUPq-vZgD&hl=en
+Arcelor;https://www.google.com/finance?q=Arcelor+Mittal&hl=en&ei=_39_V-H9H9XIU8zFncgC
+Airbus;https://www.google.com/finance?q=EPA%3AAIR&sq=Airbus&sp=1&ei=YYB_V_uNGJOLUJXhvKAP&hl=en

+ 16 - 0
Src/Vieux/recup.py

@@ -0,0 +1,16 @@
+import urllib
+
+def recupfunc(add):
+	while 1:
+		try:
+			d = urllib.urlopen(add).read()
+			s= d.split("\n")
+			val = float(s[149].split('>')[1].split('<')[0])
+			var = float(s[152].split('>')[2].split('<')[0])
+			pou = float(s[153].split('(')[1].split('%')[0])
+
+			return [val,var,pou]
+		except:
+			print("erreur" +str(add))
+	
+#~ print (recup('https://www.google.com/finance?q=lhn&ei=DHF_V8GIEoi8UcP-nfgB'))

+ 0 - 0
Src/recup.pyc → Src/Vieux/recup.pyc


+ 0 - 0
Src/scanValeur.py → Src/Vieux/scanValeur.py


+ 0 - 0
Src/scanValeur.pyc → Src/Vieux/scanValeur.pyc


+ 0 - 0
Src/test.py → Src/Vieux/test.py


+ 0 - 0
Src/timer.py → Src/Vieux/timer.py


+ 0 - 0
Src/timer.pyc → Src/Vieux/timer.pyc


+ 0 - 0
Src/valeurs.py → Src/Vieux/valeurs.py


+ 0 - 0
Src/valeurs.pyc → Src/Vieux/valeurs.pyc


BIN
Src/__pycache__/Extraction.cpython-36.pyc


BIN
Src/__pycache__/recup.cpython-36.pyc


+ 41 - 40
Src/cac.txt

@@ -1,40 +1,41 @@
-Solvay;https://www.google.com/finance?q=Solvay&ei=cnx_V6CQBYKCUcGdsNAC
-lafarg;https://www.google.com/finance?q=FRA%3AHLBN&sq=LafargeHolcim&sp=4&ei=oHl_V8GOEIGQUInhmcAO
-Nokia;https://www.google.com/finance?q=FRA%3ANOA3&sq=NOKIA%20fra&sp=1&ei=YHp_V-i2GoTOUZ7tjjg
-CrediA;https://www.google.com/finance?q=EPA:ACA&sq=Credit+Agricole&sp=1&ei=QXx_V6hGiLxRw_6d-AE
-Safran;https://www.google.com/finance?q=EPA:SAF&sq=Safran&sp=1&ei=cnx_V6CQBYKCUcGdsNAC
-AirLiq;https://www.google.com/finance?q=EPA%3AAI&sq=Air%20Liquide&sp=1&ei=7Xx_V7HMC4nKUd3RiagO
-Carref;https://www.google.com/finance?q=EPA%3ACA&sq=Carrefour&sp=1&ei=63x_V-jLE8iVUJCWk-AD
-Total;https://www.google.com/finance?q=EPA%3AFP&sq=Total&sp=11&ei=9Hx_V6n7GNXAUarJoMgO
-Loreal;https://www.google.com/finance?q=EPA%3AOR&sq=L%27oreal&sp=1&ei=_3x_V_mfEsvyUJTRvNgK
-ACoor;https://www.google.com/finance?q=EPA%3AAC&sq=ac&sp=4&ei=VoF_V5HiI8iFUd_mrbgG&hl=en
-Bouygu;https://www.google.com/finance?q=EPA%3AEN&sq=Bouygues&sp=1&ei=7n1_V8nMMsLAU8Knp_gC
-Sanofi;https://www.google.com/finance?q=EPA%3ASAN&sq=Sanofi&sp=2&ei=8H1_V_DpFsvDUbbzhaAG
-axa;https://www.google.com/finance?q=EPA%3ACS&sq=Axa&sp=2&ei=8H1_V8GKO8iVUJCWk-AD
-Danone;https://www.google.com/finance?q=EPA%3ABN&sq=Danone&sp=1&ei=8n1_V8DAKcaEU7KstKgI
-Ricard;https://www.google.com/finance?q=EPA%3ARI&sq=Pernod%20Ricard&sp=1&ei=831_V-C5DMbQU5eSjKgO
-LVMH;https://www.google.com/finance?q=EPA%3AMC&sq=Lvmh&sp=1&ei=831_V6iqM9XFUYfsmrgO
-Sodexo;https://www.google.com/finance?q=EPA%3ASW&sq=Sodexo&sp=1&ei=9H1_V9GyHpC4U7b6q5AD
-Michel;https://www.google.com/finance?q=EPA%3AML&sq=Michelin&sp=1&ei=9X1_V6i3BYiLUsWxudAN
-Kering;https://www.google.com/finance?q=EPA%3AKER&sq=Kering&sp=1&ei=9X1_V6GnJ8bRUeiigagP
-Peugeo;https://www.google.com/finance?q=EPA%3AUG&sq=Peugeot&sp=2&ei=sX5_V6mbOMbQU5eSjKgO
-Essilo;https://www.google.com/finance?q=Essilor+Intl&ei=eX1_V5GDGciFUd_mrbgG
-Klepie;https://www.google.com/finance?q=Klepierre&ei=eX1_V4msKIWZUuzXpoAD
-Schnei;https://www.google.com/finance?q=Schneider+Electric&ei=f31_V5DIAoW-U4XRvfAH
-Veolia;https://www.google.com/finance?q=EPA%3Avie&hl=en&ei=W4F_V6HaFsaEU7KstKgI
-Unibial;https://www.google.com/finance?q=Unibail-Rodamco&ei=fH1_V_lV1chTzMWdyAI
-SAintGo;https://www.google.com/finance?q=EPA%3ASGO&sq=Saint%20Gobain&sp=1&ei=vH5_V_nJBIWZUuzXpoAD
-CapGe;https://www.google.com/finance?q=EPA%3ACAP&sq=Cap%20Gemini&sp=1&ei=vH5_V6meN4vCU-TTtagL
-Vinci;https://www.google.com/finance?q=EPA%3Adg&hl=en&ei=ZoF_V5mGJYGdUovOvIgC
-Vivendi;https://www.google.com/finance?q=EPA%3AVIV&sq=Vivendi&sp=1&ei=c4B_V9uDEYWZUuzXpoAD&hl=en
-Publici;https://www.google.com/finance?q=EPA%3APUB&sq=Publicis%20Groupe&sp=2&ei=dYB_V8HkHYvCU-TTtagL&hl=en
-SOGE;https://www.google.com/finance?q=EPA%3AGLE&sq=Societe%20Generale&sp=1&ei=doB_V9vNIoi8UcP-nfgB&hl=en
-BNP;https://www.google.com/finance?q=EPA%3ABNP&sq=Bnp%20Paribas&sp=1&ei=d4B_V-n6LYiLUsWxudAN&hl=en
-Technip;https://www.google.com/finance?q=EPA%3ATEC&sq=Technip&sp=2&ei=IIB_V4HrBoW-U4XRvfAH&hl=en
-Renault;https://www.google.com/finance?q=EPA%3ARNO&sq=Renault&sp=1&ei=LoB_V9HqNYqPUtLYp-AK&hl=en
-Orange;https://www.google.com/finance?q=EPA%3AORA&sq=Orange&sp=2&ei=NIB_V4GsG4TOUZ7tjjg&hl=en
-Engie;https://www.google.com/finance?q=EPA%3AENGI&sq=Engie&sp=1&ei=OYB_V_GWCMvyUJTRvNgK&hl=en
-Legrand;https://www.google.com/finance?q=Legrand+SA&hl=en&ei=_X9_V_DgGdXFUYfsmrgO
-Valeo;https://www.google.com/finance?q=EPA%3AFR&sq=Valeo&sp=1&ei=QoB_V_ikOtaYUPq-vZgD&hl=en
-Arcelor;https://www.google.com/finance?q=Arcelor+Mittal&hl=en&ei=_39_V-H9H9XIU8zFncgC
-Airbus;https://www.google.com/finance?q=EPA%3AAIR&sq=Airbus&sp=1&ei=YYB_V_uNGJOLUJXhvKAP&hl=en
+Cac40;https://www.boursorama.com/bourse/indices/cours/1rPCAC/
+Accor;https://www.boursorama.com/cours/1rPAC/
+Air liquide;https://www.boursorama.com/cours/1rPAI/
+Airbus;https://www.boursorama.com/cours/1rPAI/
+ArcelorMittal;https://www.boursorama.com/cours/1rAMT/
+Atos;https://www.boursorama.com/cours/1rPATO/
+Axa;https://www.boursorama.com/cours/1rPCS/
+BNP Paribas;https://www.boursorama.com/cours/1rPBNP/
+Bouygues;https://www.boursorama.com/cours/1rPEN/
+Capgemini;https://www.boursorama.com/cours/1rPCAP/
+Carrefour;https://www.boursorama.com/cours/1rPCA/
+Crédit agricole;https://www.boursorama.com/cours/1rPACA/
+Danone;https://www.boursorama.com/cours/1rPBN/
+Dassault Systèmes;https://www.boursorama.com/cours/1rPDSY/
+Engie;https://www.boursorama.com/cours/1rPENGI/
+Essilor;https://www.boursorama.com/cours/1rPEL/
+Hermès International;https://www.boursorama.com/cours/1rPRMS/
+Kering;https://www.boursorama.com/cours/1rPKER/
+Legrand;https://www.boursorama.com/cours/1rPLR/
+L'Oréal;https://www.boursorama.com/cours/1rPOR/
+LVMH;https://www.boursorama.com/cours/1rPMC/
+Michelin;https://www.boursorama.com/cours/1rPML/
+Orange;https://www.boursorama.com/cours/1rPORA/
+Pernod Ricard;https://www.boursorama.com/cours/1rPRI/
+Groupe PSA;https://www.boursorama.com/cours/1rPUG/
+Publicis Groupe;https://www.boursorama.com/cours/1rPPUB/
+Renault;https://www.boursorama.com/cours/1rPRNO/
+Safran;https://www.boursorama.com/cours/1rPSAF/
+Saint-Gobain;https://www.boursorama.com/cours/1rPSGO/
+Sanofi;https://www.boursorama.com/cours/1rPSAN/
+Schneider Electric;https://www.boursorama.com/cours/1rPSU/
+Société générale;https://www.boursorama.com/cours/1rPGLE/
+Sodexo;https://www.boursorama.com/cours/1rPSW/
+STMicroelectronics;https://www.boursorama.com/cours/1rPSTM/
+TechnipFMC;https://www.boursorama.com/cours/1rPFTI/
+Thales;https://www.boursorama.com/cours/1rPHO/
+Total;https://www.boursorama.com/cours/1rPFP/
+Unibail-Rodamco-Westfield;https://www.boursorama.com/cours/1rAURW/
+Veolia;https://www.boursorama.com/cours/1rPVIE/
+Vinci;https://www.boursorama.com/cours/1rPDG/
+Vivendi;https://www.boursorama.com/cours/1rPVIV/

+ 10 - 16
Src/recup.py

@@ -1,16 +1,10 @@
-import urllib
-
-def recupfunc(add):
-	while 1:
-		try:
-			d = urllib.urlopen(add).read()
-			s= d.split("\n")
-			val = float(s[149].split('>')[1].split('<')[0])
-			var = float(s[152].split('>')[2].split('<')[0])
-			pou = float(s[153].split('(')[1].split('%')[0])
-
-			return [val,var,pou]
-		except:
-			print("erreur" +str(add))
-	
-#~ print (recup('https://www.google.com/finance?q=lhn&ei=DHF_V8GIEoi8UcP-nfgB'))
+import urllib.request
+
+def recupfunc(add):
+    try:
+        d = urllib.request.urlopen(urllib.request.Request(add, headers = {"User-Agent": "Mozilla/5.0"})).read().decode()
+        return d
+    except:
+        print("erreur" +str(add))
+
+

+ 9 - 0
TestPerf/TestPerf.py

@@ -0,0 +1,9 @@
+nb = 4696091*20
+A = 51
+B = 22
+C = 0.20
+
+for i in range(nb):
+	res=A*B*C
+
+print (res)