Change README

master
Sebastian Serfling 2025-05-26 11:08:27 +02:00
parent eab1b5bf2a
commit 3a530a2a44
1 changed files with 32 additions and 11 deletions

View File

@ -8,6 +8,7 @@ Dieses Python-Skript lädt eine PDF-Datei von einer externen API herunter, verar
## Anforderungen ## Anforderungen
### 1. **Python und Bibliotheken** ### 1. **Python und Bibliotheken**
Das Skript verwendet mehrere Python-Bibliotheken, die du zuerst installieren musst: Das Skript verwendet mehrere Python-Bibliotheken, die du zuerst installieren musst:
- `requests`: Zum Herunterladen der PDF von der API - `requests`: Zum Herunterladen der PDF von der API
@ -25,11 +26,13 @@ pip install requests PyMuPDF pywin32 Pillow
--- ---
### 2. **Druckertreiber** ### 2. **Druckertreiber**
Die verwendeten Drucker müssen unter Windows installiert und korrekt benannt sein. Stelle sicher, dass die Namen exakt mit denen in der Windows-Gerätesteuerung übereinstimmen. Die verwendeten Drucker müssen unter Windows installiert und korrekt benannt sein. Stelle sicher, dass die Namen exakt mit denen in der Windows-Gerätesteuerung übereinstimmen.
--- ---
### 3. **Konfiguration über die Windows-Registry** ### 3. **Konfiguration über die Windows-Registry**
Die Konfiguration (API-URL, Druckernamen) erfolgt **nicht mehr über eine `.env`-Datei**, sondern über die Registry unter folgendem Pfad: Die Konfiguration (API-URL, Druckernamen) erfolgt **nicht mehr über eine `.env`-Datei**, sondern über die Registry unter folgendem Pfad:
``` ```
@ -37,16 +40,19 @@ HKEY_CURRENT_USER\Software\PDFExporter
``` ```
#### Benötigte Einträge: #### Benötigte Einträge:
| Schlüsselname | Bedeutung |
|--------------------|---------------------------------------| | Schlüsselname | Bedeutung |
| `APIKey` | Die URL der PDF-API | |-----------------|-------------------------------------|
| `LabelPrinter` | Name des Druckers für Versandlabels | | `APIKey` | Die URL der PDF-API |
| `OrderPrinter` | Name des Druckers für Bestellungen | | `LabelPrinter` | Name des Druckers für Versandlabels |
| `OrderPrinter` | Name des Druckers für Bestellungen |
#### Beispiel: #### Beispiel:
Du kannst die Konfiguration über ein begleitendes GUI-Tool setzen oder manuell über `regedit.exe`. Du kannst die Konfiguration über ein begleitendes GUI-Tool setzen oder manuell über `regedit.exe`.
#### Automatischer Registry-Check: #### Automatischer Registry-Check:
Das Skript prüft beim Start, ob alle drei Registry-Werte vorhanden sind. Falls nicht, wird ein Hinweis ausgegeben und das Skript beendet sich automatisch. Das Skript prüft beim Start, ob alle drei Registry-Werte vorhanden sind. Falls nicht, wird ein Hinweis ausgegeben und das Skript beendet sich automatisch.
--- ---
@ -57,11 +63,11 @@ Das Skript arbeitet in folgenden Schritten:
1. **PDF herunterladen**: Holt eine PDF-Datei von der API-URL aus der Registry. 1. **PDF herunterladen**: Holt eine PDF-Datei von der API-URL aus der Registry.
2. **PDF-Verarbeitung**: Trennt die PDF-Datei nach erkannten Label-Abschnitten (z.B. DHL, DPD, UPS). 2. **PDF-Verarbeitung**: Trennt die PDF-Datei nach erkannten Label-Abschnitten (z.B. DHL, DPD, UPS).
3. **Dateien speichern**: 3. **Dateien speichern**:
- Bestellungen im Verzeichnis `./orders` - Bestellungen im Verzeichnis `./orders`
- Versandlabels im Verzeichnis `./label` - Versandlabels im Verzeichnis `./label`
4. **PDFs drucken**: 4. **PDFs drucken**:
- Labels → `LabelPrinter` - Labels → `LabelPrinter`
- Bestellungen → `OrderPrinter` - Bestellungen → `OrderPrinter`
--- ---
@ -75,8 +81,6 @@ Das Skript arbeitet in folgenden Schritten:
python pdf_export.py python pdf_export.py
``` ```
aus.
Optional kannst du auch eine PDF-Datei direkt übergeben, um nur zu drucken: Optional kannst du auch eine PDF-Datei direkt übergeben, um nur zu drucken:
```bash ```bash
@ -98,6 +102,23 @@ Die `.exe` findest du anschließend im `dist`-Ordner. Sie kann auf jedem Windows
--- ---
## Erstellung eines Installers mit Inno Setup
Zur einfachen Verteilung kannst du mit [**Inno Setup**](https://jrsoftware.org/isinfo.php) einen Windows-Installer erstellen.
### Schritte:
1. Lade und installiere Inno Setup von:
[https://jrsoftware.org/isinfo.php](https://jrsoftware.org/isinfo.php)
2. Passe die mitgelieferte Datei `install_script.iss` an (Installationspfad, Namen, evtl. Registry-Werte).
3. Öffne `install_script.iss` in Inno Setup und klicke auf **"Compile"**, um den Installer zu erzeugen.
Der Installer kopiert die `.exe` in das Zielverzeichnis und kann bei Bedarf auch Registry-Werte direkt setzen.
---
## Fehlerbehebung ## Fehlerbehebung
- **Fehlende Registry-Einträge** - **Fehlende Registry-Einträge**