Bild wird nicht Geladen

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
Benutzeravatar
Bio Salami
User
Beiträge: 63
Registriert: Mittwoch 28. Juli 2021, 14:10

Hi,
ich habe ein Problem mit einer Website. Ich habe ein script geschrieben welches beim Login ein Foto macht dies dann Mit Datum und Uhrzeit speichert. Zusätzlich habe ich ein script welches ein html Dokument erstellt und alle Fotos dort einbindet. Leider kommt immer die Meldung dass die Bilder nicht gefunden wurden. Hier ist das Html Dokument:

Code: Alles auswählen

<meta charset="utf-8"/>
<img scr="photo/2021-09-23 17:18:08.png" alt="Bild kann nicht geladen werden.">
Von den Image Tags gibt es natürlich mehr. Jedenfalls habe ich schon alles mögliche versucht. An dem Namen liegt es nicht und auch sonst habe ich keinen Fehler gefunden.
Hier ist das script das das Html Dokument erstellt:

Code: Alles auswählen

import os, time

html = open('pictures/pictures.html','w')
index = os.listdir('pictures/photo')

photo_list = ""

for photo in index:
    photo_html = "<img scr=\"faceRecognition/pictures/photo" + photo + "\"alt=\"Bild kann nicht geladen werden.\">\n"
    photo_list = photo_list + photo_html
    print(photo)

html.write("<meta charset=\"utf-8\"/>\n")
html.write(photo_list)
html.close()
Ich wusste nicht ob das das richtige Forum für mein Anliegen ist. Bitte verschieben wenn ich mich vertan habe.
Sirius3
User
Beiträge: 17737
Registriert: Sonntag 21. Oktober 2012, 17:20

`time` wird importiert, aber gar nicht benutzt.
Dateien öffnet man immer innerhalb eines with-Statements. Außerdem muß man immer ein Encoding angeben. Für ein richtiges HTML-Document fehlen einige Tags.
Es gibt vier verschiedene Arten, literale Strings zu schreiben, da muß man nie Anführungszeichen mit \ escapen.
Strings stückelt man nicht mit + zusammen, sondern benutzt Stringformatierung. Der Code passt nicht zum Beispiel-HTML am Anfang.
Wenn Bilder relativ zum Ort von pictures.html gefunden werden sollen, passt nämlich das Beispiel.

Code: Alles auswählen

import os

photos = []
for photo in os.listdir('pictures/photo'):
    photos.append(f'<img src="photo/{photo}" />\n')

with open('pictures/pictures.html', 'w', encoding="utf8") as html:
    html.write('<html>\n<head>\n<meta charset="utf-8" />\n</head>\n')
    html.write(f'<body>\n{"".join(photos)}</body>\n</html>\n')
Die Frage ist also, wo liegen Deine Bilder und wie sieht die HTML-Datei wirklich aus.
Benutzeravatar
Bio Salami
User
Beiträge: 63
Registriert: Mittwoch 28. Juli 2021, 14:10

Ich habe time vergessen zu löschen. Das ist das HTML Dokument. Da fehlt zwar was aber es sollte doch funktionieren.
Hier sind die Datei Pfade:
Ordner/Main.py
Ordner/facerecognition/pictures/Dokument.html
Ordner/facerecognition/pictures/photo/Fotos.png

Sorry für groß und Kleinschreibung. Hab es mit dem Handy geschrieben
Benutzeravatar
Bio Salami
User
Beiträge: 63
Registriert: Mittwoch 28. Juli 2021, 14:10

Ich weiß das die Pfade verwirrend sind. Ich arbeite an meiner Benennung
Benutzeravatar
__blackjack__
User
Beiträge: 13069
Registriert: Samstag 2. Juni 2018, 10:21
Wohnort: 127.0.0.1
Kontaktdaten:

Kann es vielleicht ganz banal am Leerzeichen in der URL liegen? URLs dürfen keine Leerzeichen enthalten. Browser korrigieren so etwas wenn man das in die URL-Leiste tippt, aber machen sie das auch bei URLs im HTML-Quelltext? Ich denke eher nicht.
„All religions are the same: religion is basically guilt, with different holidays.” — Cathy Ladman
Benutzeravatar
Bio Salami
User
Beiträge: 63
Registriert: Mittwoch 28. Juli 2021, 14:10

Das wäre möglich. Ich habe es aber schon ausprobiert. Das Bild habe ich umbenannt in a.png hat aber trotzdem nicht funktioniert.
Antworten