diff --git a/Multi-Musikanteil.py b/Multi-Musikanteil.py index dd00030..38d6a06 100644 --- a/Multi-Musikanteil.py +++ b/Multi-Musikanteil.py @@ -2,10 +2,10 @@ # -*- coding: utf-8 -*- """ -Mehrmonats‑Auswertung ACRCloud → PDF‑Report + Druck +Mehrmonats Auswertung ACRCloud PDF Report und Druck ——————————————————————————————————————————————— -• Timestamp‑Spalte : "Timestamp(UTC+02:00)" -• Dauer‑Spalte : "Played Duration" (Sekunden) +• Timestamp Spalten : "Timestamp(UTC+0x:00)" +• Dauer Spalte : "Played Duration" (Sekunden) """ import calendar @@ -51,12 +51,12 @@ def musikanteil(path: Path) -> Tuple[int, int, float]: def erstelle_pdf(daten: List[Tuple[int, int, float]], ausgabe: Path) -> None: - """Erzeugt einen Querformat‑PDF‑Report mit Tabelle.""" + """Erzeugt einen Querformat PDF Report mit Tabelle.""" c = canvas.Canvas(str(ausgabe), pagesize=landscape(A4)) w, h = landscape(A4) # Überschrift - title = "Musikanteil pro Monat (ACRCloud‑Auswertung)" + title = "Musikanteil pro Monat (ACRCloud Auswertung)" c.setFont("Helvetica-Bold", 16) c.drawCentredString(w / 2, h - 25 * mm, title) @@ -67,7 +67,7 @@ def erstelle_pdf(daten: List[Tuple[int, int, float]], ausgabe: Path) -> None: # Tabellenkopf ypos = h - 50 * mm col_widths = [50 * mm, 50 * mm, 50 * mm] - headers = ["Monat/Jahr", "Musikanteil [%]", "Datei"] + headers = ["Monat/Jahr", "Musikanteil [%]", "Datei"] c.setFont("Helvetica-Bold", 11) for i, head in enumerate(headers): @@ -88,9 +88,8 @@ def erstelle_pdf(daten: List[Tuple[int, int, float]], ausgabe: Path) -> None: c.save() - def drucke_pdf(pfad: Path) -> None: - """Sendet das PDF an den Windows‑Standarddrucker (Acrobat bzw. Edge).""" + """Sendet das PDF an den Windows Standarddrucker (Acrobat bzw. Edge).""" try: # os.startfile mit "print" funktioniert auf Windows os.startfile(pfad, "print") @@ -103,8 +102,8 @@ def main() -> None: root.withdraw() dateien = filedialog.askopenfilenames( - title="Mehrere ACRCloud‑Excel‑Dateien wählen", - filetypes=[("Excel‑Dateien", "*.xlsx;*.xls")], + title="Mehrere ACRCloud Excel Dateien wählen", + filetypes=[("Excel Dateien", "*.xlsx;*.xls")], ) if not dateien: return @@ -126,11 +125,11 @@ def main() -> None: # chronologisch sortieren ergebnisse.sort(key=lambda x: (x[0], x[1])) - # PDF‑Datei speichern + # PDF Datei speichern save_path = filedialog.asksaveasfilename( - title="PDF‑Report speichern unter …", + title="PDF Report speichern unter …", defaultextension=".pdf", - filetypes=[("PDF‑Datei", "*.pdf")], + filetypes=[("PDF Datei", "*.pdf")], initialfile="Musikanteil_Report.pdf", ) if not save_path: @@ -138,8 +137,8 @@ def main() -> None: erstelle_pdf(ergebnisse, Path(save_path)) - # Zusammenfassung anzeigen + Druckoption - text_lines = [f"{m:02d}/{j}: {p:.2f} %" for j, m, p, _ in ergebnisse] + # Zusammenfassung anzeigen Druckoption + text_lines = [f"{m:02d}/{j}: {p:.2f} %" for j, m, p, _ in ergebnisse] summary = "Erfolgreich erstellt:\n" + "\n".join(text_lines) def dialog(): diff --git a/README.md b/README.md index 2cbdd88..a68b1d6 100644 --- a/README.md +++ b/README.md @@ -1,3 +1,6 @@ # Suisa-Listen -Tools zur Auswertung und Formatierung von ACR Cloud Song Listen \ No newline at end of file +Tools zur Auswertung und Formatierung von ACR Cloud Song Listen +Anwendbar auf ACR Cloud xlsx Downloads in CET oder CEST +- Header wie von Suisa verlangt mit relevanten Spalten +- Auswertung Musikanteil anhand der erkannten Musik diff --git a/sampleACRCloudDataCEST.xlsx b/sampleACRCloudDataCEST.xlsx deleted file mode 100644 index 40cc71e..0000000 Binary files a/sampleACRCloudDataCEST.xlsx and /dev/null differ diff --git a/sampleACRCloudDataCET.xlsx b/sampleACRCloudDataCET.xlsx deleted file mode 100644 index 5d73df2..0000000 Binary files a/sampleACRCloudDataCET.xlsx and /dev/null differ diff --git a/sampleACRCloudDataCET_formatiert.xlsx b/sampleACRCloudDataCET_formatiert.xlsx deleted file mode 100644 index d149c8e..0000000 Binary files a/sampleACRCloudDataCET_formatiert.xlsx and /dev/null differ