Bonsoir à tous,

après quelques recherches, je ne trouve pas mon bonheur, alors peut être qu'un de vous pourrez me mettre sur la voie de ce problème :

contexte : faire avancer un robot lors d'un keydown, et qu'il s'arrête lors du keyup. Au final, pouvoir diriger un robot avec des clics sur des boutons ou les flèches du clavier
J'ai pris python histoire de découvrir quelque chose de nouveau.

Pour faire ça, je pense donc qu'il faut un script CGI qui récupérera les appels de mon bouton HTML, mais qui ne rechargera pas ma page.

Voici ce que j'ai pu faire pour le HTML (l'essentiel)

Code HTML : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
<form action="/cgi-bin/test.py" method="POST">
    <input type="hidden" name="os" value="linux">
    <input type="hidden" name="cpu" value="ARM11">
    <input type="hidden" name="server" value="nginx">
    <input type="submit" value="Linux"> 
</form>
<form action="/cgi-bin/test.py" method="POST">
    <input type="hidden" name="os" value="macos">
    <input type="hidden" name="cpu" value="Intel">
    <input type="hidden" name="server" value="apache2">
    <input type="submit" value="MacOS">
</form>
<form action="/cgi-bin/test.py" method="POST">
    <input type="hidden" name="os" value="Windows">
    <input type="hidden" name="cpu" value="ARM11">
    <input type="hidden" name="server" value="apache2">
    <input type="submit" value="Windows">
</form>

et voici mon CGI :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
print "Content-type: text/html\n\n"
 
print "<h2>Arguments</h2>"
 
form = cgi.FieldStorage()
arg1 = form.getvalue('os')
 
if arg1 == "macos":
	print "OS: " +arg1+"<br>"
elif arg1 == "linux":
	print "OS: Linux <br>"
else:
	print "OS: Ni Mac ni Debian <br>"
 
arg2 = form.getvalue('cpu')
print "CPU: " +arg2+"<br>"
 
arg3 = form.getvalue('server')
print "Server: "+arg3+"<br>"
Voilà, c'est juste pour comprendre le truc.
Là, il charge une page qui est génère par le CGI, mais je n'arrive pas à comprendre comment je peux appeler du code python depuis du Web


Merci beaucoup pour vos avis, éclairés ou pas :p