Datei im selben Verzeichnis -> wird nicht gefunden!

Wenn du dir nicht sicher bist, in welchem der anderen Foren du die Frage stellen sollst, dann bist du hier im Forum für allgemeine Fragen sicher richtig.
Antworten
alexPython
User
Beiträge: 52
Registriert: Donnerstag 7. April 2011, 13:26

django 1.3, python 2.6

Hallo,

ich greife auf eine Datei zu, die im selben Verzeichnis wie mein
Programm liegt.
Error-Meldung >> [Errno 2] No such file or directory: 'test.xml'

Ich habe auch schon den ganzen Pfad angegeben, die Datei
wird aber nicht gefunden!

Gruß
Liffi
User
Beiträge: 153
Registriert: Montag 1. Januar 2007, 17:23

alexPython hat geschrieben: Ich habe auch schon den ganzen Pfad angegeben, die Datei
wird aber nicht gefunden!
Kannst du mal den entsprechenden Code dazu posten?
Ganzer Pfad == absoluter Pfad?
alexPython
User
Beiträge: 52
Registriert: Donnerstag 7. April 2011, 13:26

urls -> (r'^transform/$', 'bla.blubb.transform.transform')
die py-Datei heißt transform.py und ist in der gleichen Ebene
wie test.xml
ja ganzer Pfad = absoluter Pfad

Code: Alles auswählen

from django.http import HttpResponse
from xml.sax import make_parser
from xml.sax.handler import ContentHandler 
from os import getcwd

def transform(request):
    
    searchTerm = 'Mick Fowler'
    parser = make_parser()   
    curHandler = BasketBallHandler(searchTerm)
    parser.setContentHandler(curHandler)
    parser.parse(open('test.xml', 'r')) 
#    parser.parse(open('test.xml')) 
    
    
    return HttpResponse("babab", content_type="text/html")
#    return HttpResponse(getcwd(), content_type="text/html")



class BasketBallHandler(ContentHandler): 
    
    def __init__ (self, searchTerm):
        self.searchTerm= searchTerm;
        self.isPointsElement = 0
        self.isReboundsElement = 0
        self.htmlString = ""
         
         
    def startElement(self, name, attrs):
        if name == 'player':     
            self.playerName = attrs.get('name',"")
            self.playerAge = attrs.get('age',"")
            self.playerHeight = attrs.get('height',"")
        elif name == 'points':
            self.isPointsElement= 1;
            self.playerPoints = "";
        elif name == 'rebounds':
            self.isReboundsElement = 1;
            self.playerRebounds = "";
        return 
    
    
    def characters (self, ch):
        if self.isPointsElement== 1:
            self.playerPoints += ch
        if self.isReboundsElement == 1:
            self.playerRebounds += ch 
    
    def endElement(self, name):
        if name == 'points':
            self.isPointsElement= 0
        if name == 'rebounds':
            self.inPlayersContent = 0
        if name == 'player' and self.searchTerm== self.playerName :
            self.htmlString += '<h2>Statistics for player:' , self.playerName, '</h2><br>(age:', self.playerAge , 'height' , self.playerHeight , ")<br>"
            self.htmlString += 'Match average:', self.playerPoints , 'points,' , self.playerRebounds, 'rebounds'
            
#            print '<h2>Statistics for player:' , self.playerName, '</h2><br>(age:', self.playerAge , 'height' , self.playerHeight , ")<br>"
#            print 'Match average:', self.playerPoints , 'points,' , self.playerRebounds, 'rebounds' 
BlackJack

@alexPython: Und wo ist das Beispiel mit dem absoluten Pfad? Kann es sein, dass der Benutzer unter dem das läuft, nicht die nötigen Rechte hat?
Antworten