• Programmierung

    HTML-like PDF-Erzeugung

    Mit dem Python Modul PDFDocument im Zusammenhang mit Reportlab lassen sich spielend leicht PDF-Dokumente mit Python generieren. Es werden dabei zwei verschiedene Templates (für Reports oder im Letter-Style) verwendet, mit denen sich anhand einer HTML-ähnlichen Syntax PDF-Dateien erzeugen lassen. Hier die unterstützten Typen: pdf.style.normal pdf.style.heading1 pdf.style.heading2 pdf.style.heading3 pdf.style.small pdf.style.bold pdf.style.right pdf.style.indented pdf.style.paragraph pdf.style.table

  • CAD

    CATIA V6 automatisieren mit Python unter Windows

    Das neue CAD- und PLM-System CATIA V6 von Dassault Systemes kann mit Python unter Windows genauso einfach automatisiert werden, wie das gerade in Ablösung befindliche CATIA V5. Da das neue System aber nicht mehr auf das Dateisystem des Benutzers zurückgreift, sondern mit einer Datenbank gegen einen PLM-Server arbeitet, muss man hierbei den Zugriff auf die CAD-Daten natürlich komplett anders gestalten. Dieser Artikel zeigt, wie man automatisiert CAD-Daten identifiziert und diese für einen Vergleich in die Turntable View des Silver Layer lädt. COM-Anwendungen lassen sich mit Python z.B. mit comtypes oder mit dem Pywin32 Modul, welches in der ActivePython Distribution enthalten ist automatisieren. Meine Beispiele hier verwenden Pywin32. Wenn Sie die…

  • Programmierung

    Einfacher SMTP-Server in einer Zeile Python

    Es gibt unzählige Beispiele, wozu ein SMTP-Server bei der Webentwicklung nützlich ist. Sei es, dass man den Versand von Formulardaten testen will, oder Registrierungsinformationen aus dem Content Management System versand werden sollen. In solchen und ähnlichen Fällen benötigt die Applikation für den Versand der E-Mails einen SMTP-Server. Da der im Serverbetriebssystem vorinstallierte SMTP-Server und Fremdprodukte oftmals nicht auf die Schnelle konfiguriert werden können, kann man sich sehr einfach mit einer Zeile Python helfen: python -m smtpd -n -c DebuggingServer localhost:25 Dies bewirkt, dass die versendete Mail bei Ankunft einfachin der Konsole ausgegeben wird. Nicht wundern vorher wird gar nichts angezeigt.

  • CMS ohne Datenbank

    Django – skaliert von der Microsite bis zum Enterprise CMS

    Django ist eigentlich kein Content Management System, sondern ein extrem skalierbares Web Framework mit Unterstützung für viele Datenbank-Systeme und Webserver. Mit Django werden ganze Content Management Systeme entwickelt. Django ist ein äußerst flexibles und vielseitiges auf Python basierendes Framework, mit dessen Hilfe in sehr kurzer Zeit Blogs, Content Management Systeme und sehr große Websites entwickelt werden können. Django bringt von sich aus einen auf Python basierenden Webserver für Entwicklungszwecke mit und benötigt zunächst auch keinen Datenbankserver. Es lassen sich entweder ganz ohne Datenbank dynamische Webseiten entwickeln, oder man verwendet die Datei-basierte Datenbank SQLite (welches in Python 2.5 schon integriert ist). Ansonsten verwendet man einfach MySQL, PostgreSQL, Oracle oder SQLite –…

  • Python Scripte

    PDF zu Text mit PyPDF

    Ein PyPDF-Python-Script zum Export des Inhalts einer PDF-Datei im Textformat. import pyPdf def getPDFContent(path): content = "" pdf = pyPdf.PdfFileReader(file(path, "rb")) for i in range(0, pdf.getNumPages()): content += pdf.getPage(i).extractText() + "\n" # Loesche Leerzeichen content = " ".join(content.replace("\xa0", " ").strip().split()) return content print getPDFContent("test.pdf")