SERVEUR WEB EN PYTHON.

aera group Messages postés 382 Date d'inscription mercredi 23 août 2006 Statut Membre Dernière intervention 8 novembre 2010 - 28 janv. 2008 à 09:35
xeolin Messages postés 336 Date d'inscription samedi 26 novembre 2005 Statut Membre Dernière intervention 8 novembre 2011 - 15 mai 2010 à 15:21
Cette discussion concerne un article du site. Pour la consulter dans son contexte d'origine, cliquez sur le lien ci-dessous.

https://codes-sources.commentcamarche.net/source/45528-serveur-web-en-python

xeolin Messages postés 336 Date d'inscription samedi 26 novembre 2005 Statut Membre Dernière intervention 8 novembre 2011 2
15 mai 2010 à 15:21
connecte toi avec ton navigateur internet (firefox, google chrome, opera...) sur l'adresse 127.0.0.1 ou localhost !
shadyyyyy Messages postés 1 Date d'inscription mardi 6 avril 2010 Statut Membre Dernière intervention 15 mai 2010
15 mai 2010 à 09:22
Euh, on lance le serveur est on fais quoi après ?
aera group Messages postés 382 Date d'inscription mercredi 23 août 2006 Statut Membre Dernière intervention 8 novembre 2010 18
27 oct. 2009 à 10:24
No problem pour l'envoie ça sera fait, juste le temps pour moi de remettre un peu d'ordre dans la source qui a subit de nombreuse retouche (pour essayer de trouver cette &*/@\# d'erreur) et il faut aussi que je récupère mon PC qui vient de partir pour l'Allemagne !!!
Je ne t'oublie pas !!!
xeolin Messages postés 336 Date d'inscription samedi 26 novembre 2005 Statut Membre Dernière intervention 8 novembre 2011 2
26 oct. 2009 à 13:08
Mirci ^^

Hala, toute bête comme erreur..

Juste sous nos yeux depuis belle lurette... Elle aura tenu presque un an cette faute...

Sinon aera je sera heureux si tu m'envoyait ta source par email, pour que j'y jette un coup d'oeuil...

Cray
aera group Messages postés 382 Date d'inscription mercredi 23 août 2006 Statut Membre Dernière intervention 8 novembre 2010 18
25 oct. 2009 à 17:58
Ouhaou !!!!!!!!!!!!!!!!!!!!!!!!!!!

Excellente découverte Xeolin, mon serveur étant basé sur le tiens, j'avais un énorme problème avec les image qui maintenant est résolu (logique l'info n'était pas transmis sur le bon port). Je n'avais pas vu cette erreur pourtant j'ai passé des heures et des heures à cherché ce qu'il n'allez pas et tu l'as trouvé !!!

Merci beaucoup tu m'enlève une épine dans le pied !!!

Ciao bon dimanche
xeolin Messages postés 336 Date d'inscription samedi 26 novembre 2005 Statut Membre Dernière intervention 8 novembre 2011 2
25 oct. 2009 à 16:38
attention, au niveau du serveur il y a un bug,

il faut changer le

connexion.send(msg)

par

self.connexion.send(msg)

Merci
xeolin Messages postés 336 Date d'inscription samedi 26 novembre 2005 Statut Membre Dernière intervention 8 novembre 2011 2
11 juil. 2009 à 19:50
Après avoir lu, non décrypté, le message de softghost, (6 mois plus tard), j'ai beaucoup aimé l'idée de la bdd, et je pense peut être transformer tout ca en un interpréteur de code, comme le ferait le php, mais dans un language beaucoup plus "humain", je pense que je vais travailler la dessus un peut, par contre, je pense que cela se résumera à une interface graphique et donc pas de code :), youpi ! (pour les utilisateurs)

N3Ar.
xeolin Messages postés 336 Date d'inscription samedi 26 novembre 2005 Statut Membre Dernière intervention 8 novembre 2011 2
11 juil. 2009 à 19:44
Salut,

Tu devrais poster ta question sur le forum de http://www.javascriptfr.com/.

