Seite 1 von 1

PythonDesktopSearch

Verfasst: Freitag 28. Juli 2006, 13:17
von SigMA
moien!

In diesem Thread möchte ich gerne euch mein Python Projekt vorstellen. Der Name ist angelehnt an die Google DesktopSearch. Es handelt sich hierbei um eine Suchmaschiene auf Index Basis. Es wird folglich erst ein Index angelegt indem gesucht wird.

Mitlerweile kann die Suche schon:
> Index anlegen
> Suchcache
> XML-Export
> Handler für verschiedene Datei Typen (zum generieren von Keywords)
> Echtzeitsuche (extrem langsam)
> whitelist / Blacklist (funktionieren mit REs)
> Psyco unterstützung

Benötigt werden:
20 MB Speicherplatz (reicht für ca 250.000 Dateien)
Python2.4
mit folgenden Modulen:
> Pickle
> os.path
> glob
> mimetypes
> xml.dom
optinonal:
> cPickle
> thread (alpha)
> psyco

Geplant ist:
Für weitere 0.2 Versionen:
> GAIM Log Archivierung
> Backend erweiterung
> Thunderbird Mail
> Verbessertes Threading

Version 0.3:
> Webinterface / GUI
> Daemon

Irgendwann geplant:
> Internetupdate


Die Homepage:
https://developer.berlios.de/projects/pds/

Feedback ist erwünscht :)
SigMA

Verfasst: Sonntag 30. Juli 2006, 11:39
von birkenfeld
Ich habe mir das Paket mal runtergeladen. Kleine Anmerkungen:
  • Erstes Ärgernis: Im Tar-File ist kein Verzeichnis mit gleichem Namen.
  • Die Angabe von Standardmodulen als Voraussetzung ist unnötig, da die in jedem Python enthalten sind, und schreckt evtl. User ab.
  • Auf Deutsch schließt ihr einen großen potenziellen Nutzerkreis aus.
  • Die Blacklist sollte evtl. von vornherein größer sein.
  • Application-Code im config-file ist schlecht.
  • Der Indexer sollte vielleicht optional Statusinfos ausgeben.
  • pyfind lässt sich nicht starten: "pds" gibt es nirgendwo.
  • Für Option-Handling gibt es bereits optparse und getopt.
  • del auf lokale Variablen ist meist sinnlos.
Ich möchte aber nicht nur meckern und hoffe deswegen, dass aus dem Projekt was wird.

Verfasst: Sonntag 30. Juli 2006, 18:17
von SigMA
birkenfeld hat geschrieben:Ich habe mir das Paket mal runtergeladen. Kleine Anmerkungen:
  • Erstes Ärgernis: Im Tar-File ist kein Verzeichnis mit gleichem Namen.
naja das kann man ja via Entpacker machen oder?! ;)
birkenfeld hat geschrieben: [*] Auf Deutsch schließt ihr einen großen potenziellen Nutzerkreis aus.
*hust* Wenn ich English spreche dann ist das ,,, naja :D
birkenfeld hat geschrieben: [*] Die Blacklist sollte evtl. von vornherein größer sein.
Gaaanz unten ist für Unix Betriebsysteme eine Blacklist. Allgemein bin ich jedoch dagegen, da jeder sich selbst seine persönliche Blacklist schustern soll.
birkenfeld hat geschrieben: [*] Application-Code im config-file ist schlecht.
Es ist aber auch schlecht wenn das immer wieder als Header an der Datei hängt.
birkenfeld hat geschrieben: [*] Der Indexer sollte vielleicht optional Statusinfos ausgeben.
Hab ich schon probiert ... wird dann aber erheblich langsamer! Letztendlich soll er eh im Hintergrund laufen.
birkenfeld hat geschrieben: [*] pyfind lässt sich nicht starten: "pds" gibt es nirgendwo.
:oops: gepatcht ... das neue Paket enthält die Datei
birkenfeld hat geschrieben: [*] del auf lokale Variablen ist meist sinnlos.
Jedoch speicher entlasstend[/list][/quote]

mfg
SigMA :)

Verfasst: Sonntag 30. Juli 2006, 18:44
von DatenMetzgerX
[quote="SigMA] naja das kann man ja via Entpacker machen oder?! ;)
[/quote]
Ich fände das auch praktischer, dann kann man das Archiv öffnen und per Drag & Drop das ganze Verzeichnis rauskopieren.


Nehme mal an das das DO dort nicht absichtlich ist ;)

Code: Alles auswählen

