Python

wnfDesktpopkalender.py 0.17

Die Skripte zur Anzeige des Desktpopkalenders unter Kubuntu 11.04 haben nicht mehr richtig funktioniert. Das erzeugte Hintergrundbild konnte unter [Arbeitsflächen-Einstellungen" nicht mehr angezeigt werden, obwohl es von Gwenview ordentlich dargestellt wurde.

Im Skript hatte ich der PIL-Funktion Image.Save() nur den Dateinamen übergeben. Eigentlich soll PIL an Hand der Datei-Erweiterung erkennen, welches Format zu schreiben ist. Aber es wurden neuerdings Jpeg-Dateien geschrieben, obwohl ich einen PNG-Dateinamen angegeben hatte.

  • alt
        self.im.save(dn)  
  • neu
        self.im.save(dn,"PNG")  

XXX-|python-powered-w-100x40|"Download wnfDesktopkalender_Anzeigen](http://downloads.wlsoft.de/wnfdesktopkalender.zip)

VMWare über Konsole steuern

Zum Steuern der VMware Workstation benötigt man das Programm vmrun, welches zur VIX-API gehört.

$ sudo ./VMware-VIX-1.10.3-368992.x86_64.bundle  

Anzeige aller laufenden Maschinen

$ vmrun -T ws list  
Total running VMs: 1  
/media/sdc2/vmware/xp_buero/xp_buero.vmx  

Python-Script zum herunterfahren aller laufenden VMware-Maschinen

#!/usr/bin/env python  
# -*- coding: utf-8 -*-  
#   

import os.path  
import os  
import tempfile  

def vm_shutdown(aDateiname):  
    if (os.path.isfile(aDateiname)):  
        s = 'vmrun stop %s soft' % (aDateiname)  
        print s  
        os.system(s)  
    else:  
    print aDateiname  

def vm_shutdown_all():  
    # Alle laufenden Maschinen auflisten und in Temp-Datei speichern   
    t = tempfile.mktemp()  
    s = 'vmrun -T ws list > %s' % (t)  
    os.system(s)  
    for z in open(t, 'r').readlines():  
        z = z.rstrip('\n')  
    vm_shutdown(z)  
    os.remove(t)  

if __name__ == [__main__]()  
    print "Alle VMwaremaschinen herunterfahren"   
    print "Shutdown all runnung VMware-Machines"  
    vm_shutdown_all()  

KinterbaseDB verursacht Fehler -901

Was in Kubuntu 10.04 noch funktioniert hatte, ruft in Kubuntu 10.10 diesen Fehler hervor:

(Kubuntu 10.10 amd64 - python 2.6 - Firebird 2.5 Super - kinterbasdb 3.2)

kinterbasdb.OperationalError: (-901, 'begin transaction: \n invalid parameter in transaction parameter block\n Table reservation lock type isc_tpb_shared requires table name before in TPB')

Traceback (most recent call last):  
  File "wnf_fib.py", line 60, in <module>  
    db.list_Adr()  
  File "wnf_fib.py", line 47, in list_Adr  
    dt_Adr.execute("SELECT ID,KURZ,STR,TEL1 FROM KO_ADR ORDER BY STR")  
kinterbasdb.OperationalError: (-901, 'begin transaction: \n  invalid parameter in transaction parameter block\n  Table reservation lock type isc_tpb_shared requires table name before in TPB')  

Hier fand ich einige Ausführungen dazu:

Also habe ich zusätzlich einen CustomTPB (transaction parameter buffers) eingeführt.

    def connect(self):  
        self.svc = kinterbasdb.services.connect(host=self.Server, user=self.User, password=self.Passwort)  
        dsn="%s:/%s" % (self.Server,self.Datenbank)  
        self.con = kinterbasdb.connect(dsn=dsn, user=self.User, password=self.Passwort)  
        self.customTPB = ( kinterbasdb.isc_tpb_write + kinterbasdb.isc_tpb_read_committed + kinterbasdb.isc_tpb_rec_version)  
        self.con.begin(tpb=self.customTPB)  
        return True  

Und jetzt funktioniert es wieder.

Entwicklungsumgebung für Python und ZODB einrichten

Aus dem Workshop auf dem Chemnitzer Linuxtag 2010

#für virtuelle Umgebung installieren  
sudo apt-get install python-virtualenv  
#Vorbereitung für ZODB3 installieren  
sudo apt-get install build-essential  
sudo apt-get install python-dev  

#eine virtuelle Umgebung anlegen  
~$ virtualenv test --no-site-packages  

#in den Projektpfad wechseln  
cd test/  

#ZODB3 installieren  
./bin/easy_install ZODB3  

Tags: 

Python-Links

Python, Programmieren macht Spaß

Python in 5 Minuten (für bereits-Programmierer...)

wiki.python.org/moin/GermanLanguage

Etwas Grundwissen aus dem python-forum.de

Programmieren mit Python und Glade

http://docs.python.org/library/json.html

http://docs.python.org/library/subprocess.html

http://pypi.python.org/pypi/simplejson/

Python und Qt

Python und Datenbanken

$ sudo easy_install firebirdsql  

Webprogrammierung mit Python

www.mediasonics.ch

selbst erlitten

Programmbeispiele (nicht von mir)

Seiten