(Je vais essayer d'orrienter tes recherches)

Il existe en effet un commande en javascript qui permet de précharger les images avant de les afficher, il te suffira de les charger les unes apres les autres et tout ira bien.

Cependant tu ne devrais pas avoir a faire cela, car le serveur (mon serveur) à été fait de manière à n'avoir pas de limite de client, et donc si tu te vois limité dès 1 client, oublit la grande échelle. Tu as du faire une erreur...

Question toute bête, as-tu (j'essaye de diagnostiquer le problème), rendu la variable "fichier", ou tout autre dans ce genre comme "global" ??

Dans ce cas il faudra l'enlever et la mettre en local, puisque (si l'erreur vien de la) tu réécrit cette variable constament avant que le fichier soit correctement fermé : n'oublit pas que ce sont des threads, qui s'execute (théoriquement) en même temps.

Sinon, je serai heureux d'avoir ton code que je pourais par la suite injecter au mien. De plus si je le voyais cela me permetterais de te debuger ton programme.

N3Ar.
xxkirastarothxx Messages postés 378 Date d'inscription vendredi 19 octobre 2007 Statut Membre Dernière intervention 22 mars 2013
10 juil. 2009 à 11:36
J'ai un petit soucis avec les images, j'ai fais une page:

elif "img_" in page:
imgfile = ("./tmp/"+page[14:len(page)]+".tmp").replace("%20", " ")
fichier=open(imgfile, "rb")
[...]

Donc j'appelle l'image par ;

ca fonctionne bien pour une image, mais si je boucle ou que j'enchaine des images:
;
;
;
...

"nomimage1 et 2 ne s'affiche pas (sauf si je fais charger l'image manuellement via clic droit), et nomimage3 affichera l'image de nomimage1 et tout serra décaler + 1 images sur 2 vide (rapport au temps de chargement de l'image :S)
Quelqu'un à une solution pour chargée chaque image une par une avant de continuer le chargement d'une page?

Merci encore.
aera group Messages postés 382 Date d'inscription mercredi 23 août 2006 Statut Membre Dernière intervention 8 novembre 2010 18
7 févr. 2009 à 16:26
Ta méthode fonctionne, c'est ce que je souhaitais faire merci Xeolin, je te tiens au courant de l'avancer du projet ...
xeolin Messages postés 336 Date d'inscription samedi 26 novembre 2005 Statut Membre Dernière intervention 8 novembre 2011 2
2 févr. 2009 à 21:00
Oh, c'est simple...

Tu peux pas, il faut absolument que tu fasses passer les images a travers le serveur. Pour cela tu peux ouvrir le fichier en spécifiant qu'il est binaire. Je pense que c'est ca : (pas sur du tout) :

fichier=open("image.jpg","rb") (r pour read, b pour binary)

tu ouvres, tu fait un read et tu envoit directement sans entêtes.

EG :

# msgClient = self.connexion.recv(1024)
# MSGBLBAA
# fichier=open(msgClient+".jpg","rb")
# connexion.send(fichier.read())
# fichier.close()
# self.connexion.close()

bon voila l'idée, seul prob on pert l'aspect totalement portable car il faut amener les images sur la plateforme.

Sinon tu ne pouras pas inclure les images en a l'interieur du code...

En tout cas si tu fais une trouvaille post le et je le publirait.
aera group Messages postés 382 Date d'inscription mercredi 23 août 2006 Statut Membre Dernière intervention 8 novembre 2010 18
1 févr. 2009 à 11:22
softghost : Je ne comprend pas ta réponse (64 bits ??!!) ! Le problème n'est pas l'encodage de l'image (j'ai utiliser comme Xeolin imageshack pour résoude TEMPORAIREMENT le problème) mais bien l'instruction qui permer d'allez chercher l'image sur le disque dure !
En css, l'utilisation de l'instruction "url(adresse)" fonctionne bien : Si on créé sur le disque dure un fichier html et dans le même répertoire l'image, il suffit de taper "url(nom_de_l_image.gif)". Or ici on créé le code html sans passer par un fichier html, ce que jouhaite savoir c'est quel est l'adresse que je dois taper !
softghost Messages postés 61 Date d'inscription vendredi 11 mars 2005 Statut Membre Dernière intervention 13 avril 2010
30 janv. 2009 à 15:57
Bonjour tt le monde

AEAR GROUP ton problème et logique, essai d'insere des image encodé en 64.
Bonne chance
aera group Messages postés 382 Date d'inscription mercredi 23 août 2006 Statut Membre Dernière intervention 8 novembre 2010 18
30 janv. 2009 à 14:43
Bonjour Xeolin,

J'ai essayer de refaire un serveur sur mon pc afin de préparé un pseudo site (Et mal heureusement je n'ai pas trouvé d'éditeur web à mon gout, je dois donc apprendre le css le soir à 2h du math après les devoirs (vive la prépa) :( que merde) mais j'ai un pb avec mes images : n'ayant de connexion internet ni de serveur, c'est mon pc qui fait serveur et j'utilise "localhost" pour simuler le site !!!
Seulement voila, comment faire pour ajouter des image ? Tu utilises imageshack, mais si on les héberge sur le serveur (la machine pas le programme :p) comment faire (ici le pb c'est comment lui donner l'adresse du dossier sur le disque dure du pc) !!!

Je te remercies de ta réponse d'avance, bonne journée à toi (et autres aussi :p) et à la prochaine ciao

Aéra, What else ?
softghost Messages postés 61 Date d'inscription vendredi 11 mars 2005 Statut Membre Dernière intervention 13 avril 2010
4 oct. 2008 à 15:55
Bonjour,
Message bien reçu..
Bonne continuation
xeolin Messages postés 336 Date d'inscription samedi 26 novembre 2005 Statut Membre Dernière intervention 8 novembre 2011 2
2 oct. 2008 à 15:11
pour soft ghost :

Le but de mon programme c'est de tout compacter le serveur et les fichier en un seul fichier python ce quio permet une migration de plateforme la plus simple, Eg: mon serveur fonction sur mon itouch ma ds mon pc mon linux et ma xbox.
softghost Messages postés 61 Date d'inscription vendredi 11 mars 2005 Statut Membre Dernière intervention 13 avril 2010
10 juil. 2008 à 16:34
Retour,
je trouve que c très bien.
une petit idée c de mettre un dossier Répertoire de base : Chemin absolue ou relatif dans l'a quelle en mettre les javacript et les photo au lieux de le mettre sur un serveur.

bonne journée
softghost Messages postés 61 Date d'inscription vendredi 11 mars 2005 Statut Membre Dernière intervention 13 avril 2010
10 juil. 2008 à 15:46
Bonjour xeolin
j'ai bien traiter ta source c très bien codé.
je fait des test pour les faille mais j'usq'au la j'ai 0 au résultats
ce qui est très bien,
que pense tu d'intégrer mysql (phpmyadmin).

avec ma salutation
xeolin Messages postés 336 Date d'inscription samedi 26 novembre 2005 Statut Membre Dernière intervention 8 novembre 2011 2
9 févr. 2008 à 21:01
OUI

biensur, j'ai meme fait le test :)

le vieu xeolin.tk qui debouchit sur xeolin.no-ip.info qui debouchait sur mon ip.

Entre temps, pour alleger le code, toutes les immages sont heberger sur imageshack.

Et deplus, je l'ai essayer sur une ds et ca marche impecable (dspython)

et sur un ipod touch (python+l'environnement unix+un invite de commade+taper "python /votredossier/serveur.py")

et je l'ai essayer avec un linux et un unix (j'ai pas de mac & solaris encore).

Voila :)
aera group Messages postés 382 Date d'inscription mercredi 23 août 2006 Statut Membre Dernière intervention 8 novembre 2010 18
30 janv. 2008 à 19:57
Bravo Xeolin, ça fonctionne parfaitement bien, très interressant comme source !!!
J'ai une question à te posé : Es que si tu mets ta source en ligne sur un serveur (un serveur physique : la machine pas l'application binaire), que celui ci est référencé a une quelconque adresse (exemple : http://www.domaine.fr) et que chez moi dans mon navigateur Internet je tape cette adresse, ton programme 'serveur.py' sera interprété ?

En tout cas ça vaut bien un 10/10
xeolin Messages postés 336 Date d'inscription samedi 26 novembre 2005 Statut Membre Dernière intervention 8 novembre 2011 2
28 janv. 2008 à 19:34
ho...

client=webbroswer

et puis as tu bien changer l'ip et le port pour mettre les tiens ?

si oui, bas connecte toi a ton ip, ou essaye 127.0.0.1

Apres c'est possible que ca soit ton pare feu...

Et sinon mon appliquation, c'est un serveur web, comme apache, donc logiquement tu es sense pouvoir y acceder...

:( pourtant ca devrais marcher...

Xeolin
aera group Messages postés 382 Date d'inscription mercredi 23 août 2006 Statut Membre Dernière intervention 8 novembre 2010 18
28 janv. 2008 à 09:35
Bonjour Xeolin,

Je n'ai pas très bien compris a quoi sert ta source, j'ai lancer le serveur, mais il n'y a de programme client ; Es ce normal ? De plus je n'arrive pas a obtenir de page Web ! Peux tu éclérer ma lanterne ... :)
Rejoignez-nous