C:\Dokumente und Einstellungen\rem.KWSOFT1\Desktop\pds>C:\Python25\python "C:\Do
kumente und Einstellungen\rem.KWSOFT1\Desktop\pds\pyfind.py"
Traceback (most recent call last):
  File "C:\Dokumente und Einstellungen\rem.KWSOFT1\Desktop\pds\pyfind.py", line
22, in <module>
    from pds import *
  File "C:\Dokumente und Einstellungen\rem.KWSOFT1\Desktop\pds\pds.py", line 27,
 in <module>
    from pyindexer import IndexHeader
  File "C:\Dokumente und Einstellungen\rem.KWSOFT1\Desktop\pds\pyindexer.py", li
ne 39, in <module>
    do
NameError: name 'do' is not defined

Verfasst: Sonntag 30. Juli 2006, 18:52
von SigMA
{³¼²¬³¼}²¬¼{³²¬¼[²³}¬½²¼½²{³\½{²³½]{

ich dachte das hätte ich entfernt :/ Haste die neueste Version genommen?!

SigMA

Verfasst: Sonntag 30. Juli 2006, 19:26
von DatenMetzgerX
Ich kann nur die Version 2 herunterladen

Bei der V. 2.1 kommt immer File not found :roll:

Verfasst: Sonntag 30. Juli 2006, 20:50
von SigMA
http://prdownload.berlios.de/pds/python ... 2.1.tar.gz

ich hasse das BerliOS Interface :D

SigMA

Verfasst: Sonntag 30. Juli 2006, 20:52
von DatenMetzgerX
File doesn't exist

Verfasst: Sonntag 30. Juli 2006, 20:59
von SigMA
Jetzt aber .. ^^

Verfasst: Sonntag 30. Juli 2006, 21:06
von DatenMetzgerX
Benutze beim import von sqlite ein Try

Code: Alles auswählen

Try:
    import sqlite3 as sqlite
except:
    from pysqlite2 import dbapi2 as sqlite
Dann klapts auch mit python 2.5 ;) und bei allen andern

Verfasst: Sonntag 30. Juli 2006, 21:29
von BlackJack
SigMA hat geschrieben:
birkenfeld hat geschrieben:Ich habe mir das Paket mal runtergeladen. Kleine Anmerkungen:
  • Erstes Ärgernis: Im Tar-File ist kein Verzeichnis mit gleichem Namen.
naja das kann man ja via Entpacker machen oder?! ;)
Das "Ärgernis" ist ernst gemeint. Unter Linux ist es üblich auf der Kommandozeile auszupacken und da sieht man erst wenn's zu spät ist, dass man sich das aktuelle Verzeichnis "vollgemüllt" hat. Mich ärgert so etwas, es kommt aber auch so verdammt selten vor das ich nicht jedesmal in Archive hineinschaue bevor ich sie entpacke. Weil in 99,9% der Fälle ein Verzeichnis mit dem gleichen Namen, den das Archiv trägt, drin steckt.

Verfasst: Sonntag 30. Juli 2006, 21:33
von birkenfeld
SigMA hat geschrieben:
birkenfeld hat geschrieben:Ich habe mir das Paket mal runtergeladen. Kleine Anmerkungen:
  • Erstes Ärgernis: Im Tar-File ist kein Verzeichnis mit gleichem Namen.
naja das kann man ja via Entpacker machen oder?! ;)
Ich zumindest (und sicher viele andere auch) entpacke Tar-Files via "tar xf <datei>". Und da nervt es ungemein, wenn man 20 verschiedene files im aktuellen, nicht unbedingt leeren Verzeichnis hat. Es ist einfach eine Konvention, in ein Tar-File mit Sourcen ein solches Verzeichnis zu packen.
birkenfeld hat geschrieben: [*] Application-Code im config-file ist schlecht.
Es ist aber auch schlecht wenn das immer wieder als Header an der Datei hängt.
Als Header? Den Code, der in config.py steht, kann man doch gut in einer anderen Datei unterbringen.
birkenfeld hat geschrieben: [*] del auf lokale Variablen ist meist sinnlos.
Jedoch speicher entlasstend
Am Ende der Funktion? Wohl kaum. Und in Modulen, die eh nur einmal ausgeführt werden, sowieso nicht.

Verfasst: Montag 31. Juli 2006, 19:35
von SigMA
ai :)

Ab nächste Version wird es in einem Packer liegen ;) Danke schon mal für euer Feedback :)

Habt ihr noch Kritik / Lob über das laufende Programm?!

SigMA