J'ai un tas d'images que j'ai besoin d'autres personnes à parcourir via un navigateur Web de la même manière que Apache-Gallery .
Je serais capable de jeter toutes mes images dans un répertoire afin que les utilisateurs frappent: p>
http: // serveur: port / répertoire p>
verrait de petites vignettes et sélectionner une image chargerait la taille complète sur une page avec des options pour parcourir l'image précédente ou suivante. p>
Je recherche une solution non apache, un peu comme le serveur HTTP simple Python, qui peut être lancé n'importe où avec Minimal Configuration & Fuss EG P>
python -m SimpleHTTPServer 8000
3 Réponses :
Bien que cela n'utilise pas la classe SimpleHttpServer, ce script CGI-Bin montre comment afficher des images très simplement. Étendez-le pour répondre à vos besoins. Source est ici.
from os import listdir
from random import choice
ext2conttype = {"jpg": "image/jpeg",
"jpeg": "image/jpeg",
"png": "image/png",
"gif": "image/gif"}
def content_type(filename):
return ext2conttype[filename[filename.rfind(".")+1:].lower()]
def isimage(filename):
"""true if the filename's extension is in the content-type lookup"""
filename = filename.lower()
return filename[filename.rfind(".")+1:] in ext2conttype
def random_file(dir):
"""returns the filename of a randomly chosen image in dir"""
images = [f for f in listdir(dir) if isimage(f)]
return choice(images)
if __name__ == "__main__":
dir = "c:\\python\\random_img\\"
r = random_file(dir)
print "Content-type: %s\n" % (content_type(r))
print file(dir+r, "rb").read()
Merci pour les réponses et les commentaires. La solution que j'ai fini par utiliser était selon ma mise à jour: p>
Curateur code> dans le répertoire contenant toutes mes images. Cela génère des pouces et une page d'index, ainsi que de la pagination à toutes les images de la taille complète. LI>
* Python -M SimplehttPerserver 8000 * Code> EM>" Dans ce répertoire Pour parcourir le HTML résultant généré par Curateur Li>
ol>
Il s'agit donc d'un simple processus de deux étapes qui satisfera à peu près mes exigences initiales. P>
Cela a bien fonctionné jusqu'à ce qu'il essayait d'interpréter des gifs en tant que JPEG dans le processus de génération de vignettes. Lorsque je reçois le temps libre à un moment donné, je verrai si je peux corriger ce forfait.
C'était tout cela depuis longtemps, mais je viens de commencer imageme , qui vise à remplir exactement ce besoin. Vous pouvez le configurer avec les instructions sur le site, mais si vous souhaitez simplement servir une galerie de base des images dans et sous votre position actuelle, cette commande l'exécutera sur le port 8000:
curl https://raw.githubusercontent.com/unwitting/imageme/master/imageme.py | python
Le lien est malheureusement brisé.
SIMPORTHTTPEQUESTHANDLER est une classe très simple, vous pouvez simplement le modifier pour ajouter des vignettes et vous pouvez également générer des vignettes à la volée à l'aide de PIL
Merci pour le conseil. Le conservateur semble faire tout ce dont j'ai besoin pour le moment si ...
@Anuraguniyal Comment voudriez-vous le modifier? Je voudrais essayer.