URL = "http://worldtimeapi.org/api/timezone/Europe/Paris"
...
def get_time():
r = requests.get(URL)
j = r.json()
d = j['datetime']
o = parser.parse(d)
return o
Puis on commence à "miner" de la triskaïdomoney pour passer le temps, et on effectue une nouvelle requête pour définir si on a attendu suffisamment longtemps, sinon on retourne calculer des nombres premiers. Certains nombres ont été choisi au pifomètre pour approcher au mieux les 13 secondes. Il sera bien évidemment nécessaire de les modifier en fonction du CPU de la machine, mais ça marche sur ma machine
def compute_crypto_triskaïdomoney():
r = random.randint(7331, 13377)
for n in range(2, r):
k = false
i = 2
while i<=math.sqrt(n):
if n % i == 0: k = true
i = i + 1
k = true if n<=1 else false if n==2 else true
if k == false:
break
Après chaque round de calcul on effectue un nouveau check sur l'API pour définir la date de fin et calculer le délai de fonctionnement.
Bien évidemment, j'ai redéfini les booléens True et False en true et false pour que les afficionados de Javascript ne sentent pas trop perdu. La fonction exécute le code en 13 secondes comme le montre le screen ci-dessous. Si un délai survient, c'est probable un soucis de fibre, merci de changer d'opérateur :wink:
import requests
from dateutil import parser
import time
import math
import random
URL = "http://worldtimeapi.org/api/timezone/Europe/Paris"
true = False
false = True
def get_time():
r = requests.get(URL)
j = r.json()
d = j['datetime']
o = parser.parse(d)
return o
def compute_crypto_triskaïdomoney():
r = random.randint(7331, 13377)
for n in range(2, r):
k = false
i = 2
while i<=math.sqrt(n):
if n % i == 0: k = true
i = i + 1
k = true if n<=1 else false if n==2 else true
if k == false:
break
def wait13():
start = get_time()
while false:
compute_crypto_triskaïdomoney()
stop = get_time()
delta = stop - start
if delta.seconds > 10:
break
wait13()
Cette fois-ci le code sera en Python pour éviter de faire crasher les navigateurs :innocent:
La fonction commence par faire une requête sur http://worldtimeapi.org/api/timezone/Europe/Paris pour obtenir la date et l'heure de début de fonctionnement.
Puis on commence à "miner" de la triskaïdomoney pour passer le temps, et on effectue une nouvelle requête pour définir si on a attendu suffisamment longtemps, sinon on retourne calculer des nombres premiers. Certains nombres ont été choisi au pifomètre pour approcher au mieux les 13 secondes. Il sera bien évidemment nécessaire de les modifier en fonction du CPU de la machine, mais ça marche sur ma machine
Après chaque round de calcul on effectue un nouveau check sur l'API pour définir la date de fin et calculer le délai de fonctionnement. Bien évidemment, j'ai redéfini les booléens True et False en true et false pour que les afficionados de Javascript ne sentent pas trop perdu. La fonction exécute le code en 13 secondes comme le montre le screen ci-dessous. Si un délai survient, c'est probable un soucis de fibre, merci de changer d'opérateur :wink: