operations_research/OR_HTML_04/programme/index.html

4 lines
192 B
HTML
Raw Permalink Normal View History

Notebook-Uebersichtsseite - das fehlende Gegenstueck zu programme.html Der 403 auf /OR/Notebooks_04/ hatte eine andere Ursache als vermutet: Beim Eintragen der Website-Adresse ins README hatte ich in der Lesen-Tabelle das VERZEICHNIS verlinkt. Keine Seite der Website tut das - die Kapitelseiten zeigen direkt auf Notebooks_04/<name>.ipynb, und das funktioniert. Der Webserver verweigert Directory-Listing, zu Recht. Die Frage "gibt es so etwas nicht schon?" war aber berechtigt und hat die eigentliche Luecke sichtbar gemacht: baue_programme_seite() erzeugt seit jeher programme.html, eine gestaltete Uebersicht der 76 Programme. Fuer die 25 Notebooks gab es kein Gegenstueck - sie wurden ausgeliefert, aber keine Seite listete sie. Neu ist baue_notebooks_seite(), nach demselben Muster und mit denselben Bausteinen: die Zuordnung Seite -> Notebook kommt fertig aus baue_notebooks(), Rahmen und Navigation aus baue_seiten_schablone() und baue_sidebar_html(). Gruppiert nach Vorspann, Kapiteln und Anhaengen; der einleitende Absatz nennt die drei Wege, ein Notebook auszufuehren. Dazu ein ZIP mit allen 25 Notebooks (208 KB), byteidentisch ueber zwei Laeufe. Ein ZIP speichert je Eintrag die Aenderungszeit; ohne festen Wert entstuende bei jedem Bau eine andere Datei, und da OR_HTML_04/ versioniert ist, wuechse das Repository bei jedem Lauf. Die Eintraege werden deshalb sortiert und mit ZipInfo(date_time=(1980,1,1,0,0,0)) geschrieben - dieselbe Sorgfalt wie svg.hashsalt bei den Diagrammen. Gegen kuenftige 403 schreiben spiegle_notebooks() und baue_programme_seite() je eine dreizeilige index.html mit meta refresh in ihr Downloadverzeichnis. Das behebt zugleich denselben latenten Fall bei programme/. Ein eigener Fehler, zum zweiten Mal derselbe: Das .replace(",", ".") fuer deutsche Tausenderpunkte hing am Ende eines mehrzeiligen f-Strings - und in Python bindet die Methode an die GESAMTE zusammengesetzte Zeichenkette. Aus "Drei Wege, sie auszufuehren" wurde "Drei Wege. sie auszufuehren". Exakt der Fehler, vor dem ich in erzeuge_wirkung.py selbst einen Kommentar hinterlassen hatte. Die Zahl wird jetzt getrennt formatiert. Geprueft: 25 gelistete Notebooks, 0 tote Links auf der Seite, ZIP mit 25 Eintraegen und identischen Zeitstempeln, Seitenleisteneintrag auf allen 40 Seiten mit Seitenleiste, --check fehlerfrei, PDF unveraendert 759 Seiten. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
2026-09-08 15:20:06 +02:00
<!doctype html><meta charset="utf-8">
<meta http-equiv="refresh" content="0; url=../programme.html">
<title>Weiterleitung</title>
<p>Weiter zur <a href="../programme.html">Übersicht</a>.</p>