CONNEXION
  • RetourJeux
    • Sorties
    • Hit Parade
    • Les + populaires
    • Les + attendus
    • Soluces
    • Tous les Jeux
    • Gaming
  • RetourActu Gaming
    • News
    • Astuces
    • Tests
    • Previews
    • Toute l'actu gaming
  • RetourBons plans
    • Bons plans
    • Bons plans Smartphone
    • Bons plans Hardware
    • Bons plans Image et Son
    • Bons plans Amazon
    • Bons plans Cdiscount
    • Bons plans Decathlon
    • Bons plans Fnac
    • Tous les Bons plans
  • RetourJVTech
    • Actus High-Tech
    • Intelligence Artificielle
    • Smartphones
    • Mobilité urbaine
    • Hardware
    • Image et son
    • Tutoriels
    • Tests produits High-Tech
    • Guides d'achat High-Tech
    • JVTech
  • RetourCulture
    • Actus Culture
    • Culture
  • RetourVidéos
    • A la une
    • Gaming Live
    • Vidéos Tests
    • Vidéos Previews
    • Gameplay
    • Trailers
    • Chroniques
    • Replay Web TV
    • Toutes les vidéos
  • RetourForums
    • Hardware PC
    • PS5
    • Switch 2
    • Xbox Series
    • Switch
    • Pokemon pocket
    • FC 25 Ultimate Team
    • League of Legends
    • Tous les Forums
  • PC
  • PS5
  • Xbox Series
  • Switch 2
  • PS4
  • One
  • Switch
  • iOS
  • Android
  • MMO
  • RPG
  • FPS
En ce moment Genshin Impact Valhalla Breath of the wild Animal Crossing GTA 5 Red dead 2
Liste des sujets

cherche de l'aide pour un programme écrit en python à modifier

Daywatch
Daywatch
Niveau 7
28 mars 2018 à 11:27:43

Le programme télécharge une liste de prix et les compare à une autre et c'est là le problème en fait la liste est constitué d'une page au lieu d'être constitué des buy order en gros au lieu d'avoir une référence qui se constitue sur une seule page il faudrait que je change le programme pour avoir la liste entière des buy order à télécharger et à mettre dans une base de données exactement de la même façon que c'est fait avec la fonction load_market_id
try: import urllib.request import ast import decimal import requests import json import time except Exception as error: print("ERROR: this {} module is messing".format(error)); exit(1); class Transformer(ast.NodeTransformer): NAMES = set(['Decimal', 'None', 'False', 'True']); NODE_TYPES = set(['Expression','Tuple','Call','Name','Load','Str','Num','List','Dict',]); def visit_Name(self, node): if not node.id in self.NAMES: raise RuntimeError("Name access to {} is not allowed".format(node.id)); return self.generic_visit(node); def generic_visit(self, node): nodetype = type(node).__name__; if nodetype not in self.NODE_TYPES: raise RuntimeError("Invalid expression: {} not allowed".format(nodetype)); return ast.NodeTransformer.generic_visit(self, node); def fromTXT_toSTRUCT(txtStream=""): parserTree = ast.parse(txtStream, mode='eval'); transformer = Transformer(); transformer.visit(parserTree); clause = compile(parserTree, '<AST>', 'eval'); return eval(clause, dict(Decimal=decimal.Decimal)); def get_url_content(urlLink="https://www.google.com"): url = urllib.request.urlopen(urlLink); return url; def compare(currPage,refItems,currItems): print("REGION NUMBER : %d" % currPage) for i in range(len(currItems)): for i2 in range(len(refItems)): if currItems[i]["type_id"] == refItems[i2]["type_id"]: ide = currItems[i]["type_id"] try: if (refItems[i2]["average_price"] - currItems[i]["price"]) > 10000000: print("======================") print("REF_ITEM number %d :" % (ide)) for key in refItems[i2].keys(): if key != "type_id": print("\t%s : %s" % (key,refItems[i2][key])) print("----------------------") print("COMPARED_ITEM number %d :" % (ide)) for key in currItems[i].keys(): if key != "type_id": print("\t%s : %s" % (key,currItems[i][key])) print("----------------------") print("DIFF:") print("\t%d diff price" % (refItems[i2]["average_price"]-currItems[i]["price"])) print("======================") except KeyError: print("======================") print("REF_ITEM number %d :" % (ide)) print("\t no ref price or price NULL") print("======================") time.sleep(3.5) print("||||||||||||||||||||||||||||||||||||||||||||||") print("[INFO] refItems contain %d items" % (len(refItems))) print("[INFO] currItems contain %d items" % (len(currItems))) print("||||||||||||||||||||||||||||||||||||||||||||||") def load_market_id(identifier): print ("Load market with id : %s" %str(identifier)) url = "https://esi.tech.ccp.is/v1/markets/%s/orders/?datasource=tranquility&order_type=sell" %identifier data = [] page_id = 0 while True : res = requests.get(url, params={'page': page_id}).json() if not res : break data.extend(res) page_id += 1 return data def load_all_market_id(identifier): data = {} values = load_market_id(identifier) if values : data[identifier] = values return data def main(): count = 0 try: while True: refUrl = get_url_content("https://esi.tech.ccp.is/latest/markets/prices/?datasource=tranquility"); refStructuredContent = fromTXT_toSTRUCT(refUrl.read()); refUrl.close() for nRegion in range(10000003,10000023): values = list(load_all_market_id(nRegion).values()); if len(values) > 0: values = values[0] compare(nRegion,refStructuredContent,values); print("[INFO]: REFRESH number (%d) ... " % count); coutn += 1; except KeyboardInterrupt: print("[INFO] the program has been stopped..") exit(0) return 0; main();

Daywatch
Daywatch
Niveau 7
30 mars 2018 à 14:09:52

up

Daywatch
Daywatch
Niveau 7
13 avril 2018 à 17:27:27

y a t-il quelqu'un qui voudrait bien m'aider svp?

Grimmys
Grimmys
Niveau 19
13 avril 2018 à 20:28:54

Bonsoir,

Quel est exactement ton problème... ?

J'ai du mal à saisir, qu'attends-tu que l'on te propose ?

Daywatch
Daywatch
Niveau 7
04 mai 2018 à 16:37:33

bah ce que j'attend c'est qu'on me dise comment faire pour arriver à changer
ça
refUrl = get_url_content("https://esi.tech.ccp.is/latest/markets/prices/?datasource=tranquility");
refStructuredContent = fromTXT_toSTRUCT(refUrl.read());
refUrl.close()
par une data base et que chaque item_id soit testé sur l'item_id et le prix en fait c'est une comparaison de deux database

def load_market_id2(identifier):
print ("Load market with id : %s" %str(identifier))
url = "https://esi.tech.ccp.is/v1/markets/%s/orders/?datasource=tranquility&order_type=buy" %identifier
data2 = []
page_id = 0
while True :
res = requests.get(url, params={'page': page_id}).json()
if not res : break
data.extend(res)
page_id += 1
return data2

en incluant cela à la place de

def load_all_market_id2(identifier):
data2 = {}
values = load_market_id2(identifier)
if values :
data[identifier] = values2
return data2

Sous forums
  • Aide à l'achat Mac
  • Création de Jeux
  • Linux
  • Programmation
  • Création de sites web
  • Internet
  • Steam Deck
  • Macintosh
  • Hardware
La vidéo du moment