Framework or no framework 
yannis: I would stick with a framework especially during the initial phases of the Project, especially if you are new to Python. I am also fairly new and I found that I learned more by peeking my head in Django's codebase than any other book! Agreed it has a rather steep learning curve but is worth the effort.You can incorporate double metaphone or soundex for partial search based on phonetic similarities. (See http://en.wikipedia.org/wiki/Double_Metaphone) there are links listed in the entry including python routines.You can also try http://www.alchemyapi.com/ for named entity recognition (free for up to 70000) requests and peanuts for more.