Seite 1 von 1

list_directory vom http.server Modul

Verfasst: Dienstag 29. März 2011, 14:39
von Hannibal42
Wenn man dem HTTP-Server von dem http.server Modul keine index.html in den Ordner legt, dann gibt dieser eine Ordnerübersicht des Webservers aus. Dies möchte ich ganz gezielt durch ein CGI-Skript erzeugen. Ich habe dafür mit der Methode list_directory vom SimpelHTTPRequestHandler herum probiert leider bekomme ich aber immer nur Fehlermeldungen, wenn ich list_directory aufrufe.

Mein CGI-Skript das ich bis jetzt benutze sieht so aus :

#! /python30/python.exe
import cgi
import http.server


Handler = http.server.SimpleHTTPRequestHandler
Handler.list_directory("H:\Daten")


Ich bekomme dabei immer diese Fehlermeldung:

Handler.list_directory("H:\Daten")
TypeError: list_directory() takes exactly 2 arguments (1 given)

Das Skript läuft auf einem einfachen CGIHTTP-Server. Ich weis leider nicht wie ich auf den laufenden Server zugreifen kann oder was ich bei list_diretory noch angeben muss damit es ausgeführt wird.

Schon mal danke für die Antworten

Grüße Hannibal

Re: list_directory vom http.server Modul

Verfasst: Dienstag 29. März 2011, 14:44
von EyDu
Hallo.

Da fehlen einfach die Klammern in der Zeile darüber um den Handler zu erzeugen. Du solltest statt "Handler" übrigens besser "handler" verweden. Wirf mal einen Blick in PEP8. Außerdem hat das Forum Python-Codetags, dann kann man deinen Code auch lesen.

Sebastian

Re: list_directory vom http.server Modul

Verfasst: Mittwoch 30. März 2011, 14:39
von Hannibal42
Meine Idee den SimpleHTTPRequesthandler zu benutzen scheint nicht sonderlicht fruchtbar zu sein. Aber danke für die Antwort.