list_directory vom http.server Modul

Sockets, TCP/IP, (XML-)RPC und ähnliche Themen gehören in dieses Forum
Antworten
Hannibal42
User
Beiträge: 5
Registriert: Sonntag 6. Februar 2011, 22:51

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
EyDu
User
Beiträge: 4881
Registriert: Donnerstag 20. Juli 2006, 23:06
Wohnort: Berlin

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
Das Leben ist wie ein Tennisball.
Hannibal42
User
Beiträge: 5
Registriert: Sonntag 6. Februar 2011, 22:51

Meine Idee den SimpleHTTPRequesthandler zu benutzen scheint nicht sonderlicht fruchtbar zu sein. Aber danke für die Antwort.
Antworten