Python Interface für Apache Solr
Wer's etwas komfortabler haben möchte, wenn er von Python aus Solr ansprechen will, der kann das über diese API tun. Macht die Sache viel einfacher und komfortabler und man kann weiterhin die gewohnte Python-Syntax verwenden.
Posted at 11:54nachm. Okt. 18, 2012 by cetixx in Links | Kommentare [0]
Apache Solr Reference Guide PDF
Fast 400 Seite stark ist dieses frei verfügbare PDF von LucidWorks zum Solr Suchserver. Da steht so ziemlich alles drin, was man über Solr wissen muß - vermutlich schon zuviel ;-) Alternativ hier das Ganze in HTML.
Weiter Informationen:
Von Formatübersetzern, Textverstehern und Textsuchern - Lucene, Solr, Tika oder UIMA
Die Neuerungen von Apache Solr 4.0
Posted at 11:51nachm. Okt. 18, 2012 by cetixx in Links | Kommentare [0]
MySQL Index Design und Tipps / MySQL Upgrading
Auf der Percona Seite gibt es zwei sehr interesseante Slides / Webinars zum Thema MySQL (englisch):
Index-Design: Tools und Techniken
MySQL Indexing: Best Practices
Sehr interessant und einfach erklärt, wie man mit Indizes vernünftig in MySQL umgeht und verwaltet. Es werden z.B. div. Tools vorgestellt, mit denen man relativ einfach prüfen kann, ob ein Index überhaupt notwendig ist oder wie man raus findet, auf welche Spalten ein Index sinnvoll ist. Zu viele Indizes sind ja bekanntlich auch nix... ;-)
Dann noch ein weiteres Webinar mit Slides zum Thema MySQL Updates und welche Möglichkeiten es gibt, eine MySQL möglichst schnell und problemlos auf eine neue Minor- oder Major-Release zu heben.
Posted at 12:48vorm. Okt. 18, 2012 by cetixx in Tipps | Kommentare [0]
Teil eines Videos verlustfrei kopieren bzw. herrausschneiden mit Linux und ffmpeg
ffmpeg -ss <start zeit in hh:mm:ss> -t <dauer in hh:mm:ss> -i originaldatei.mpeg -acodec copy -vcodec copy out.mpeg
Posted at 12:31vorm. Okt. 18, 2012 by cetixx in Tipps | Kommentare [0]
Apache Verzeichnis freigeben - außer einem...
Manche Dinge kosten einen wirklich die letzten Haare... ;-) Man hat ein DocRoot-Verzeichnis "/", welches man absperren will, aber einen Ordner "/public" will man für die ganze Welt erreichbar haben. Das kann man sehr schön wie folgt lösen:
AuthType Basic
AuthName "Restricted Area"
AuthUserFile /home/path/.htpasswd
AuthGroupFile /dev/null
Require valid-user
SetEnvIf Request_URI "(path/to/directory/)$" allow
SetEnvIf Request_URI "(path/to/file\.php)$" allow
Order allow,deny
Allow from env=allow
Satisfy any
Also ganz normal die üblichen Auth*-Direktiven rein und Require valid-user, dann setzt man mit SetEnvIf für jeden Pfad bzw. Datei eine allow-Variable und bei "Allow from env=allow" sagen wir dem Apache, das der Zugriff auf Resourcen gestattet ist, wenn sie mit der allow-Variable ausgestattet ist. Ansonsten kommt die Passwortabfrage. Praktische Sache :-)
Im Orginal kann man das hier nachlesen (mit noch etwas mehr Information): Stupid htaccess Trick: Enable File or Directory Access to Your Password-Protected Site
Posted at 10:45nachm. Okt. 17, 2012 by cetixx in Tipps | Kommentare [0]
python-twitter
Twitter API über Python ansprechen mit python-twitter - Alternativ: Python Twitter Tools (Gentoo Paket: dev-python/twitter).
Posted at 10:44nachm. Okt. 17, 2012 by cetixx in Links | Kommentare [0]
Twitter RSS Feed Getter
Wenn schon immer gestört hat, das man bei Twitter nicht so einfach an den RSS-Feed eines Users ran kommt, dem hilft diese Seite von Charlie Harvey: Twitter RSS Feed Getter. Twitter Username oben rein pasten, Fetch RSS klicken und dann kann man sich auf der nächsten Seite einfach die URL kopieren und in den bevorzugten RSS-Reader übernehmen, fertig :-)
Posted at 12:10vorm. Okt. 13, 2012 by cetixx in Links | Kommentare [0]
MongoKit - Dokumentenmapping mit Python und MongoDB
Will man Dokumente in MongoDB mit Python speichern, nimmt man PyMongo - oder MongoKit ;-) Letzterer setzt auf PyMongo auf und wenn man will, kann man auch direkt auf die PyMongo API durch greifen, wenn's pressiert... Aber mit MongoKit ist das Dokumentenhandling sehr schön gemacht. Man erzeugt eine Python-Klasse, die von Document vererbt und definiert dort seine Dokumentenstruktur. Zusätzlich kann man noch sog. Validators hinzufügen, die dafür sorgen, das Constraints eingehalten werden. Das sieht dann z.B. so aus:
def max_length(length):
def validate(value):
if len(value) <= length:
return True
raise Exception('%s must be at most %s characters long' % length)
return validate
class User(Document):
structure = {
'name': unicode,
'email': unicode,
}
validators = {
'name': max_length(50),
'email': max_length(120)
}
use_dot_notation = True
def __repr__(self):
return '<User %r>' % (self.name)
Posted at 11:12nachm. Okt. 12, 2012 by cetixx in Links | Kommentare [0]
Webseiten bauen mit Python und Flask
Maxime Bouroumeau-Fuseau hat eine sehr gute Einführung geschrieben, wie man Webseiten in Python und mit Hilfe des kleinen, aber feinen Frameworks Flask baut. Alle wichtigen Infos auf eine Seite mit weiterführenden Links rund um's Thema. Sehr gut gemacht!
Posted at 10:46nachm. Okt. 12, 2012 by cetixx in Links | Kommentare [0]
Bootstrap Theme anpassen
Um eine Webseite schnell raus zu pushen, verwenden viele inzwischen Twitters Bootstrap. Antonin Januska beschreibt in ihrem Artikel How To Build & Customize Your Own Bootstrap Theme sehr schön und ausführlich, wie man dieses Theme an eigene Bedürfnisse anpassen und erweitern kann und erwähnt viele Tools, die die Arbeit erleichtern.
Posted at 11:34nachm. Okt. 11, 2012 by cetixx in Links | Kommentare [0]
HTML zu PDF/Jpeg konvertieren mit Webkit und wkhtmltopdf
wkhtmltopdf bzw. wkhtmltoimage ist ein ganz nettes Kommandozeilentool, das Webseiten in PDF bzw. JPEG konvertiert. Dabei kommt die Webkit-Engine zum Einsatz. Die rendert Webseiten sauber raus. Andere Tools verwenden meistens Renderengines, die nur einen Bruchteil an Features unterstützen. Dabei ist der Aufruf ganz einfach z.B.:
wkhtmltoimage-amd64 --use-xserver http://www.tauceti.net bild.jpg
Wenn das Ganze auf einem Server läuft, braucht man noch Xvfb (eine Art virtuellen XServer) z.B.:
nohup Xvfb -ac :1 &
Einige Features brauchen einen XServer (den man auf einem Server meist ja nicht hat) und das können wir mit Xvfb sehr einfach realisieren.
In diesem Zusammenhang sei noch auf PhantomJS hingewiesen. Damit lassen sich z.B. automatisierte Tests von Webseiten relativ einfach realisieren. Setzt ebenfalls auf Webkit auf.
Posted at 11:51nachm. Okt. 10, 2012 by cetixx in General | Kommentare [0]
Autoguiding in KStars
KStars ist ein kleines, aber feines Planitarium Programm in KDE. KRNO arbeitet an Ekos, mit dessen Hilfe KStars jetzt auch Autoguiding Funktionen bekommt. Astronomiesoftware gibt es unter Linux inzwischen eine ganze Reihe, aber Autoguiding war noch ein etwas wunder Punkt. Damit sollten dann auch astronomische Langzeitaufnahmen möglich werden. Wenn alles gut läuft, sollte Ekos für KDE 4.10 soweit sein, das im Januar erscheinen wird.
Posted at 11:51nachm. Okt. 10, 2012 by cetixx in Links | Kommentare [0]
Unit-Tests mit JavaScript
Eine kleine Einführung in das Unit-Test JavaScript-Framework Jasmine auf heise open.
Posted at 12:18vorm. Okt. 05, 2012 by cetixx in Links | Kommentare [0]
Gentoo in der Cloud: Bootstrapping
Ein Skript mit dem man Gentoo in der Cloud bootstrappen kann. Hier noch ein Gentoo EC2 Tutorial dazu.
Posted at 12:13vorm. Okt. 05, 2012 by cetixx in General | Kommentare [0]
Failover Redis Setup mit Sentinel
Für die NoSQL Redis gibt es eine ganz interessante Entwicklung (aktuell noch Beta), um die DB ausfallsicherer zu machen. Das Ganze nennt sich Sentinel. Eine kleine Einführung findet sicher hier.
Posted at 11:35nachm. Okt. 04, 2012 by cetixx in Links | Kommentare [0]